0

私は Fortran に非常に慣れていないので、この質問の無知を許してください。とにかく、いくつかのシミュレーション ソフトウェアの最適化に取り組んでいます。

より明確にするために、私が編集しているサブルーチンは開始時にいくつかの静的変数を初期化し、開始条件が何であれそれらは同じでなければなりません。

問題は、何百もの変数を再初期化する各時間ステップでこのサブルーチンを呼び出す別のコーディングがあり、それは同じままであるべきだったことです。これを修正するために、プログラム内の他のモジュールからのこれらすべての変数を含む派生型を作成しました。ソフトウェアを編集して、モジュール変数の代わりに派生型変数を初期化して、異なる時間ステップ間で参照できるようにしています。

私の質問は、私は不要な仕事をしているのかということです。代わりに、すべての初期化要素を取り、それをメイン プログラムの外部のサブルーチンに配置し、コンパイル時にこれらをリンクすると、すべての変数が関数呼び出し間で値を保持します。

4

2 に答える 2