いきなりOpenFOAM (63)

スロッシング現象(その3)

解析モデル

 今回は、スロッシング解析にインパルス応答を試してみます。モデルはいきなりOpenFOAM第59回で説明したものと同じで、図1に示すタンクに350mmまで水が満たされているとします。

図1 モデル形状・寸法

 前回説明したインパルス応答の手順を図2に示します。バネマスダンパ系と同じく、モデルは静止したままにして、初期値として液体にタンクの長さ方向への適当な速度を与えて解析を行います。解析結果から液面の時間変化を求め、共振周波数と減衰比を求めれば、振幅倍率が計算できます。実際の振幅の周波数特性を求めるには任意の周波数で加振した結果との比を掛ければ求められます。今回は、振幅倍率を求めてみます。

図2 インパルス応答から振幅の周波数特性を求める手順
ファイルの修正

 解析ファイルは、いきなりOpenFOAM第59回で用いたものを流用します。計算結果を削除し、静止状態での解析のため、constantフォルダ内のdynamicMeshDictファイルも削除します。次に、初期条件として、液体に初期速度を与えます。図3に示すように、regionsでalpha.waterを1に設定すると同時に、volVecotFielValue U(0.1 0 0)として、x軸方向に0.1m/sを設定しています。

図3 setFieldsDictファイルの設定

 液面の高さは、paraviewで求めてもかまいませんが、時間変化を求めるとなると手間がかかります。そこで、任意の箇所の液位をcsvファイルとして出力させることにします。図4に示すように、controlDictファイルにfunctions以降を追加し、座標(-0.45,0,0)と(0,0,0)と(0.45,0,0)の3か所で液位の時間変化を求めることにします。結果はpostProcessingフォルダ内にcsvファイルとして出力されます。

図4 controlDictファイルの設定

 解析用ファイルを上書き保存後、端末でsetFields、interFoamの順にコマンドを入力すると、計算が始まります。

結果の可視化と周波数特性の算出

 計算が終了したら、paraFoamと入力し、結果を可視化します。図5は液面の変化を動画で示したものです。最初に液面が波立った後、タンク左右で液面が交互に上下する様子が見られます。

図5 液面の変化(アニメーション)

 postProcessingフォルダ内のcsvファイルを開いて、液位の時間変化を取り出します。加振初期では、液面が不安定なため、ここでは、加振後40秒から60秒の液位を取り出します。図6が液位の時間変化でA列が時間、B列が液位です。解析では平衡位置からの液位を使うため、C列に平均液位との差を計算して表示させています。図7はC列の平衡からの液位変化を表示したものです。図を見ると、三角関数で近似できることがわかります。また、減衰が小さく、長時間に渡って変動が続くことがわかります。

図6 液位の変化
図7 平衡からの液位変化

 図6に示す液位の時間変化から隣り合った極大値同士を探します。時間差を計算すると、1.255秒となり、共振周波数は0.8Hzと求まります。したがって、ωnは5rad/sとなります。極大値の比の自然対数を求めて、ζを計算すると、0.00068と求まります。以上を図2のMdの式に入れ、任意の周波数での振幅倍率を計算すると、図8に示す振幅倍率の周波数特性が得られます。図を見ると、0.8Hzで振幅が大きく増加し、それ以外では、振幅倍率は小さな値となることがわかります。
 このように、スロッシング現象に対しては、共振周波数を把握することが重要です。一見すると、0.8Hzという指定の周波数の地震に遭遇することはほとんどないように思えますが、地震波動は、単一の正弦波ではなく複数の周波数の正弦波が合成されたものであり、その中に周波数が0.8Hzとなる成分があると共振を起こすため、後に説明するように、バッフル板などにより、減衰比を増加させる対策が必要となります。
 なお、今回の解析は線形性を前提としていますが、実際は波頭が砕けるなどの非線形現象があり、この解析結果ですべてを説明できるわけではありません。実務上は様々な現象を考慮する必要があることに留意してください。

図8 振幅倍率の周波数特性

 今回は、隣り合った極大値同士の値から共振周波数と減衰比を求めていますが、目視で極大値を見つけるといった手間のかかる作業となっています。また、複数の極大値同士の組み合わせを使ったほうがより精度の高い結果が得られます。
 次回は、共振周波数と減衰比を自動で求められるようなコードを作成してみます。

 このページでは、各アプリケーションの操作説明は省略しています。FreeCADの具体的な操作については、いきなりOpenFOAM第5回および第7回、OpenFOAMでの計算実行は第8回、ParaViewの操作については第3回第4回および第8回を参考にしてみてください。

おことわり
 本コンテンツの動作や表示はお使いのバージョンにより異なる場合があります。
 本コンテンツの動作ならびに設定項目等に関する個別の情報提供およびサポートはできかねますので、あらかじめご了承ください。
 本コンテンツは動作および結果の保証をするものではありません。ご利用に際してはご自身の判断でお使いいただきますよう、お願いいたします。