| 5 | 1/1 | 返回列表 |
| 查看: 3174 | 回復(fù): 21 | ||||||||
| 當(dāng)前只顯示滿足指定條件的回帖,點(diǎn)擊這里查看本話題的所有回帖 | ||||||||
[求助]
FORTRAN 基礎(chǔ)知識(shí)講解
|
||||||||
|
1. EXTERNAL 聲明外部函數(shù)的名稱 是不是在整個(gè)程序當(dāng)中都能用?怎么用?在其他子程序中可以直接call嗎? 2. INTENT 說(shuō)明過(guò)程啞元的用意 過(guò)程啞元 什么是過(guò)程啞元? 3. INTRINSIC 聲明一個(gè)內(nèi)部函數(shù) 只能在這個(gè)子程序里面運(yùn)行? 4. OPTIONAL 允許過(guò)程被調(diào)用時(shí)啞元 過(guò)程啞元 什么意思? 5. 在F90中,每個(gè)變量名都應(yīng)該在說(shuō)明部分中說(shuō)明其類型,不應(yīng)該使用隱式說(shuō)明、為了抑制隱式說(shuō)明發(fā)生作用,應(yīng)該在程序說(shuō)明部分開始就寫出語(yǔ)句: IMIPLlCIT NONE 既聲明不使用隱式說(shuō)明 什么是隱式說(shuō)明? 6.程序變量定義的時(shí)候這兩句話什么意思? TYPE (wavedes) WDES TYPE (latt) LATT_CUR,LATT_INI 7. 另外 INQUIRE(FILE=DIR_APP(1 IR_LEN)//'WAVECAR.'//EXT,EXIST=junk)這個(gè)DIR_APP(1 IR_LEN)//'WAVECAR.'//EXT中,'WAVECAR.'兩端的東東什么意思?,知道這是個(gè)函數(shù),不能明確什么意思。那么在一般情況下,文件名前后加上一些東西是為了什么?8. 程序中?吹。 LATT_INI%A=LATT_CUR%A 這個(gè)%是什么運(yùn)算?還是只是當(dāng)做變量名中和字母作用一個(gè)字符? 9. 程序里面有很多退出的關(guān)鍵字 exit 是退出當(dāng)前的循環(huán)或者判斷語(yǔ)句種嗎? stop 退出主程序? break 呢? 根據(jù)具體情況給分!多答多得! |
先進(jìn)材料與分子模擬 | 第一性原理 | 有用的呦 | 基礎(chǔ)知識(shí) |
lyl的 | Fortran |

至尊木蟲 (職業(yè)作家)
|
隱式聲明是 fortran 的特色,默認(rèn)情況下,所有以 I、J、K、L、M、N 開頭的變量都是整型,所有以這些字母以外字母開頭的變量都是實(shí)型。如果你希望以 A 開頭的也是實(shí)型,你可以用 implicit integer (A) 來(lái)聲明所有以 A 開頭的也是整型。除非你顯示地聲明了變量的類型。 如果使用 implicit none, 那么以上的規(guī)則就不再算數(shù)了,所有的變量都必須聲明。 這應(yīng)該是較新的 Fortran 才引入的特性,允許自定義數(shù)據(jù)的類型,因此,上面的兩句話聲明 WDES 是 wavedes 一類的變量,而 LATT_CUR, LATT_INI 是 latt 一類的變量。 字符串后的 // 表示將 // 前后的兩個(gè)字符串聯(lián)接起來(lái)。因?yàn)樵谏厦孢@句話中,前后兩個(gè)都是變量,所以不能直接寫成一個(gè)字符串(寫成字符串后就沒(méi)有辦法獲得變的真實(shí)取值了,所以用 // 來(lái)連接…… 這里的 LATT_INI 應(yīng)該是一組變量的一個(gè)綜合體,如: 這里的 D 就相當(dāng)于你的 LATT_INI,它應(yīng)該包括了三個(gè)變量,即 Day, Month, Year,如果你想對(duì) D 中的 Day 賦值,那就要用 D%Day = 25... exit 表示退出循環(huán) stop 表示停止整個(gè)程序的運(yùn)行,不管是不是在主程序中…… break 不是 Fortran 中的,至少我沒(méi)有看到過(guò)用 break 的…… |
至尊木蟲 (職業(yè)作家)
|
這個(gè)不清楚你想表達(dá)什么意思?比如我自己寫了一個(gè)外部函數(shù),叫 sqrt,因?yàn)?Fortran 內(nèi)置了 sqrt,但我希望我的程序用我自己寫的這個(gè),這個(gè)時(shí)候就需要用 external sqrt 來(lái)聲明。在每個(gè)調(diào)用該函數(shù)的程序/子程序中都應(yīng)該這樣聲明。 INTENT 主要是說(shuō)明函數(shù)或者子程度的變量(啞元)是輸入變量(in),還是輸出變量(out),還是既有輸入也有輸出(inout)的。所謂的啞元,就是程序后面的那些個(gè)變量,比如 subroutine sub (a,b,c) 中的 a, b, c,呵呵……如果是屬性是 in,那么表示這個(gè)啞元的值不能被改變。如果是 out,表示該程序會(huì)輸出這個(gè)變量,如果是 inout,表明它的值在調(diào)用前后會(huì)發(fā)生變化。 只是表明這個(gè)程序是內(nèi)置的函數(shù),與 external 是對(duì)應(yīng)的…… 如果函數(shù) subroutine sub(a,b,c) 中的 c 是一個(gè) optional 啞元,那么調(diào)用這個(gè)函數(shù)是可以用 call sub(a, b)…… |

至尊木蟲 (職業(yè)作家)
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 材料求調(diào)劑 +8 | 呢呢妮妮 2026-04-01 | 8/400 |
|
|---|---|---|---|---|
|
[考研] 0710生物學(xué)求調(diào)劑 +7 | manman511 2026-04-01 | 7/350 |
|
|
[考研] 英一數(shù)一408,總分284,二戰(zhàn)真誠(chéng)求調(diào)劑 +12 | 12.27 2026-03-30 | 14/700 |
|
|
[考研] 288求調(diào)劑 一志愿哈工大 材料與化工 +28 | 洛神哥哥 2026-03-31 | 28/1400 |
|
|
[考研] 273求調(diào)劑 +19 | 李芷新1 2026-03-31 | 19/950 |
|
|
[考研] 275求調(diào)劑 +12 | waltzh 2026-04-01 | 12/600 |
|
|
[考研] 342求調(diào)劑 +12 | Mary Keen 2026-03-28 | 13/650 |
|
|
[考研] 一志愿鄭大材料工程290求調(diào)劑 +18 | Youth_ 2026-03-30 | 18/900 |
|
|
[考研] 324分 085600材料與化工 +17 | 呆鵝oor 2026-03-27 | 17/850 |
|
|
[考研] 一志愿 南京航空航天大學(xué) ,080500材料科學(xué)與工程學(xué)碩 +10 | @taotao 2026-03-31 | 11/550 |
|
|
[考研] 0856求調(diào)劑 +9 | 楒桉 2026-03-28 | 9/450 |
|
|
[考研] 346求調(diào)劑 一志愿070303有機(jī)化學(xué) +11 | 蘿卜燉青菜 2026-03-28 | 12/600 |
|
|
[考研] 一志愿南昌大學(xué)324求調(diào)劑 +6 | hanamiko 2026-03-29 | 6/300 |
|
|
[考研] 材料與化工272求調(diào)劑 +25 | 阿斯蒂芬2004 2026-03-28 | 25/1250 |
|
|
[考研] 生物考研337分求調(diào)劑 +4 | cgxin 2026-03-30 | 6/300 |
|
|
[考研] 323分 食品與營(yíng)養(yǎng)調(diào)劑 +3 | 嘿ooo 2026-03-31 | 3/150 |
|
|
[考研] 22408 359分調(diào)劑 +4 | Qshers 2026-03-27 | 8/400 |
|
|
[考研] 085701環(huán)境工程求調(diào)劑 +11 | 多久上課 2026-03-27 | 12/600 |
|
|
[考研] 356求調(diào)劑 +3 | gysy?s?a 2026-03-28 | 3/150 |
|
|
[考研] 復(fù)試調(diào)劑 +3 | raojunqi0129 2026-03-28 | 3/150 |
|