ACU-T:5402 剛体回転を伴う圧電流体エネルギーハーベスタ

このチュートリアルでは、圧電流体ハーベスタのシミュレーションの設定、解析、および結果表示のための手順を説明します。このシミュレーションでは、圧電流れハーベスタが流体流路に置かれます。ハーベスタは、流体流れの中で渦を引き起こす渦発生体としても機能する円筒マウントに取り付けられます。加えて、円筒とハーベスタに正弦波回転運動が与えられます。このチュートリアルでは、渦によって生成される圧力場と流れのハーベスタ構造の間の相互作用をシミュレートします。変形する構造と接触したときの流体領域のメッシュの変形の計算には、Arbitrary Lagrangian Eulerian(ALE)アプローチが使用されます。

CFDシミュレーションの基本的な手順については、ACU-T:2000 ミキシングエルボ内の乱流をご参照ください。このチュートリアルでは、AcuSolveの以下の追加機能を紹介します。
  • 剛体回転運動の定義
  • 剛体回転を伴うP-FSIの実装
このチュートリアルでは、次の手順を実行します。
  • 問題の解析
  • AcuConsoleの起動、および圧電流体ハーベスタのシミュレーションデータベースの読み取り
  • 一般的な問題パラメータの変更
  • 剛体メッシュモーション用の乗算関数の作成
  • 剛体回転用のメッシュモーションの作成
  • サーフェス属性へのメッシュモーションの適用
  • サーフェス属性と節点属性への剛体運動の割り当て
  • 入口速度の変更
  • 時刻歴出力ポイントの追加
  • AcuSolveの実行
  • AcuProbeによる解析のモニター
  • AcuFieldViewでの節点出力のポスト処理

前提条件

チュートリアルのACU-T:2000 ミキシングエルボ内の乱流、およびACU-T:5400 圧電流体エネルギーハーベスタ:流体構造連成(P-FSI)をすでに完了している必要があります。ここでは、AcuConsoleAcuSolve、およびAcuFieldViewをある程度使い慣れていることを前提としています。ライセンス供与済みバージョンのAcuSolveにアクセスできることも必要です。

このチュートリアルを実行する前に、AcuConsole_tutorial_inputs.zip<<Altair_installation_directory>\hwcfdsolvers\acusolve\win64\model_files\tutorials\AcuSolveから作業ディレクトリにコピーします。 piezo_harvester_P-FSI.acs をAcuConsole_tutorial_inputs.zipから取り出します。ファイルpiezo_harvester_P-FSI.acs は、Piezoelectric Flow Harvesterでの設定を保存します。これには、純粋な弾性体シミュレーションが含まれます。このチュートリアルでは、そのデータベースから開始し、剛体回転を追加し、流れの現象を解析します。

問題の解析

CFDシミュレーションにおける重要なステップは、目前の工学的問題を調べ、AcuSolveに対して指定する必要のある重要なパラメータを決定することです。

CFDモデルには、片持ちビームと円筒の剛体が含まれています。ビームは円筒とともに水流の中に置かれています。この円筒体は、流れの中に置かれた渦発生体として機能し、円筒を通過する際に下流への流れの中で発生する渦をシミュレートします。交互に渦が発生することにより、ビームの両側に交互の非対称圧力分布が形成されます。このような交互の圧力分布は、ビームに振動力を加え、ビーム内に持続可能な周期振動を発生させます。

このチュートリアルでは、圧電流れハーベスタで採用されたビームの柔軟な動きに加えて、円筒とビームの剛体回転を組み込みます。円筒とビームには、円筒の中心の周りに最大回転角が100(0.174rad)で周波数が22rad/sec(3.5Hz)の正弦波振動の回転が適用されます。回転軸は円筒の軸に沿っています。回転角の変化(θ)は次の式で与えられます。

θ=0.174×sin( 22×t )

ここで、tは時間(秒)です。

このチュートリアルにはビームの柔軟な動きに加えて回転運動が含まれているため、より低い速度でより高い変位(および歪み)を実現することができます。そのため、入口速度を圧電流れハーベスタの10m/secではなく、4m/secに抑えます。

このチュートリアルで扱う問題の概略図を図1に示します。モデル化する領域は流体ボリュームで構成されています。流体ソルバーでは、固体をモデル化する必要はありません。ただし、構造ソルバーの結果は固体の定義に使用され、流体がソリッドに接触するサーフェスは、ビームの固有モードに従って変形することができます。図2は、ビームの配列とそのさまざまな層を示しています。


図 1. 問題の概略図


図 2. ビームとそのさまざまな層

解析パラメータの定義

AcuConsoleの起動とシミュレーションデータベースのオープン

次の手順では、AcuConsoleを起動して、非回転圧電ハーベスタのP-FSIシミュレーション用に設定するデータベースを開きます。その後で、弾性体の運動に加えてハーベスタの剛体回転を考慮するようにデータベースに修正を加えます。

  1. Windows のスタートメニューからスタート > Altair <バージョン> > OptiStructをクリックして OptiStructを起動します。
  2. 作業ディレクトリとして使用する場所に移動します。
    このディレクトリには、そのシミュレーションに関するすべてのファイルが保存されます。AcuConsoleのデータベースファイル(.acs)はこのディレクトリに保存されます。メッシュと解が作成されたら、追加のファイルとディレクトリがこのディレクトリ内に作成されます。
  3. この場所に新しいディレクトリを作成します。P-FSI_with_rigid_body_motionという名前を与えます。
  4. File > Openをクリックし、piezo_harvester_P-FSI.acsを開きます。
  5. File > Save Asをクリックし、データベースのファイル名としてP-FSI_with_rigid_body_rotationと入力します。

一般的なシミュレーション属性の設定

次の手順では、圧電ハーベスタの剛体回転に必要なグローバル設定を変更します。

  1. Data Tree ManagerBASをクリックして、Data Tree内の基本ビューに切り替えます。


    図 3.
  2. GlobalData Tree項目をダブルクリックして拡張表示します。
    ヒント: 項目名の横にある をクリックしてツリー項目を拡張表示することもできます。


    図 4.
  3. Problem DescriptionをダブルクリックしてProblem Description詳細パネルを開きます。
    ヒント: ツリー項目を右クリックしてコンテキストメニューからOpenをクリックすることでも、パネルを開くことができます。
  4. Sub titleとしてP-FSI with rigid body rotationと入力します。


    図 5.

メッシュモーションのMultiplier Functionの作成

回転角の変化( θ = 0.174 × sin ( 22 × t ) )は、次の手順を使用してMultiplier Functionによりモデル化されます。

  1. Data Tree ManagerPB*をクリックして、Data Tree内の一般的な問題設定に関連する使用可能なすべての設定を表示します。
  2. Multiplier Functionを右クリックし、Newをクリックして新しいMultiplier Functionを作成します。
    新しいエントリMultiplier Function 1がData TreeのMultiplier Function分岐の下に作成されます。
  3. 新しいMultiplier Functionの名前を変更します。
    1. Multiplier Function 1を右クリックします。
    2. Renameをクリックします。
    3. Rotation_multiplierと入力し、Enterを押します。
  4. Rotation_multiplierをダブルクリックして詳細パネルを開きます。
  5. TypeをSine Seriesに変更します。
  6. Sine coefficientsの横のOpen Arrayをクリックします。
  7. 次のように値を入力します。
    Array Editorで、1つ目の列は正弦関数の振幅を、2つ目の列は正弦関数の周波数を、3つ目の列は正弦波の位相を表します。


    図 6.
  8. OKをクリックし、ダイアログを閉じます。

剛体回転用のメッシュモーションの作成

次の手順では、円筒とビームの剛体回転を定義します。

  1. Data Tree ManagerALEをクリックして、メッシュモーションに関するすべての設定を表示します。
  2. Mesh Motionを右クリックし、Newをクリックして新しいメッシュモーションを作成します。
  3. 新しい参照フレームの名前をRigid_body_rotationに変更します。
  4. Rigid_body_rotationをダブルクリックして詳細パネルを開きます。
  5. TypeをRotationに変更します。
  6. Rotation centerの横のOpen Arrayボタンをクリックし、Array Editorを開きます。
  7. X-coordinateに-0.1と入力します。


    図 7.
  8. OKをクリックし、ダイアログを閉じます。
    注: (x, y, z) = (-0.1, 0, 0)が円筒の中心です。
  9. Angular velocityの横のOpen Arrayボタンをクリックし、Array Editorを開きます。
  10. Z-coordinateに1.0と入力します。


    図 8.
  11. OKをクリックし、ダイアログを閉じます。
  12. Rotation variableをMultiplier Functionに設定します。
  13. Rotation multiplier functionをRotation_multiplierに設定します。


    図 9.
    メッシュモーションのType = Rotationを使用すると、ビームと円筒の座標の算出時にAcuSolveで使用される回転角の変化が定義されます。回転角は、Rotation Variableの値にAngular Velocityの成分を乗算して求められます。そのため、このチュートリアルでは、回転角は次のようになります。(1) R o t a t i o n   a n g l e   ( θ ) = ( R o t a t i o n   V a r i a b l e ) × ( A n g u l a r   V e l o c i t y )

    θ = 1 × 0.174 × sin ( 22 × t ) (z軸について)

    円筒またはビーム上に配置されている初期座標を持つ点については、特定の時刻tの座標が次の式で与えられます。(2) x = x 0 cos ( θ ) y 0   sin ( θ ) (3) y = y 0 cos ( θ ) + x 0 sin ( θ ) (4) z = z 0

ビームサーフェスへの剛体運動の割り当て

  1. Data Tree ManagerBASをクリックして、Data Tree内の基本ビューに切り替えます。
  2. Model > Surfaces > Beamを拡張表示します。
  3. Simple Boundary Conditionをダブルクリックして詳細パネルを開きます。
  4. Mesh motionをRigid_body_rotationに設定します。


    図 10.

円筒サーフェスへの剛体運動の割り当て

  1. Model > Surfaces > Cylinderを拡張表示します。
  2. Simple Boundary Conditionをダブルクリックして詳細パネルを開きます。
  3. Mesh motionをRigid_body_rotationに設定します。


    図 11.
  4. Saveをクリックしてデータベースを保存します。

入口速度の低減

問題の解析で説明したように、入口速度を4m/secに設定します。

  1. Model > Surfaces > Inletを拡張表示します。
  2. Simple Boundary Conditionをダブルクリックして詳細パネルを開きます。
  3. X velocityを4.0m/secに設定します。


    図 12.

初期状態の設定

次の手順では、初期状態を設定します。

  1. Data TreeのGlobalの下で、Nodal Initial Conditionをダブルクリックして、詳細パネルでダイアログを開きます。
  2. X velocityを4m/secに設定します。
  3. Eddy viscosityが1e-005 m2/secに設定されていることを確認します。


    図 13.
  4. データベースを保存します。

時刻歴出力ポイントの追加

Time History Outputコマンドを使用すれば、領域内の任意の点の節点解を抽出することができます。このシミュレーションでは、片持ちビームの先端と付け根での変位を確認します。開始時に使用する.acsデータベースには、片持ちビームの先端におけるモニターポイントが含まれています。

次の手順では、同様のモニターポイントを片持ちビームの付け根に作成します。

  1. GlobalData Tree項目をダブルクリックして拡張表示します。
  2. Outputをダブルクリックします。
  3. Time History Outputを右クリックして、Newを選択します。
  4. 新しい時刻歴出力の名前をRoot_MonitorPointに変更します。
  5. Root_MonitorPointをダブルクリックして詳細パネルを開きます。
  6. TypeをCoordinatesに変更します。
  7. Coordinatesの横にあるOpen Arrayをクリックして、Array Editorダイアログ内の欄を次のように更新します。


    図 14.
  8. Time step frequencyを1に設定します。
  9. Saveをクリックしてデータベースを保存します。


    図 15.

解の計算と結果の確認

AcuSolveの実行

次の手順では、AcuSolveを起動してこのケースの解を計算します。

  1. ツールバーでをクリックしてLaunch AcuSolveダイアログを開きます。
  2. Okをクリックして解析プロセスを開始します。

    計算中、AcuTailウィンドウが開きます。解析の進行状況はこのウィンドウで報告されます。解析プロセスのサマリーで、実行が完了したことが示されます。

    このサマリーで提供される情報は、AcuSolveで使用されるプロセッサの数に基づいています。このチュートリアル内で示されている数と異なる数のプロセッサを使用した場合は、示されているサマリーと実行時のサマリーが少し異なる場合があります。



    図 16.
  3. AcuTailウィンドウを閉じ、データベースを保存して設定のバックアップを作成します。

AcuProbeでのポスト処理

AcuProbeを使用して、解析時間におけるさまざまな変数をモニターできます。

  1. ツールバーの アイコンをクリックして、AcuProbeを開きます。
  2. 左側のData Treeで、 Time History > Root_MonitorPoint > node 1を拡張表示します。
  3. mesh_y_displacementを右クリックし、Plotを選択します。
    注: プロットを正しく表示するために、ツールバーで をクリックする必要がある場合があります。
  4. 上記手順を繰り返し、Tip_MonitorPointのmesh_y_displacementをプロットします。


    図 17.

    上のプロットは、ビームが流れと接触したときの流体力によるビームの先端と付け根の変位を示しています。また、上のプロットは、付け根と先端の変位の位相が一致していないため、下の入り口速度に対する曲げ応力(その結果の歪み)が最大化されることも示しています。

  5. プロットを画像として保存することもできます。
    1. AcuProbeダイアログで、File > Saveをクリックします。
    2. 画像の名前を入力して、Saveをクリックします。
  6. 変数の時系列データをテキストファイルとしてエクスポートして、さらにポスト処理することもできます。
    1. エクスポートする変数を右クリックして、Exportをクリックします。
    2. File nameを入力して、Save as typeに.txtを選択します。
    3. Saveをクリックします。

AcuFieldViewでのポスト処理

本チュートリアルは、AcuFieldViewおよび基本的な操作に慣れていることが前提となっています。本チュートリアルは、一般に次の基本事項の理解に役立ちます:
  • Fileメニューでデータリーダーを検索し、データ入力のための目的のリーダーパネルを開く方法。
  • サイドツールバーまたはメインメニューのVisualizationパネルから表示パネルを検索し、AcuFieldViewでサーフェスを作成および変更する方法。
  • マウスアクションを使用してモデリングウィンドウでデータを動かし、データの移動、回転、およびズームを行う方法。

AcuFieldViewの起動

AcuConsoleツールバーで をクリックしてLaunch AcuFieldViewダイアログを開きます。
圧力コンターがメッシュを含むすべての境界サーフェス上に表示されていることが確認できます。非定常シミュレーションの結果がAcuConsoleに読み込まれたときに表示される結果はシミュレーションの最後の時間ステップに対応します。


図 18.

AcuFieldViewの設定

  1. Boundary Surfaceダイアログを閉じます。
  2. Viewer Optionsをクリックします。


    図 19.
  3. Viewer Optionsダイアログで:
    1. Perspectiveチェックボックスのチェックをはずし、パースペクティブビューをオフにします。
    2. Axis Markersをクリックして、軸マーカーを無効にします。


      図 20.
  4. Closeをクリックして、ダイアログを閉じます。
  5. ツールバーでScalar Colormap Specificationアイコン をクリックします。
  6. Scalar Colormap Specificationダイアログで、Backgroundをクリックします。


    図 21.
  7. Background Colorダイアログで、白色を選択します。


    図 22.
  8. ダイアログを閉じます。
  9. アイコンをクリックして、輪郭表示をオフにします。
    モデルは以下のようになるはずです:


    図 23.

ビーム変位のアニメーションの可視化と保存

  1. をクリックしてBoundary Surfaceダイアログを開きます。
  2. アクティブな境界サーフェスの表示をオフにします。
  3. をクリックしてCoordinate Surfaceダイアログを開きます。
  4. 中央-Z座標平面で新しい座標サーフェスを作成します。
    作成される座標サーフェスは、z_negサーフェスとz-posサーフェス間の中央平面です。
  5. ColoringをScalarに設定します。
  6. Display TypeをSmoothに設定します。
  7. 表示するScalar Functionとしてx-velocityを選択します。
  8. Coord PlaneとしてZを選択します。
  9. Colormapタブで、Scalar Coloringをlocalに変更します。
  10. Defined Viewsで、表示方向として+Zを選択します。
    モデルは下の図のようになるはずです。表示されるビームの形状は、シミュレーション内の最後の時間ステップの終了時点の変形形状です。


    図 24.
  11. ダイアログを閉じます。
  12. Tools > Flipbook Build Modeをクリックします。
  13. OKをクリックしてFlipbook Size Warningダイアログを閉じます。
  14. Tools > Transient Dataをクリックします。
    Transient Data Controlsダイアログが開きます。


    図 25.
    このダイアログのSweep ControlにBuildではなくSweepが表示された場合は、Flipbook Buildモードがアクティブになっていません。Sweepモードでは、アニメーションを作成して可視化できますが、それを保存できません。アニメーションを保存するには、Flipbook Buildモードを有効にします。
  15. 時間ステップスライダーを左端の位置までドラッグします。または、Time StepまたはSolution Timeに対して0と入力します。
  16. Applyをクリックします。
    現在表示されている状態は、領域の初期状態に対応します。


    図 26.
  17. Buildをクリックします。
    AcuFieldView が、可能なすべての時間ステップを経過する解析のフレーム単位アニメーションを構築します。Building Flipbookダイアログで進捗を確認することができます。

要約

このチュートリアルでは、円筒の影響を受けて回転するビームの弾性体の運動を設定する基本的なワークフローに取り組みました。まず、チュートリアル圧電流体ハーベストpiezo_harvester_P-FSI.acsファイルから開始し、ビームと円筒の剛体回転に対応するよう設定を変更しました。ケースが設定された後、AcuSolveを使用して解を生成しました。時間に伴うビーム変位のアニメーションを作成できるよう、結果がAcuFieldViewでポスト処理されました。

このチュートリアルで紹介した新機能:
  • 回転用の剛体タイプのメッシュモーションの作成
  • 剛体回転を伴うP-FSIの実装