李夏云 肖 喜 羅 園 黃 晞
(湖南城市學院 理學院,湖南 益陽 413000)
由于新的先進技術的發(fā)展,許多研究人員對為新的應用尋找非線性問題的多解很感興趣,并致力于開發(fā)新數值方法[1-8]來尋找其多解。本文考慮尋找下面半線性橢圓方程的多個解
Ω 是RN上的有界區(qū)域,假設非線性項f(x,u)在Ω×R 上滿足局部Lipschitz 連續(xù),其相應的能量泛函為
目標方程組(3)是非線性方程組,對于其解法文[7-8]從牛頓場的觀點出發(fā)提出了沿場線的追蹤算法——牛頓場線法。
定理3[7]:設F(x)在閉子域G∈Ω 中是V- 正則的,若在邊界上每一點x0的牛頓方向V(x0)指向Ω 的內部,則在Ω 中必存在根x*。
從上面分析來看:牛頓流線法允許從任何不在根附近的初值開始計算,在有根的區(qū)域中,總流量||F(x(t))||是沿著流線方向向根匯聚的,形成一個中心場,則以其中任意一點為起點,追蹤中心場,可以求得此根;若在無根的區(qū)域,總流量||F(x(t))||是減小的,從一端通向另一端,且大范圍按指數收斂。
其中B0=(A)-1,A0=DF(x0),sj=xj+1-xj。Broyden 方法與牛頓方法是一致的,在奇點附近,我們采用牛頓流算法,在根的附近,就采用Broyden 方法,其可以避免誤差的積累傳播,有較快的收斂速度,計算工作量從O(n3)降到O(n2)。
圖1
有3 個三重特征值,取λ17=λ71=λ55=50,用主部u=aφ17+bφ71+cφ55,通過分析可以得到26 個非零根;
有 18 個 四 重 特 征 值 取 λ47=λ74=λ18=λ81=65,u=aφ47+bφ74+cφ18+dφ81,通過計算可以得到80 個非零根;
有1 個6 重特征值,5 重特征值(很少,在10000 內只搜素到兩個),相應的多解計算很困難。若簡單地增加許多基作延拓計算,而初值取的不好,則迭代將發(fā)散。按特征值的大小?。害?1=2,λ22=8,λ13=λ31=10,λ33=18,λ24=λ42=20,這7 個值中,有2 個二重值,3 個單值,按前面的搜索延拓法:應該可以得到22 個非零解。其近似解u7(x,y)的系數滿足非線性方程組:
下面用改進的牛頓流線法來對其進行計算:在區(qū)域[-3,3]上隨機取點,取n=35000,調用Matlab 中的rand 函數,得到一個8×35000 的隨機矩陣,共35000 個初值,通過計算,得到84 個非零解,與前面的28 個解比較,多了56 個不同的新解,不同的特征值直接可以產生新的多解,例如新解為u1,u2,u3它們對應的初值分別為:
圖2~圖7 分別列出了初值與對應真解u1,u2,u3的圖形,注意解和初值的圖非常相似。
圖2 初值u1 圖像
圖3 真解u1 圖像
圖4 初值u2 圖像
圖5 真解u2 圖像
圖6 初值u3 圖像
圖7 真值u3 圖像
以上計算和分析表明,求解非線性方程的多解問題,經過牛頓流處理以后,在奇點附近,我們采用牛頓流算法,在根的附近,就采用Broyden 方法,效果與牛頓流線法差不多,迭代次數沒有改變,但計算量可以明顯減少,其可以避免誤差的積累傳播,有較快的收斂速度,計算工作量從O(n3)降到了O(n2)。從解的圖形可以看到,和初值比,解的峰更高,腰更細。
上面方程組取8 個基,隨機投入35000 個初始點,每個點迭代20 次,要計算4.48×107個積分,計算量比較大。此種算法可以采用并行計算,來提高解題的效率。