[轉載]MATLAB呼叫FORTRAN
已有 4575 次閱讀 2012-3-27 21:27 |個人分類:Learning NOTE|系統分類:科研筆記|關鍵詞:matlab 呼叫 fortran
------------------------------------------------------------ 原理,MEX FORTRAN程式。 步驟,通過MATLAB提供的C/FORTRAN External Interfaces 對原有的FORTRAN程式, 1,子程式化之。將原來的主程式化為子過程。 2,介面。MEX主要考慮二方面,一個是MATLAB傳給C/FORTRAN的輸入引數。 一個是C/FORTRAN傳給MATLAB的輸出引數。 一個完整的MEX程式為: SUBROUTINE mexFunction(nlhs, plhs, nrhs, prhs) nlhs---->輸入引數個數 plhs-->輸入引數 nrhs---->輸出引數個數 prhs-->輸出引數 其中輸入和輸出引數類於指標,FORTRAN通過INTEGER資料型別指明。呼叫API,接受 輸入引數後。呼叫原有的FORTRAN子程式計算。 其後,呼叫API返回MATLAB的輸出值。 所以,最後。 SUBROUTINE mexFunction(nlhs, plhs, nrhs, prhs) !此處新增處理輸入變數 CALL SUBROUTINE()!呼叫使用者FORTRAN程式 !此處新增處理輸出變數 END SUBROUTINE 此處為使用者原有子程式內容 END SUBROUTINE 好處,以MATLAB GUI為基礎,利用MATLAB的圖形功能,呼叫FORTRAN,可以很快捷地開發 軟體,同時,又可以很好地利用FORTRAN程式,或者自己寫MATLAB程式。 困難度:一天時間可以搞定