codeblocks編譯器怎么弄 怎么編譯運(yùn)行這個(gè)fortran語(yǔ)言編譯的程序?
怎么編譯運(yùn)行這個(gè)fortran語(yǔ)言編譯的程序?入門fortran像入了門其他所有語(yǔ)言一樣的,從最簡(jiǎn)單的裝軟件開始【0】裝軟件初學(xué)者建議直接cbfortran,windows版本還從網(wǎng)上下載mingw編
怎么編譯運(yùn)行這個(gè)fortran語(yǔ)言編譯的程序?
入門fortran像入了門其他所有語(yǔ)言一樣的,從最簡(jiǎn)單的裝軟件開始
【0】裝軟件
初學(xué)者建議直接cbfortran,windows版本還從網(wǎng)上下載mingw編譯器,意見f77f95f2003,也不是太大,并且開盒,安裝之后擴(kuò)建項(xiàng)目接著F5就Helloword了。
非常適合小東西,寫個(gè)小計(jì)算單機(jī)跑跑之類的最合適
然而,終究,學(xué)fortran是就是為了速度,而mingw編譯器省內(nèi)一本優(yōu)化是將近的,因此還是要裝vsparallelstudio。用ifort程序編譯會(huì)有mkl和mpi支持??墒前囱b過(guò)來(lái)比codeblocks麻煩多了
【1】變量,算符,代數(shù)乘除運(yùn)算,矩陣運(yùn)算
這個(gè)推薦一個(gè)小repo,里面有很多小例子,生克制化書上講的內(nèi)容
Pjer-zhang/fortran-examples
飚車世界小例子,語(yǔ)法一下子就完了
【2】聯(lián)成一體
聯(lián)成一體是fortran的武神目的,用fortran縱然還是是為fortran的速度
fortran的并行有單機(jī)多線程并行openmp以及跨節(jié)點(diǎn)分頭并進(jìn)MPI,這個(gè)跨節(jié)點(diǎn)聯(lián)成一體還要用到集群了
openmp【Home
】是向程序中先添加特殊注釋符的形式來(lái)指示分頭并進(jìn)段的,這樣在程序編譯的時(shí)候要是去添加flag[-omp]這樣結(jié)果程序跑的時(shí)候都會(huì)左行,假如不加這個(gè)flag那就久肯定不會(huì)并行。
一個(gè)小例子:
【結(jié)語(yǔ)】
Fortran的能修真者的存在到今天已經(jīng)是是因?yàn)槌蓢嵉倪z產(chǎn)代碼,和怠惰的研究生
不只不過(guò)是CFD,空間物理,計(jì)算出等離子體,聚變數(shù)值計(jì)算等等這些學(xué)科里都有吧動(dòng)輒幾十萬(wàn)行的模式(大部分f77寫的),這些模式只能模塊可以介紹和隨機(jī)的已發(fā)表文章paper,沒有l(wèi)ine-六花禁愛-line注釋,是想重構(gòu)幾乎就沒很可能,所以我沒有辦法像黑盒一樣的調(diào)用。
我的原則是小規(guī)模的的fortran遺產(chǎn)代碼(10k行200以內(nèi)),重構(gòu)到matlab或者如果性能需求很高的話就gpu支持/c。不能不能把毒瘤放出來(lái)下一代
之后,科大有開Fortran的課的哇,7系開的,我還當(dāng)過(guò)助教呢
codeblocks不顯示錯(cuò)誤原因?
1.
可以下載版本問題URL(unitedesourcelocation)#windows必須得可以下載內(nèi)帶編譯器的版本
2.
下載了中有編譯器的版本,一路往北默認(rèn)按裝代碼依舊沒有電腦提示,且在編譯時(shí)顯示如下錯(cuò)誤:英文翻譯過(guò)去,大概意思是:在你設(shè)置的GNUGCCcompiler編譯器直接輸入路徑下就沒突然發(fā)現(xiàn)可先執(zhí)行的編譯器。