看板 Fortran 關於我們 聯絡資訊
本來用fortran寫了一個超音波的成像程式 在第一個csae要跑約16分鐘 但是第二個case很複雜 程式也要改寫 但是可能矩陣開太多 遇到一些記憶體的問題 導致我程式寫不出來 (大概是沒有用類似matlab裡面clear的動作吧) 於是心一橫 把fortran的程式改成沒學過的matlab來寫 結果第一個csae從本來要跑16分鐘 (跑完還要用surfer做圖才看的到結果) 變成只要兩分半! 對迴圈向量化還不熟 不然我想還可以更快一點 第二個case的問題也解決了了! ======比較====== fortran優點:程式碼看起來架構漂亮、變數宣告嚴謹(implicit none) 矩陣可以開負數,例如: real::x(-6,6) matlab優點:函式庫有夠大的! 矩陣運算快!可以直接產生圖檔 缺點:不能開索引值是負的或0的矩陣 -- -好管弦事- A place about cello and music.... http://fnt72.blogspot.com/ ※ 編輯: kobenein 來自: 140.123.67.47 (02/27 15:16)
wenni:我的經驗FORTRAN理論上不會比較慢的 應該是程式寫的問題? 02/27 17:04
Semisphere:我自己也是覺得Fortran比較快... 02/27 19:51
charlesdc:Fortran絕對比較快 是寫法的問題 函式庫都是最佳化過的 02/27 20:54
agody:Fortran在計算array時,有先後處理的差別,f(i,j)要先跑i再跑j 02/28 01:22
whsh3310:印象中MATLAB似乎有0矩陣 要去翻書一下確定 02/28 17:06
whsh3310:然後 fortran絕對比較快 matalb處理迴圈是他的弱項 02/28 17:06
YCTzeng:Fortran絕對比較快 02/28 23:55
xhole:Matlab有0矩陣 不過原po指的應該是Fortran的索引可以有0 03/01 23:49