ACU-T:5300 静止船体
このチュートリアルでは、静止船体の周囲の流れのシミュレーションの設定、解析、および結果表示のための手順を説明します。このシミュレーションでは、波が静止船体に当たったときの船の周囲の流れをシミュレートします。このチュートリアルの目的は、自由表面シミュレーションを実行するために必要ないくつかのモデリングの概念を紹介することです。
- 重力波を生成するためのユーザー定義関数(UDF)の使用
- メッシュ押し出し
- 周期的境界条件
- サーフェス属性を適用するためのSurface Managerの使用
- 自由表面
- ガイド表面
- 境界条件としての静水圧の使用
- ALE(Arbitrary Lagrangian-Eulerian)法を使用した任意メッシュモーション
- 問題の解析
- AcuConsoleの起動とシミュレーションデータベースの作成
- 一般的な問題パラメータの設定
- 解法パラメータの設定
- Wigley船体の形状のインポート
- ボリュームグループの作成とボリュームパラメータの適用
- サーフェスグループの作成とサーフェスパラメータの適用
- グローバルメッシングパラメータの設定
- メッシュ押し出しと周期的境界条件の設定
- メッシュ生成
- AcuSolveの実行
- AcuProbeによる解析のモニター
- AcuFieldViewでの節点出力のポスト処理
前提条件
入門チュートリアルであるACU-T:2000 ミキシングエルボ内の乱流をすでに完了している必要があります。ここでは、AcuConsole、AcuSolve、およびAcuFieldViewをある程度使い慣れていることを前提としています。ライセンス供与済みバージョンのAcuSolveにアクセスできることも必要です。
このチュートリアルを実行する前に、AcuConsole_tutorial_inputs.zipを<<Altair_installation_directory>\hwcfdsolvers\acusolve\win64\model_files\tutorials\AcuSolveから作業ディレクトリにコピーします。 wigley_hull.x_t およびwave.c。をAcuConsole_tutorial_inputs.zipから取り出します。
このチュートリアルでモデリングウィンドウに表示されるオブジェクトの色と、ユーザーの画面に表示されるオブジェクトの色は異なる場合があります。AcuConsoleのデフォルト配色は“ランダム”であり、作成されたグループに色がランダムに割り当てられます。また、このチュートリアルはWindows上で作成されました。このチュートリアルを異なるオペレーティングシステムで実行する場合は、画面に表示されるイメージとこのチュートリアルで表示されるイメージが多少異なる可能性があります。
問題の解析
表面重力波の生成
図 2 は、単純な進行重力波を定義するパラメータを示しています。この波は、下に示すように、正弦波の形状でモデル化することができます。
ここで、
は波の水平粒子速度
は波の速度
Uは撹乱の速度振幅
は波番号 =
は波の波長
は水深
は波の周波数 =
は波の時間周期
tは時間
このシミュレーションでは、上の方程式の変数として次の値を使用します。
U = 0.1256m/s
= 1.0秒
= 12.566m-1
= 0.01m/s
= 0.5m
このチュートリアルでは、入口で、2秒間の波を生成し、5秒間の波の運動をシミュレートします。このために、C言語で書かれたUDF(wave.c)が使用されます。wave.cで使用される関数の詳細については、AcuSolve User-Defined Functions Manualをご参照ください。
AcuSolveでの2次元シミュレーション
AcuSolve は、2Dサーフェスメッシュ上のCFD解析をサポートしていません。ただし、対象の2Dサーフェスの垂直方向に沿った単一要素の押し出し、および押し出しの両側で対称または滑りの同じ境界条件を使用することにより、ボリュームメッシュでの2D解析をシミュレートできます。この方法では、本質的に問題の2D表現である厚み(押し出し)に沿って解が変化しません。このチュートリアルではこのアプローチを使用します。
解析パラメータの定義
AcuConsoleの起動とシミュレーションデータベースの作成
このチュートリアルでは、まずデータベースの作成、形状に依存しない設定の入力、形状の読み込み、グループの作成、グループ属性の設定、グループへの形状コンポーネントの追加、およびグループへのメッシュコントロールと境界条件の割り当てを行います。次に、メッシュを生成して、AcuSolveを実行し、指定された時間ステップの数だけ解析します。最後に、AcuFieldViewを使用して結果の一部の特性を可視化します。
一般的なシミュレーションパラメータの設定
次の手順では、シミュレーション全体に適用される属性を設定します。このタスクを簡略化するため、Data Tree ManagerでBASフィルタを使用します。このフィルタにより、Data Treeに表示される項目数が少なくなり、エントリの移動が容易になります。
このチュートリアルで設定する一般的な属性は、乱流、非定常解析、および任意のメッシュ移動(ALE)としてのメッシュタイプのためのものです。
解法属性の設定
材料モデルパラメータの設定
形状のインポートとモデルの定義
形状のインポート
物体力の設定
ボリューム属性の適用
形状がAcuConsoleにインポートされたときに、すべてのボリュームは“デフォルトの”ボリュームコンテナに配置されました。
次の手順では、デフォルトのボリュームグループコンテナの名前を変更し、そのグループ用の材料を設定して、流体ボリュームのメッシュモーションを設定します。
形状がAcuConsoleに読み込まれたときに、すべての形状ボリュームはデフォルトボリュームグループコンテナに配置されました。前の手順では、作成したGuide_Vol_Shipコンテナに追加する形状ボリュームを選択しました。この時点で、デフォルトのボリュームグループに残っているのは流体ボリュームのみです。新しいコンテナを作成し、形状内の流体ボリュームをこのコンテナに追加してから、デフォルトのボリュームコンテナを削除する代わりに、コンテナの名前を変更して、このグループの属性を変更できます。
サーフェスグループの作成とサーフェスパラメータの適用
サーフェスグループは、サーフェスに関する情報を保存するためのコンテナです。この情報には、解析およびメッシングパラメータや、パラメータが適用される形状内の対応するサーフェスが含まれます。
次の手順では、サーフェスグループを定義して、問題のさまざまな特性に適切な設定を割り当て、これらのグループコンテナにサーフェスを追加します。
シミュレーションの設定プロセスでは、(特に、サーフェスが非常に多いモデルの場合)複雑になりがちな境界条件やメッシュパラメータなどを設定するため、別のパネルに移動する必要があります。これを簡単にして、エラーを減らし、時間を節約するために、AcuConsoleでは2つの新しいダイアログが追加されています。Volume ManagerとSurface Managerは、一度にすべてのサーフェスまたはボリュームエンティティに関する情報を確認したり、指定するために使用します。ここでは、Surface Managerのいくつかの機能を利用します。
Side1とSide2
このシミュレーションは水中の船の2D表現です。そのため、この影響をシミュレートするための滑り境界条件を使用してSide1とSide2を設定するのが適切です。
- Data Treeで、Side1を拡張表示します。
- Simple Boundary Conditionをダブルクリックして、Simple Boundary Condition詳細パネルを開きます。
- TypeがSlipに設定されていることを確認します。
- Mesh displacement BC typeをSlipに変更します。
- サーフェスSide2に対して同じ設定を繰り返します。
AcuConsoleは、シミュレーション設定プロセスを高速化して時間を節約可能なPropagateと呼ばれる特別な機能を備えています。この機能は、あるサーフェスセットまたはボリュームセットに対して設定された属性(Simple Boundary Condition、Surface Output、Surface Mesh Attributes、Element Set、Volume Mesh Attributesなど)を別のサーフェスセットまたはボリュームセットにコピーします。たとえば、シミュレーションモデル内にSimple Boundary ConditionがSlipに設定された10個のサーフェスセットがある場合にこの機能を使用できます。1つのサーフェスの境界条件を手動で設定してから、他のすべてのサーフェスに対してPropagate機能を使用する必要があります。
- Side1の下で、Simple Boundary Conditionsを右クリックして、Propagateを選択します。
- サーフェスSide2を選択して、Propagateをクリックします。
トップ
Bottom
Outlet
シミュレーション中は、逆流と呼ばれる、出口サーフェスの特定の部分から流れが領域内に入る特定の時点(特に、出口サーフェスで溝が形成された場合)が存在します。逆流は、温度や乱流変数の不安定につながる可能性があります。逆流状態を有効にすると、流れが領域内に再流入する節点上でのみこれらの変数の節点境界条件を指定することができます。出口が船体から十分離れていると仮定すると、渦粘性の値を入口と同じ(1e-05など)に設定することができます。
No_Bc
No_Bcサーフェスセットには、実際のシミュレーションには関与しないGuide_Vol_Shipのサーフェスが含まれています。そのため、このサーフェスの境界条件は無効にするのが適切です。
- Data Treeで、No_Bcを拡張表示します。
- Simple Boundary Conditionチェックボックスのチェックをはずします。
Guide_surf
Guide_Vol_Shipに属しているこのサーフェスは、このシミュレーションでは静止したままであり、周囲の流体のガイドになります。そのため、このサーフェスをメッシュモーションなしのガイド表面として定義します。
Hull_guide
Inlet
Inletでは、式 1によって与えられる重力波の水平速度を指定します。この入口における境界条件は、UDFによる節点境界条件を使用して定義されます。
周期境界の定義
周期境界条件の確認
次の手順では、Side1とSide2のさまざまな変数の周期境界条件を定義します。
節点出力頻度の設定
節点出力頻度は、AcuFieldView内のポスト処理で使用するため解析結果を保存する頻度または時間間隔を決定します。
UDFのコンパイル
C言語の形式のUDF(wave.c)がチュートリアルに付属しています。次の手順に従って、このC プログラムをコンパイルする必要があります。
-
WindowsでUDFをコンパイルする:
- AcuConsole コマンドプロンプトを起動します。 の順にクリックして、Windowsのスタートメニューから
- cdコマンドを使用して、ディレクトリを現在の作業ディレクトリに変更します。
- コマンドacuMakeDll –src wave.cを入力します。
-
LinuxでUDFをコンパイルする:
- 端末で、cdコマンドを使用して、ディレクトリを現在の作業ディレクトリに変更します。
- コマンドacuMakeLib -src wave.cを入力します。
メッシュコントロールの割り当て
グローバルメッシュパラメータの設定
問題全体に対してシミュレーション特性を設定したので、次の手順はメッシュの生成です。
グローバルメッシュ属性は、特定の形状ボリューム、サーフェス、エッジ、およびポイントに参照されるのではなく、モデル全体に適用されるメッシングパラメータです。モデルの特定の形状コンポーネントのメッシュ生成コントロールを作成するには、ローカルメッシュ属性を使用します。
次の手順では、グローバルメッシュ属性を設定します。
メッシュ押し出しの定義
このシミュレーションは、モデルの2D表現と等価です。AcuSolveでは、厚み方向の要素の数を1つのみにすることで2Dモデルがシミュレートされます。このケースでは、Side1とSide2の間に1つだけ要素が必要となります。これは、メッシュ押し出しプロセスで実現できます。Side1とSide2で同じ境界条件を使用しているため、それらの間で1つの要素を使用することにより、厚み方向で節点値が一定となり、確実に2Dモデルのシミュレーションが行われます。次の手順では、Side1からSide2へのメッシュの押し出しプロセスを定義します。
メッシュの生成
次の手順では、問題の解を計算する際に使用されるメッシュを生成します。
節点の分割
この時点で、Hull_guideサーフェスではすべての節点が流体に接合されています。節点セットの複製を作成し、1つの節点セットが流体の動きに追随し、もう1つの節点セットがサーフェスGuide_surfに接合されたままになるようにする必要があります。次の手順では、節点の分割プロセスを示します。
解の計算と結果の確認
AcuSolveの実行
次の手順では、AcuSolveを起動してこのケースの解を計算します。
AcuProbeによる解析のモニター
AcuProbeを使用して、解析時間におけるさまざまな変数をモニターできます。このシミュレーションでは、船体にかかる力をモニターすることを目的とします。
AcuFieldViewでの結果の表示
計算が終了したので、AcuFieldViewを使用して流れ場を表示する準備ができました。AcuFieldViewは、AcuSolveに緊密に統合されたサードパーティ製のポスト処理ツールです。AcuFieldViewはAcuConsoleから直接開始できますが、スタートメニューやコマンドラインから開始することもできます。このチュートリアルでは、AcuSolveによって解が計算された後に、AcuConsoleからAcuFieldViewを開始します。
次の手順では、AcuFieldViewを起動して、zメッシュ変位のコンターを使用した船体運動のアニメーションを作成します。
AcuFieldViewの起動
船の周囲の水の変位の表示
これらの手順では、ユーザーがAcuFieldViewのビューを操作して、白の背景に設定できること、遠近法表示をオフにできること、アウトラインをオフにできること、および表示方向を+zに設定できることを前提としています。AcuFieldViewの基本的な操作がわからない場合は、AcuFieldViewにおけるモデルビューの操作をご参照ください。
要約
- 表面重力波を生成するためのユーザー定義関数(UDF)
- メッシュ押し出しと周期的境界条件
- ALEベースのメッシュモーションアプローチ
- サーフェス属性を適用するためのSurface Managerの使用
- 境界条件としての静水圧の使用
- AcuSolveの自由表面機能とガイド表面機能