| 5 | 1/1 | 返回列表 |
| 查看: 816 | 回復(fù): 3 | ||
| 當(dāng)前只顯示滿足指定條件的回帖,點(diǎn)擊這里查看本話題的所有回帖 | ||
小丫鴨鐵蟲 (初入文壇)
|
[求助]
Fortran中的一個(gè)高斯程序 已有1人參與
|
|
|
各個(gè)大神門 有沒有見過(guò)下面這個(gè)程序的 可以給解答下這是求什么的嗎 ?編寫的什么公式??? subroutine gauss(n,ns,BB) implicit none integer i,j,k,n1,nt,n,ns,ip,i1 double precision BB(2,3),x,AA(3,4) n1=n+1 nt=n+ns do i=1,2 do j=1,3 aa(i+1,j+1)=bb(i,j) enddo enddo if (n.gt.1) then do 555 i=2,n ip=i i1=ip x=abs(aa(i1,i1)) do 444 j=i+1,n+1 if (abs(aa(j,i1)).ge.x) then x=abs(aa(j,i1)) ip=j endif 444 continue if (ip.ne.I1) then do 333 j=i1,nt+1 x=aa(i1,j) aa(i1,j)=aa(ip,j) aa(ip,j)=x 333 continue endif do 222 j=i+1,n+1 if (abs(aa(i1,i1)).lt.1.d-10) then aa(i1,i1)=1.0 endif x=aa(j,i1)/aa(i1,i1) do 111 k=i+1,nt+1 aa(j,k)=aa(j,k)-x*aa(i1,k) 111 continue 222 continue 555 continue endif do 50 ip=1,n i=n1-ip+1 do 40 k=n1+1,nt+1 if (abs(aa(i,i)).lt.1.d-10) then aa(i,i)=1.0 endif aa(i,k)=aa(i,k)/aa(i,i) if (i.ne.2) then i1=i-1 do 30 j=2,i1 aa(j,k)=aa(j,k)-aa(i,k)*aa(j,i) 30 continue endif 40 continue 50 continue do i=1,n do j=1,n+1 bb(i,j)=aa(i+1,j+1) enddo enddo end |
鐵蟲 (初入文壇)
木蟲 (正式寫手)

鐵蟲 (初入文壇)
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|