用fortran編寫的人工波
標(biāo)簽: 人工波
上傳時間: 2017-06-29
上傳用戶:jiuyu
function [alpha,N,U]=youxianchafen2(r1,r2,up,under,num,deta) %[alpha,N,U]=youxianchafen2(a,r1,r2,up,under,num,deta) %該函數(shù)用有限差分法求解有兩種介質(zhì)的正方形區(qū)域的二維拉普拉斯方程的數(shù)值解 %函數(shù)返回迭代因子、迭代次數(shù)以及迭代完成后所求區(qū)域內(nèi)網(wǎng)格節(jié)點處的值 %a為正方形求解區(qū)域的邊長 %r1,r2分別表示兩種介質(zhì)的電導(dǎo)率 %up,under分別為上下邊界值 %num表示將區(qū)域每邊的網(wǎng)格剖分個數(shù) %deta為迭代過程中所允許的相對誤差限 n=num+1; %每邊節(jié)點數(shù) U(n,n)=0; %節(jié)點處數(shù)值矩陣 N=0; %迭代次數(shù)初值 alpha=2/(1+sin(pi/num));%超松弛迭代因子 k=r1/r2; %兩介質(zhì)電導(dǎo)率之比 U(1,1:n)=up; %求解區(qū)域上邊界第一類邊界條件 U(n,1:n)=under; %求解區(qū)域下邊界第一類邊界條件 U(2:num,1)=0;U(2:num,n)=0; for i=2:num U(i,2:num)=up-(up-under)/num*(i-1);%采用線性賦值對上下邊界之間的節(jié)點賦迭代初值 end G=1; while G>0 %迭代條件:不滿足相對誤差限要求的節(jié)點數(shù)目G不為零 Un=U; %完成第n次迭代后所有節(jié)點處的值 G=0; %每完成一次迭代將不滿足相對誤差限要求的節(jié)點數(shù)目歸零 for j=1:n for i=2:num U1=U(i,j); %第n次迭代時網(wǎng)格節(jié)點處的值 if j==1 %第n+1次迭代左邊界第二類邊界條件 U(i,j)=1/4*(2*U(i,j+1)+U(i-1,j)+U(i+1,j)); end if (j>1)&&(j U2=1/4*(U(i,j+1)+ U(i-1,j)+ U(i,j-1)+ U(i+1,j)); U(i,j)=U1+alpha*(U2-U1); %引入超松弛迭代因子后的網(wǎng)格節(jié)點處的值 end if i==n+1-j %第n+1次迭代兩介質(zhì)分界面(與網(wǎng)格對角線重合)第二類邊界條件 U(i,j)=1/4*(2/(1+k)*(U(i,j+1)+U(i+1,j))+2*k/(1+k)*(U(i-1,j)+U(i,j-1))); end if j==n %第n+1次迭代右邊界第二類邊界條件 U(i,n)=1/4*(2*U(i,j-1)+U(i-1,j)+U(i+1,j)); end end end N=N+1 %顯示迭代次數(shù) Un1=U; %完成第n+1次迭代后所有節(jié)點處的值 err=abs((Un1-Un)./Un1);%第n+1次迭代與第n次迭代所有節(jié)點值的相對誤差 err(1,1:n)=0; %上邊界節(jié)點相對誤差置零 err(n,1:n)=0; %下邊界節(jié)點相對誤差置零 G=sum(sum(err>deta))%顯示每次迭代后不滿足相對誤差限要求的節(jié)點數(shù)目G end
標(biāo)簽: 有限差分
上傳時間: 2018-07-13
上傳用戶:Kemin
function y=lagr(x0,y0,x) %x0,y0為節(jié)點 %x是插值點 n=length(x0); m=length(x); for i=1:m z=x(i); s=0.0; for k=1:n p=1.0; for j=1:n if j~=k p=p*(z-x0(j))/(x0(k)-x0(j)); end end s=p*y0(k)+s; end y(i)=s; end
標(biāo)簽: lagr
上傳時間: 2020-06-09
上傳用戶:shiyc2020
asp.net數(shù)據(jù)庫程序范例
上傳時間: 2013-12-23
上傳用戶:wqxstar
動態(tài)聚類k-means演算 將輸入在程式中的數(shù)據(jù)資料 給予適當(dāng)?shù)姆秩?/p>
上傳時間: 2015-03-16
上傳用戶:離殤
VC odbc 連接Access 數(shù)據(jù)庫 的例子,比較簡單
上傳時間: 2014-01-27
上傳用戶:1051290259
這個程序列使用一些小技巧來讀取一個手寫板的數(shù)據(jù)。這個手寫板是從市面上買回來的﹐沒有修改任何硬體﹐只須接上主機﹐啟動程式﹐用手寫板書寫﹐這個程序就會顯示從手寫板上輸出的數(shù)據(jù)
上傳時間: 2015-04-26
上傳用戶:cjf0304
大型電子製造業(yè)后臺數(shù)據(jù)庫的詳細(xì)設(shè)計!絕對好東西!(部分刪減)
上傳時間: 2015-05-17
上傳用戶:aa54
數(shù)據(jù)庫轉(zhuǎn)資料程式用SQL SERVER DTS 轉(zhuǎn)表到另一能SQL DB上
上傳時間: 2014-01-26
上傳用戶:caiiicc
一個數(shù)據(jù)庫頁面,用jsp寫成。希望給點意見
標(biāo)簽: jsp
上傳時間: 2013-12-14
上傳用戶:shanml
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1