我一直在試圖解決一些ODE和尋找Fortran代碼 ,如ODEPACK,但我找不到fortran 90版本。 Fortran 90中是否有OPEPACK等頌歌解算器代碼?Fortran 90中是否有OPEPACK等頌歌解算器代碼?
回答
我所做的是實現一個Fortran 90/95子例程,該子例程簡化了遺留代碼的使用,因此我的主程序根本無法直接訪問遺留代碼。在Fortran 90中沒有必要重新實現ODEPACK。沒有必要重新發明輪子,特別是如果「輪子」是ODEPACK,這很好用 - 我見過的最好的ODE解算器。
前段時間,我實施了DLSODAR_F95,您可能想嘗試。它實際上是一個Fortran 95模塊,它簡化了ODEPACK最強大(和複雜)的ODE解算器(即DLSODAR)的使用。該模塊提供了一個公共子程序ODE_DLSODAR
,您可以使用該子程序代替原始的DLSODAR
子程序。 ODE_DLSODAR
更容易使用,提供相同的功能。
最初的Fortran 77代碼需要傳遞很多參數,並且大多數參數並不需要根據需要解決的常微分方式進行更改,或者所需的更改很簡單。 ODE_DLSODAR
將設置所有這些參數並在內部調用DLSODAR
來解決問題。如果需要,您仍然可以通過在ODE_DLSODAR
中傳遞可選參數來完全控制DLSODAR
,但通常您只需使用很少的參數就可以調用ODE_DLSODAR
,模塊將負責處理其餘部分。
鏈接中的軟件包還包含有關如何使用DLSODAR_F95的一些示例。如果你需要其他ODEPACK的解算器而不是DLSODAR,我相信你應該實現一個類似於DLSODAR_F95的模塊,你應該沒問題。
非常感謝你有一個愉快的一天! – JuYongLee
- 1. 固定步長的頌歌解算器
- 2. maxima的頌歌求解器
- 3. 矢量化SciPy頌歌求解器
- 4. Fortran 90 - 計算極大值
- 5. 錯誤頌歌
- 6. Fortran 95編譯器是否可以編譯Fortran 77代碼?
- 7. fortran轉換器軟件77到fortran 90
- 8. 查詢Fortran 90中
- 9. 計算Fortran 90中兩個向量的叉積90
- 10. 在FORTRAN 90
- 11. 使用FORTRAN 90中的MPI_Type_Create_Subarray 90
- 12. 使用FORTRAN 90中的ran1 FORTRAN 77子程序90
- 13. 如何在FORTRAN 90
- 14. 通過scipy文檔試圖解決頌歌的示例代碼中的錯誤是什麼?
- 15. fortran中的Btest函數,python中是否有任何等價物?
- 16. 是否有可能爲iPad編譯Fortran代碼?
- 17. x%是一個Fortran 90數組段嗎?
- 18. Fortran中是否有等價的MATLAB dec2bin函數?
- 19. Fortran 90函數沒有參數?
- 20. Fortran 90/95轉換器軟件到Fortran 77
- 21. Fortran 90讀取文件
- 22. Fortran 90的陣列子集
- 23. Fortran格式化90/95
- 24. FORTRAN 77和90個MPI庫
- 25. Fortran 90格式化輸出
- 26. FORTRAN 90 MINVAL比較錯誤
- 27. 如何在Fortran 90的
- 28. Fortran 90,函數,數組
- 29. Fortran 90 - 分段錯誤
- 30. Fortran中的中點規則90
你做了什麼樣的搜索,結果很差?我們不是在這裏建議一個工具。 – Ross