Kratos のコンパイル2019年11月23日 | |
はじめにKratos のコンパイルについて。 環境Ubuntu 16.04 LTS 前準備g++、gfortran、BLAS (libblas-dev)、LAPACK (liblapack-dev)、Python3 (python3-dev) をインストールしておく。 $ sudo apt-get install liblapack-dev python3-dev Boost は別途コンパイルしておく。 参考: preCICE のセットアップ コンパイルソースを取得。 $ git clone https://github.com/KratosMultiphysics/Kratos Kratos コンパイルの設定。 $ cd Kratos/cmake_build $ cp example_configure.sh.do_not_touch configure.sh configure.sh を開いて、BOOST_ROOT と PYTHON_EXECUTABLE の設定を行う。
-DBOOST_ROOT="${HOME}/opt/boost_1_69_0" \
-DPYTHON_EXECUTABLE="/usr/bin/python3" \
コンパイル。 $ sh configure.sh 設定ソースディレクトリ自体がインストールディレクトリである。好きなところに移動する。 $ mv Kratos ~/opt ~/.bashrc などにパスを設定する。 export PYTHONPATH=$PYTHONPATH:~/opt/Kratos export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/opt/Kratos/libs export PATH=$PATH:~/opt/Kratos 設定ファイルを読み込み直すか、端末を再起動する。runkratos を実行してみて何か出ればたぶん OK。 $ runkratos MISSING SCRIPT NAME! Usage: runkratos filename_in.py Python モジュールも確認。
$ python3
Python 3.5.2 (default, Oct 8 2019, 13:06:37)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from KratosMultiphysics import *
| / |
' / __| _` | __| _ \ __|
. \ | ( | | ( |\__ \
_|\_\_| \__,_|\__|\___/ ____/
Multi-Physics 7.0.0-52c02c1-Release
Compiled with OpenMP support.
Maximum OpenMP threads: 12.
例題例題の取得。 $ git clone https://github.com/KratosMultiphysics/Examples 円筒回りの流れ$ cp -r Examples/fluid_dynamics/validation/body_fitted_cylinder_100Re . $ cd body_fitted_cylinder_100Re/source $ runkratos MainKratos.py vtk_output ディレクトリに結果が出力されている。 ![]() リッド (蓋) 駆動キャビティ FSIExamples/fluid_structure_interaction/fsi_lid_driven_cavity VTK データを出力させるため、ProjectParameters.json の "gid_output" の最後に以下を挿入する。
}],
"vtk_output" : [{
"python_module" : "vtk_output_process",
"kratos_module" : "KratosMultiphysics",
"process_name" : "VtkOutputProcess",
"help" : "This process writes postprocessing files for Paraview",
"Parameters" : {
"model_part_name" : "Parts_Structure",
"output_control_type" : "step",
"output_frequency" : 1,
"file_format" : "ascii",
"output_precision" : 7,
"output_sub_model_parts" : true,
"folder_name" : "vtk_output",
"save_output_files_in_folder" : true,
"nodal_solution_step_data_variables" : ["DISPLACEMENT","REACTION","ACCELERATION","POINT_LOAD","VAUX_EQ_TRACTION"],
"nodal_data_value_variables" : [],
"element_data_value_variables" : [],
"condition_data_value_variables" : []
}
}, {
"python_module" : "vtk_output_process",
"kratos_module" : "KratosMultiphysics",
"process_name" : "VtkOutputProcess",
"help" : "This process writes postprocessing files for Paraview",
"Parameters" : {
"model_part_name" : "Parts_Fluid",
"output_control_type" : "step",
"output_frequency" : 1,
"file_format" : "ascii",
"output_precision" : 7,
"output_sub_model_parts" : true,
"folder_name" : "vtk_output",
"save_output_files_in_folder" : true,
"nodal_solution_step_data_variables" : ["VELOCITY","PRESSURE","MESH_DISPLACEMENT","REACTION","VAUX_EQ_TRACTION"],
"nodal_data_value_variables" : [],
"element_data_value_variables" : [],
"condition_data_value_variables" : []
}
![]() 参考 | |
| PENGUINITIS | |