プログラムを修正したいのだが,blueCFD-Core-2020から大幅に変更されたようなので,まずは動作確認をしてみました.その際のメモです.勘違いや誤りがあるかもしれませんが,有識者の方にご指摘,アドバイスをいただけると嬉しいです.
●250401のメモ
・cavityのチュートリアルを調べると,foamRun を実行していることがわかる. そこで "C:\blueCFD-Core-2024\OpenFOAM-12\applications\solvers\foamRun" を調べてみよう.
・foamRunを作業領域に丸ごとコピーして修正.foamRunTest という名前のソルバーをつくって動作を調べてみる
・make\files を以下に修正
setDeltaT.C
foamRun.C
EXE = $(FOAM_USER_APPBIN)/foamRunTest
・これをコンパイルすると,
C:\blueCFD-Core-2024\ofuser-of12\platforms\mingw_w64Gcc122DPInt32Opt\bin
にfoamRunTestができている.これは今までと同じようだ.
・プログラムを見てみると,以下の記述がある.キックするsolverを指定している?
// Instantiate the selected solver
autoPtr solverPtr(solver::New(solverName, mesh));
solver& solver = solverPtr();
・クラスからオブジェクトを生成する?
controlDict にある
incompressibleFluid;
というのがsolverの名前?
・このプログラムはどこにあるのか調べてみると?
libincompressibleFluid.dll が
"C:\blueCFD-Core-2024\OpenFOAM-12\platforms\mingw_w64Gcc122DPInt32Opt\lib\libincompressibleFluid.dll" にある.
・ソースを発見
"C:\blueCFD-Core-2024\OpenFOAM-12\applications\modules\incompressibleFluid" がある.
・make\filesをみると
moveMesh.C
momentumPredictor.C
correctPressure.C
incompressibleFluid.C
LIB = $(FOAM_LIBBIN)/libincompressibleFluid
とあるので計算ソルバーのメインプログラムはライブラリ(dll)になっているようだ.
OF11から”クラスとして記述されたモジュラー・ソルバを導入”とある.これか!
・incompressibleFluid の make\filesを以下にしてコンパイルしてみる
$(FOAM_USER_LIBBIN)/libincompressibleFluid
・"C:\blueCFD-Core-2024\ofuser-of12\platforms\mingw_w64Gcc122DPInt32Opt\lib" に libincompressibleFluid.dll ができてる.
ここも今まで通り.
・momentumPredictor.C は Ueqn.Hのようなもの?
・correctPressure.C は pEqn.Hのようなもの?
・incompressibleFluid.C これがメインプログラムのようだ・・・
★ここまでをまとめると・・・
●モジュール型ソルバーのソースがある場所
C:\blueCFD-Core-2024\OpenFOAM-12\applications\modules\
●オリジナルのdll (モジュール型ソルバ,モジュラー・ソルバ,モジュール式ソルバー)
C:\blueCFD-Core-2024\OpenFOAM-12\platforms\mingw_w64Gcc122DPInt32Opt\lib
●自分がコンパイルしたdll(モジュール型ソルバ,モジュラー・ソルバ,モジュール式ソルバー)が格納される場所
C:\blueCFD-Core-2024\ofuser-of12\platforms\mingw_w64Gcc122DPInt32Opt\lib
0コメント