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