| 5 | 1/1 | 返回列表 |
| 查看: 1937 | 回復(fù): 10 | ||
| 當(dāng)前只顯示滿足指定條件的回帖,點(diǎn)擊這里查看本話題的所有回帖 | ||
xiaobear20金蟲 (小有名氣)
(⊙o⊙)…
|
[求助]
FORTRAN新手 求助主程序循環(huán)問題
|
|
|
我現(xiàn)貼出主程序部分: PROGRAM MAIN USE SAME IMPLICIT NONE N=120 M=241 ITMAX=60 ITER=0 CALL INPUT CALL GRID DO I=1,M !!!!!!初始條件!!!!!!!!!! DO J=2,N-1 W(I,J)=1-EXP(-ETA(J)) ENDDO ENDDO 60 ITER=ITER+1 SELECT CASE(ITER-ITMAX) CASE(:-1) ! <= -1 整數(shù) GO TO 70 CASE(0) ! =0 WRITE(6,2500) GO TO 70 CASE(1 ! >=1WRITE(6,2600) GO TO 90 END SELECT 70 DO I=1,M DO J=2,N-1 WOLD(I,J)=W(I,J) ENDDO ENDDO CALL EDDY CALL CMOM CALL SOLV DO I=2,M DO J=2,N-1 CONVER(I,J)=ABS(1-(WOLD(I,J)/W(I,J))) ENDDO ENDDO MX=MAXVAL(CONVER) !選取誤差中的最大值 IF(MX.LE.EPS)THEN ! <=0.0001 !收斂判斷 EPS=0.0001 誤差 CONVER GO TO 90 ELSE GOTO 60 ENDIF 90 CALL OUTPUT END PROGRAM 程序主要過程如下是,(計(jì)算的是一個(gè)二維網(wǎng)格點(diǎn)上的速度,即二維數(shù)組),先給迭代的矩陣賦初值,繼而進(jìn)行第一次迭代,每次迭代完后,把此次結(jié)果與上一次的結(jié)果進(jìn)行比較,逐點(diǎn)比較,選出最大誤差,再與收斂條件ESP比較,如滿足條件則輸出結(jié)果,如不滿足,再返回迭代,直到滿足收斂條件為止,(其中也對(duì)迭代的次數(shù)進(jìn)行了判斷) 我的問題如下:不知道怎么回事,程序只進(jìn)行了一次計(jì)算就輸出了結(jié)果,沒有進(jìn)行第二次,還有誤差判斷CONVER(I,J)總是為0,我把子程序的結(jié)果也輸出看了一下,各個(gè)子程序還是運(yùn)行了一次。我就不知道問題在哪了。是結(jié)構(gòu)問題還是別的,求大神指道,分少別嫌棄啊,急等啊 子程序 CALL EDDY CALL CMOM CALL SOLV 在子程序EDDY中都用到了初始值,CMOM是矩陣系數(shù)的計(jì)算,SOLV是最后的結(jié)果計(jì)算,謝謝 |

金蟲 (小有名氣)
(⊙o⊙)…

至尊木蟲 (職業(yè)作家)
|
這個(gè)程序沒有辦法改,比如你的 W(I,J) 的值有更新嗎?在你的程序中,你的 WOLD 與 W 一直都是一樣的,那么 CONVER 當(dāng)然總是 0 了。因此,只迭代一次是很正常的。如果在 WOLD 之后,還有 W 更新,那么情況可能會(huì)不一樣。但這個(gè)沒有辦法看出來,因?yàn)槟愕乃?subroutine 的返回值是啥都看不出來…… 另外,你似乎喜歡用全局變量作為 subroutine 的參數(shù)和返回值,很多時(shí)候,這個(gè)習(xí)慣并不好,呵呵…… |
至尊木蟲 (職業(yè)作家)
金蟲 (小有名氣)
(⊙o⊙)…

| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 0856求調(diào)劑 +13 | zhn03 2026-03-25 | 14/700 |
|
|---|---|---|---|---|
|
[考研] 309求調(diào)劑 +6 | 誰不是少年 2026-03-29 | 6/300 |
|
|
[考研] 289求調(diào)劑 +13 | 新時(shí)代材料 2026-03-27 | 13/650 |
|
|
[考研]
|
nnnnnnn5 2026-03-25 | 7/350 |
|
|
[考研] 295求調(diào)劑 +4 | wei-5 2026-03-26 | 4/200 |
|
|
[考研] 322求調(diào)劑 +7 | 宋明欣 2026-03-27 | 7/350 |
|
|
[考研] 食品工程專碩一志愿中海洋309求調(diào)劑 +4 | 小張zxy張 2026-03-26 | 8/400 |
|
|
[考研] 394求調(diào)劑 +3 | 好事多磨靜候佳?/a> 2026-03-26 | 5/250 |
|
|
[考研] 0703化學(xué)/290求調(diào)劑/本科經(jīng)歷豐富/工科也可 +9 | 丹青奶蓋 2026-03-26 | 10/500 |
|
|
[考研] 340求調(diào)劑 +5 | jhx777 2026-03-27 | 5/250 |
|
|
[考研] 295求調(diào)劑 +5 | 1428151015 2026-03-27 | 6/300 |
|
|
[考研] 085701環(huán)境工程求調(diào)劑 +9 | 多久上課 2026-03-27 | 9/450 |
|
|
[考研] 一志愿211院校 344分 東北農(nóng)業(yè)大學(xué)生物學(xué)學(xué)碩,求調(diào)劑 +5 | 丶風(fēng)雪夜歸人丶 2026-03-26 | 8/400 |
|
|
[考研] 329求調(diào)劑 +5 | 1() 2026-03-22 | 5/250 |
|
|
[考研] 一志愿南航 335分 | 0856材料化工 | GPA 4.07 | 有科研經(jīng)歷 +6 | cccchenso 2026-03-23 | 6/300 |
|
|
[考研] 機(jī)械學(xué)碩總分317求調(diào)劑。。! +4 | Acaciad 2026-03-25 | 4/200 |
|
|
[考研] 求b區(qū)院校調(diào)劑 +4 | 周56 2026-03-24 | 5/250 |
|
|
[考研] 各位老師您好:本人初試372分 +5 | jj涌77 2026-03-25 | 6/300 |
|
|
[考研] 0854電子信息求調(diào)劑 +7 | α____ 2026-03-22 | 9/450 |
|
|
[考研] 材料專碩找調(diào)劑 +5 | 哈哈哈吼吼吼哈 2026-03-23 | 5/250 |
|