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

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

| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 070305高分子化學(xué)與物理 304分求調(diào)劑 +14 | c297914 2026-03-28 | 14/700 |
|
|---|---|---|---|---|
|
[考研] 279求調(diào)劑 +6 | 學(xué)而思兮知 2026-04-01 | 6/300 |
|
|
[考研] 081200-11408-276學(xué)碩求調(diào)劑 +5 | 崔wj 2026-03-26 | 5/250 |
|
|
[考研] 材料調(diào)劑 +14 | 一樣YWY 2026-04-01 | 14/700 |
|
|
[考研] 349求調(diào)劑 +6 | 吃的不少 2026-04-01 | 6/300 |
|
|
[考研] 調(diào)劑 +3 | 好好讀書。 2026-04-01 | 3/150 |
|
|
[考研] 311求調(diào)劑 +11 | 藍(lán)月亮亮 2026-03-30 | 11/550 |
|
|
[考研] 英一數(shù)二生物信息學(xué)287分,本科生物科學(xué),求調(diào)劑 +3 | 碧水xyz 2026-03-29 | 4/200 |
|
|
[考研] 求調(diào)劑 +4 | DADA怪 2026-03-31 | 4/200 |
|
|
[考研] 材料與化工調(diào)劑一志愿大連海事085600,349 +9 | 吃的不少 2026-03-30 | 9/450 |
|
|
[考研] 086000生物與醫(yī)藥298調(diào)劑求助 +4 | 元元青青 2026-03-31 | 6/300 |
|
|
[考研] 269求調(diào)劑 +4 | 我想讀研11 2026-03-31 | 4/200 |
|
|
[考研] 085602化工求調(diào)劑(331分) +8 | 111@127 2026-03-30 | 8/400 |
|
|
[考研] 303求調(diào)劑 +7 | DLkz1314. 2026-03-30 | 7/350 |
|
|
[考研] 求調(diào)劑 +7 | 青春裁為三截 2026-03-29 | 7/350 |
|
|
[考研] 085602 化學(xué)工程專碩 340分求調(diào)劑 +4 | qianbai11 2026-03-29 | 4/200 |
|
|
[考研] 295求調(diào)劑 +5 | wei-5 2026-03-26 | 5/250 |
|
|
[考研] 298求調(diào)劑 +4 | 種圣賜 2026-03-28 | 4/200 |
|
|
[考研] 283求調(diào)劑 +3 | A child 2026-03-28 | 3/150 |
|
|
[考研] 復(fù)試調(diào)劑,一志愿南農(nóng)083200食品科學(xué)與工程 +5 | XQTJZ 2026-03-26 | 5/250 |
|