Helyx-OS を使ってみる2015年1月28日 | |
はじめにHelyx-OS は Engys 社が開発・販売している OpenFOAM ベースの統合 CFD ツール Helyx のオープンソース版である。簡単にいうと OpenFOAM 用 GUI ツール。ここではこの Helyx-OS を使ってみる。 使用バージョンHelyx-OS 2.2.0, OpenFOAM 2.3.1, Ubuntu 12.04 LTS インストールここ からパッケージをダウンロードする。 パッケージを実行。 $ sh HELYX-OS-2.2.0-linux-x86_64.bin いくつか質問に答える。 This program will install HELYX-OS on your system. Do you want to continue? 1) Yes 2) No #? 1 を入力する。ライセンスが表示されるので、スクロールする。 Do you accept the terms of agreement? 1) Agree 2) Exit #? 1 を入力。 Select components to install 1) HELYX-OS-GUI 2) HELYX-OS-GUI and Kernel #? 1 でよい。2 は OpenFOAM も入れてくれるみたい。 Select destination folder for HELYX-OS GUI: インストール先のパスを入力。 ~/.bashrc にパスの設定を追加。 export PATH=~/opt/Engys/HELYX-OS/v2.2.0/:$PATH シェルを起動しなおし、以下で Helyx-OS が起動するのを確認する。 $ HELYX-OS.sh OpenFOAM と ParaView のパスを設定する。メニュー[Edit]-[Preferences] で以下のパスを選択する。 Core Folder: $HOME/OpenFOAM/OpenFOAM-2.3.1 ParaView Executable: /opt/paraviewopenfoam410/bin/paraview ※たぶん Core Folder は "/opt/openfoam230" でも OK。 Helyx-OS を使ってみる※画面はバージョン 2.0.1 のものです。 STL ファイルの用意ParaView で簡単な STL ファイルを用意する。 Sources で 3D Text を用意する。ここではテキストを "PENGUIN" とする。Filters で Linear Extrusion と Triangulate を適用。メニュー [File]-[Save Data] で STL ファイルを ASCII 形式で保存。 ![]() メッシュの作成適当な作業ディレクトリに移動し、Helyx-OS を起動する。 $ HELYX-OS.sh & ![]() [New] を選択。"Case Name" に適当な名前を設定、"Parent Folder" には作業ディレクトリを選択。 ![]() ケースディレクトリが作成される。メッセージウインドウが出て、勝手に消える。 "Geometry" の "STL" で作成した STL ファイルを指定。 ![]() "Base Mesh" で "Base Mesh Type" に "User Defined" を選び、領域をモデルを囲むように設定する。ここでは以下のように設定。 Min: -1.0 -1.0 -0.5 Max: 8.0 2.0 1.5 Number of Elements: 50 50 20 ![]() "Material Point" で内部点を設定する。 ![]() メッシュを作成する。"Mesh" の "Create" ボタンを押す。 ![]() ウインドウが開き、メッセージが流れる。最後に "End" が出てきたら終わり。 ![]() 一応 ParaView でメッシュをチェック。 $ cd penguin $ paraview --data=penguin.foam ![]() 問題があったらやり直す。問題なければ、次に進む。 ケースの設定[Case Setup] タブに切り替える。 ![]() まず、([Solver] タブの) "Run Options" で "Solver" にソルバーが設定されているかチェックする。([Case Setup] タブの) "Solution Modelling" の設定をいろいろ変えてソルバーが変わるのを確認する (変更確認ダイアログが出るので、"OK" する)。ここでは "Steady"、"Incompressible" を ON、"Energy" を OFF にする。ソルバーに simpleFoam が選ばれているのを確認する。 ![]() "Boundary Conditions" で境界条件を設定。ffminx (入口), ffmaxx (出口) を以下のように設定。
ffminx
Patch Type: Patch
Momentum
Velocity
Type: Fixed Value
Velocity: 1 0 0
Pressure
Type: Zero Gradient
Turbulence
Type: By Turb. Intensity And Mixing Length
Turbulence Intensity: 0.05
Mixing Length: 0.168
ffmaxx
Patch Type: Patch
Momentum
Velocity
Type: Zero Gradient
Pressure
Type: Fixed Value
Pressure: 0
Turbulence
Type: Zero Gradient
![]() "Runtime Controls" を以下のように設定。
Time Settings
End Time: 1000
Data Writing
Write Control
Time Step, 100
![]() 計算を実行する。[Solver] タブの "Run Options" で "Start" ボタンを押す。 残差グラフが表示される。終わるまで待つ。 十分に収束していなければ、"Runtime Controls" の "Time Settings" で "Start From" に "LatestTime" を設定、"End Time" を増やして計算を継続する。問題なければポスト処理に移る。 ポスト処理は ParaView で行う。ParaView ボタンで起動できる。 ![]() | |
| PENGUINITIS | |