私はいくつかのODEを解決しようとしており、ODEPACKのようなfortranコード を探していましたが、fortran 90のバージョンは見つかりませんでした。 fortran 90にOPEPACKなどのodeソルバーコードはありますか?fortran 90にOPEPACKなどのodeソルバーコードはありますか?
答えて
Fortran 77バージョンのODEPACKは、Fortran 90から呼び出すことができます。Fortranは、そこで最も後方互換性のあるプログラミング言語の1つです。彼らは良い古いコードをすべて無効にしたくなかった。メインコードにFortran 90を使用しても、ODEPACKなどの古いライブラリを使用することはできません。
私がしているのは、レガシーコードの使用を簡略化するFortran 90/95サブルーチンを実装することです。そのため、メインプログラムは従来のコードにまったく直接アクセスできません。 Fortran 90でODEPACKを再実装する必要は特にありません。ホイールを再開発する必要はありません。特に、「ホイール」がODEPACK(これまでのところ最高のODEソルバー)でした。
以前は、DLSODAR_F95を実装しましたが、試してみることをおすすめします。これは実際にODEPACKの最も強力な(そして洗練された)ODEソルバー、すなわちDLSODARの使用を簡素化するFortran 95モジュールです。このモジュールには、元のDLSODAR
サブルーチンの代わりに使用できるパブリックサブルーチンODE_DLSODAR
があります。 ODE_DLSODAR
は、同じ機能を提供するためにはるかに使いやすくなります。
元のFortran 77コードでは、多くの引数を渡す必要があります。そのほとんどは、解決するODEによって変更する必要はありません。また、必要な変更は簡単です。 ODE_DLSODAR
はこれらの引数をすべて設定し、内部的にDLSODAR
を呼び出して問題を解決します。必要ならば、ODE_DLSODAR
にオプションの引数を渡してDLSODAR
を完全に制御できますが、通常は引数がほとんどないODE_DLSODAR
を呼び出すだけで済むので、モジュールは残りの部分を処理します。
リンクのパッケージには、DLSODAR_F95の使用方法に関するいくつかの例も含まれています。 DLSODARの代わりに他のODEPACKのソルバーが必要な場合は、DLSODAR_F95に似たモジュールを実装する必要があると思います。
ありがとうございました。 – JuYongLee
- 1. 文字の誤りfortran 90
- 2. Fortran 90のリソース?
- 3. Fortran 90のセグメンテーションフォルト(コアダンプ)
- 4. Fortran 90種類のパラメータ
- 5. Fortran 90の最適化ルーチン
- 6. Fortran 90モジュールの神秘的な性質
- 7. Fortran 90で一致しないインターフェイス
- 8. これらのFortran(90)ステートメントは何をしますか?
- 9. どのようにFortran 90モジュールのデータを使用する
- 10. Pythonで書かれたFriends-of-friendsアルゴリズムがFortran 90/95にある必要があります
- 11. Fortran 90からCUFFTを使用するには?
- 12. Fortran 90における数値積分
- 13. Fortran 90のDATA文の構文エラー
- 14. Fortran 90/95での関数インタフェース
- 15. スパース行列のFortran 90/95ライブラリ?
- 16. 崇高なテキスト2のFortran 90に適切なテキストカラーハイライトを得るには?
- 17. Fortran 90で引数を渡すスマートな方法
- 18. Fortran 2008は以前のFortranバージョンと下位互換性がありますか?
- 19. のFortran 90でのファイルからの関数を読ん
- 20. Fortranには標準ライブラリがありますか?
- 21. Fortran 90でstdoutをフラッシュする方法は?
- 22. このソルバーコードをどのように並列化できますか
- 23. Fortran 90で2つのベクトルの外積を計算する
- 24. Fortran 90で循環グリッドを作成するにはどうすればよいですか?
- 25. Fortranに同等のMATLAB dec2bin関数がありますか?
- 26. Fortranポインターエラー:「名前に無効な文字があります」
- 27. G-zip圧縮率は90%以上になる必要があります
- 28. Fortran 90の配列は、参照の問題で、私は、このようにF90のポインタを割り当てる場合はどうなり
- 29. Fortran 90のメークファイルが生成され、未解決の外部シンボル
- 30. Fortran 90 - 変数をファイルパスとして渡す
結果が悪い結果が得られた検索はどのようなものでしたか?私たちはツールを提案するためではありません。 – Ross