ACU-T:2200 SST遷移モデルを使用した翼上の遷移流

このチュートリアルでは、SST(Shear Stress Transport k-ω)乱流モデルと遷移モデル(GammaまたはGamma-ReTheta)を使用したS809翼上の遷移流のシミュレーションの設定、解析、および結果表示について説明します。AcuSolve を使用して、intermittencyを計算し、境界層が層流モードから乱流モードに遷移するポイントを予測します。このチュートリアルの目的は、遷移モデルとSST乱流モデルを組み合わせて使用するシミュレーションの実行に必要なモデリングの概念を紹介することです。

CFDシミュレーション内の基本的な手順はACU-T:2000 ミキシングエルボ内の乱流に示されており、外部の乱流を設定するための手順はACU-T:2100 SST乱流モデルを使用した翼上の乱流で示されています。このチュートリアルでは、AcuSolveの以下の追加機能を紹介します。
  • SST乱流モデルとGamma遷移モデルの使用
  • SST乱流モデルとGamma-ReTheta遷移モデルの使用
このチュートリアルでは、次の手順を実行します。
  • 問題の解析
  • AcuConsoleの起動とシミュレーションデータベースの作成
  • 一般的な問題パラメータの設定
  • 解法パラメータの設定
  • シミュレーション用の形状のインポート
  • ボリュームグループの作成とボリュームパラメータの適用
  • サーフェスグループの作成とボリュームパラメータの適用
  • グローバルメッシングパラメータとローカルメッシングパラメータの設定
  • メッシュ生成
  • AcuSolveの実行
  • AcuProbeによる解析のモニター
  • AcuFieldViewでの節点出力のポスト処理

前提条件

入門チュートリアルであるACU-T:2000 ミキシングエルボ内の乱流、およびACU-T:2100 SST乱流モデルを使用した翼上の乱流をすでに完了している必要があります。ここでは、AcuConsoleAcuSolve、およびAcuFieldViewをある程度使い慣れていることを前提としています。ライセンス供与済みバージョンのAcuSolveにアクセスできることも必要です。

このチュートリアルを実行する前に、AcuConsole_tutorial_inputs.zip<<Altair_installation_directory>\hwcfdsolvers\acusolve\win64\model_files\tutorials\AcuSolveから作業ディレクトリにコピーします。 s809_blunt.x_t をAcuConsole_tutorial_inputs.zipから取り出します。

このチュートリアルでモデリングウィンドウに表示されるオブジェクトの色と、ユーザーの画面に表示されるオブジェクトの色は異なる場合があります。AcuConsoleのデフォルト配色は“ランダム”であり、作成されたグループに色がランダムに割り当てられます。また、このチュートリアルはWindows上で作成されました。このチュートリアルを異なるオペレーティングシステムで実行する場合は、画面に表示されるイメージとこのチュートリアルで表示されるイメージが多少異なる可能性があります。

問題の解析

CFDシミュレーションにおける重要なステップは、工学的問題を調べ、AcuSolveに対して指定する必要のある重要なパラメータを決定することです。パラメータは、形状コンポーネント(ボリューム、入口、出口、壁など)に基づいて決定することができるとともに、流れの条件(流体プロパティ、速度、流れを乱流または層流のどちらでモデル化するのかなど)に基づいて決定することができます。

このチュートリアルで扱う問題は、図1に示しています。これは、S809翼プロファイルを通過して流れる空気を含む、円筒状の境界領域で構成されます。シミュレーションは、翼のスパン方向に押し出される要素の単一層のみを含めることにより、2次元問題として実行されます。領域の遠方場境界の速度ベクトルは、迎角が1度、レイノルズ数が250,000以下になるように指定されます。翼弦は1mで、シミュレーションには標準の空気材料プロパティが使用されます。


図 1. 流れ領域のS809翼

円筒状の領域の直径は、翼弦の500倍に設定されます。このように大きな境界ボリュームを選択することで、遠方場境界が翼から十分に遠い位置に配置され、解析の領域の閉塞による影響を回避できます。

シミュレーションは、乱流遷移モデルをアクティブにすることで実行されます。使用する基本の乱流モデルは2方程式のSST乱流モデルです。問題はAcuSolveで使用可能な遷移モデル(1方程式のGammaおよび2方程式のGamma-ReTheta遷移モデル)で解析されます。名前からわかるように、これらの遷移モデルは境界層が層流モードから乱流モードに遷移するポイントを予測します。乱流状態に入ったら、SST乱流モデルを使用して流体特性を決定します。

理論の概要

遷移と遷移モデル

現実の世界では、流体の流れの中に障害物が配置されている場合、層流と乱流が同時に存在します。層流状態から乱流状態への遷移流は、ターボ機械、車両、ドローン、風力タービンを含む多数の産業用途で見受けられます。

層流から乱流への遷移流は、自由流れの乱れレベル(垂直方向の撹乱)、音波(音響撹乱)、温度変動(エントロピー撹乱)、流れ方向の圧力勾配、サーフェスの粗さ、サーフェスの湾曲、振動など、さまざまな外部要因によって発生します。外部要因に応じたさまざまな遷移(不安定性)の発達メカニズムによって、流れが層流から乱流に移行します。ここでは、遷移の要因となる3つの主なメカニズムを説明します。
  1. 自然遷移:層流状態では、通常は粘性力によって攪乱が弱められます。ただし、自由流れの乱れレベルが低く(1%未満)、レイノルズ数が臨界レイノルズ数を上回っている場合、粘性力がせん断層を不安定にするため、3つの初期攪乱(波、渦、渦崩壊)の発達によって流れが乱流状態に遷移します。このメカニズムは自然遷移と呼ばれます。通常、自然遷移は非常に微小で、長距離に渡って非常にゆっくりと進行します。
  2. バイパス遷移:初期攪乱が大きい(サーフェスの粗さまたは自由流れの乱れレベルが1%を超える)場合、自然遷移で観察される3つの初期攪乱(T-S波、スパン方向の渦、渦崩壊)が発達しなくても乱流が生成されます。
  3. 剥離による遷移:層流に逆圧力勾配が発生する場合(翼の負圧面や球上の流れなど)、流体の流れは壁サーフェスから離れていきます。攪乱が小さい場合、自然遷移に見られる構造が剥離によって生成されることがあります。攪乱が大きくなるとKelvin-Helmholtz不安定が発生し、渦が巻き上がった後に崩れて乱流になります。剥離による遷移に関係するプロセスは、逆圧力勾配のサイズとその他の攪乱(障害物など)の存在によって異なります。
遷移は流れの発達、揚力、抗力、熱伝達などに影響するので、遷移現象を正しく予測することが重要です。従来の乱流モデルでは遷移流の壁せん断応力が過大に予測されることがわかっています。このため、境界層で流れが遷移し始めた時点で、遷移モデルを使用してCFD解析の精度を向上させることができます。

AcuSolveの遷移モデル

AcuSolve では、2つの遷移モデル(Gamma-ReThetaおよびGamma)と、Spalart-Allmaras(SA)およびShear Stress Transport(SST)乱流モデルを組み合わせて使用できるので、遷移モデリングの選択肢は合計で4つになります(SA-Gamma、SA-Gamma-ReTheta、SST-Gamma、SST-Gamma-ReTheta)。
  1. Gamma-ReTheta遷移モデル:Gamma-ReTheta( γ R e θ )モデルは相関性に基づくintermittencyモデルで、自然遷移、バイパス遷移、剥離による遷移のメカニズムを予測します。このモデルは、intermittency( γ )と遷移の運動量厚さのレイノルズ数( R e θ )に基づきます。intermittencyは流れ状態の測定値で、0(層流)~1(完全な乱流)の間で変化します。これは、乱流運動エネルギー方程式で乱流運動エネルギー生成をオンにするために使用されます。一方、遷移の運動量厚さのレイノルズ数は遷移の開始基準として使用されます。Gamma-ReThetaモデルは、自由流れの乱れが大きい場合や、流れの中に逆圧力勾配が存在している場合によく適しています。大部分の内部流れと一部の外部流れがこのカテゴリに属しています。
  2. Gamma遷移モデル:Gamma( γ )遷移モデルは1方程式の遷移モデルで、相関性を変更することでGalilean不変性に従います。Gamma遷移モデルは、自由流れの乱れが小さい外部空力ケースに適しています。

遷移モデルの使用ガイドライン

  1. メッシングのガイドライン
    1. 境界層メッシュは遷移の開始が起こるサーフェスに生成します。
    2. 境界層メッシュの最初の層高さは、y+ < 5に設定します。
    3. 境界層メッシュの延伸比は、1.1~1.2の範囲に設定します。
    4. 境界層メッシュと自由流れメッシュの間の遷移をスムーズにする必要があります。
    5. 流れ方向のサーフェスメッシュの間隔を小さくして、剥離泡を捉えられるようにする必要があります。
  2. 収束モニター
    1. 遷移シミュレーションのresidual ratioおよびsolution ratioが停滞することがあります(翼の前縁近くに気泡が形成された場合によく見られます)。
    2. residual ratioやsolution ratioに停滞が見られても、統合された翼上の力およびモーメントは満足のいくレベルに収束可能です。したがって、揚力、抗力、推力、力、トルクなどの数値を監視することを強く推奨します。

このチュートリアルの目的は、SST遷移モデルを使用してS809翼の安定した遷移シミュレーションを設定する手順を示すことにあります。全体の計算時間を5分以内に収めるため、上記のメッシングガイドラインの一部には従っていません。ただし、精度の高い結果が必要な場合には、上記のガイドラインに従って問題を解析する必要があります。

このチュートリアルは2つのパートで構成されています。最初のパートでは、Gamma遷移モデルを使用して、問題を設定し、解析を行います。Gammaモデルで問題を正しく実行した後、Gamma-ReTheta遷移モデルを使用するようにデータベースの設定を変更し、もう一度解を生成します。

解析パラメータの定義

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

このチュートリアルでは、まずデータベースの作成、形状に依存しない設定の入力、形状の読み込み、ボリュームグループとサーフェスグループの作成、グループ属性の設定、グループへの形状コンポーネントの追加、およびグループへのメッシュコントロールと境界条件の割り当てを行います。次に、メッシュを生成して、AcuSolveを実行し、指定された時間ステップの数だけ解析します。最後に、AcuFieldViewを使用して一部の特性を確認します。

次の手順では、AcuConsoleを起動して、シミュレーション設定を保存するためのデータベースを作成します。

  1. Windows のスタートメニューからスタート > Altair <バージョン> > AcuConsoleをクリックして AcuConsoleを起動します。
  2. Fileメニューをクリックし、Newをクリックし、New data baseダイアログを開きます。
    注: ツールバーの をクリックしてNew data baseダイアログを開くこともできます。
  3. 作業ディレクトリとして使用する場所に移動します。
    このディレクトリには、そのシミュレーションに関するすべてのファイルが保存されます。AcuConsoleのデータベースファイル(.acs)はこのディレクトリに保存されます。メッシュと解が作成されたら、追加のファイルとディレクトリがこのディレクトリ内に作成されます。
  4. SST_Transition_Modelsという名前の新規フォルダを作成し、このフォルダを開きます。
  5. データベースのFile nameとしてsst_transitionと入力します。
    注: AcuConsoleによって書き込まれたファイルを他のアプリケーションで読み取り可能にするためには、データベースのパスと名前にスペースが含まれないようにしてください。
  6. データベースを保存して設定のバックアップを作成します。

Variable Managerを使用した式と変数の定義

この手順では、AcuConsoleVariable Managerを使用して、モデルの設定プロセスで使用する式のリストを作成します。

  1. メインツールバーで、Variable Listアイコンをクリックします。


    図 2.

    Variable Managerが開きます。

  2. Variable Managerで新しい変数を作成するには、Addをクリックします。
    Variable Managerで新規に変数を作成するには、Addをクリックし、適切な入力を表の列に入力します。表の列は、変数の名前、変数を定義する式、現在の値および式の説明を表します。
  3. Nameに、Uinfと入力します。
  4. Expressionに、4.0と入力します。
  5. Descriptionに、Free Stream Velocity of Airと入力します。
  6. 下の表に示されている残りの変数に対して、このプロセスを繰り返します。
    名前 Expression 説明
    Uinf 4.0 Free Stream Velocity of Air
    alpha 1.0 Angle of attack (degrees)
    xVelocity :=Uinf * cos(alpha*deg) X component of velocity
    yVelocity :=Uinf * sin(alpha*deg) Y component of velocity
    式が入力されると、Variable Managerは下の図のように表示されます。


    図 3.
  7. この時点ですべての変数と式が定義されているので、Closeを選択してVariable Managerを閉じることができます。

一般的なシミュレーションパラメータの設定

次の手順では、シミュレーション全体に適用されるパラメータを設定します。単純にするため、Data Tree Manager内のBASフィルタを使用して、任意のシミュレーションに適用できる基本的な設定をフィルタできます。このフィルタにより、データツリー内の使用可能な項目の小さなサブセットのみを表示できるようになり、エントリの移動が容易になります。

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


    図 4.
  2. GlobalData Tree項目をダブルクリックして拡張表示します。
  3. Problem DescriptionをダブルクリックしてProblem Description詳細パネルを開きます。
  4. このケースでは、TitleとしてS809 Airfoilと入力します。
  5. このケースでは、Sub titleとしてSST Transitionと入力します。
  6. Analysis typeがSteady Stateに設定されていることを確認します。
  7. Turbulence equationをLaminarからSSTに変更します。
  8. Turbulence transition modelを、NoneからGammaに変更します。


    図 5.

解法パラメータの設定

  1. Auto Solution StrategyをダブルクリックしてAuto Solution Strategy詳細パネルを開きます。
  2. Analysis typeがSteady Stateに設定されていることを確認します。
  3. Max time stepsを100に設定します。
  4. Convergence toleranceを0.0001に設定します。
  5. Relaxation factorに0.5と入力します。
  6. TurbulenceとTurbulence transitionのフラグの両方がOnに設定されていることを確認します。


    図 6.

材料モデルパラメータの設定

AcuConsole には、Air、Aluminium、Waterという、標準のパラメータが定義されている3つの事前定義済みの標準材料が用意されています。次の手順では、事前定義された“Air”モデルの材料特性が、この問題において目的のプロパティと一致することを確認し、必要に応じて変更します。

  1. Data TreeMaterial Modelをダブルクリックして拡張表示します。


    図 7.
  2. Data TreeAirをダブルクリックしてAir詳細パネルを開きます。
    Airの材料タイプはFluidです。AcuConsoleで作成されるすべての新しい材料に対して、Fluidがデフォルトの材料タイプとなります。
  3. Densityタブで、以下を確認します。
    1. TypeがConstantに設定されていること。
    2. Densityの値が1.225 kg/m3に設定されていること。
  4. Viscosityタブをクリックします。
    空気の粘性は1.781 x 10-5 kg/m - secです。

残りの熱およびその他の材料プロパティは、このシミュレーションでは重要ではありません。ただし、ざっと目を通して、材料の仕様全体を確認します。

  1. データベースを保存して設定のバックアップを作成します。これは、次のいずれかの方法で実行できます。
    • Fileメニューをクリックして、Saveをクリックします。
    • ツールバーの をクリックします。
    • Ctrlキーを押しながらSを押します。
    注: AcuConsoleで加えられた変更は、直ちにデータベースファイル(.acs)に保存されます。保存操作を実行すると、データベースがバックアップファイルにコピーされます。今後の変更内容を利用することを希望しない場合は、このバックアップファイルを使用して、その保存済み状態からデータベースを再読み込みすることができます。

形状のインポートとモデルの定義

翼の形状のインポート

このチュートリアルの次のパートでは、形状をインポートします。この手順を完了するには、 s809_blunt.x_t の場所がわかっている必要があります。このファイルには、ParasolidASCII形式で形状に関する情報が含まれています。
  1. File > Importをクリックします。
  2. s809_blunt.x_tを含むディレクトリを参照します。
  3. ファイル名のフィルタをParasolid File (*.x_t *.xmt *X_T …)に変更します。
  4. s809_blunt.x_tを選択し、OpenをクリックしてImport Geometryダイアログを開きます。


    図 8.

    このチュートリアルでは、Import Geometryダイアログのデフォルト値を使用して形状を読み込みます。AcuConsoleを使用していた場合は、自身が変更した可能性のある設定を手動で変更して、図に示すデフォルト値と一致させてください。デフォルト設定を使用した場合は、CADモデルのボリュームはデフォルトのボリュームグループに追加されます。CADモデルのサーフェスはデフォルトのサーフェスグループに追加されます。このチュートリアルでは後ほどグループを操作して、新しいグループの作成、流れパラメータの設定、形状コンポーネントの追加、およびメッシングパラメータの設定を行います。

  5. OKをクリックして形状のインポートを完了します。
  6. 表示の回転やズームを行ってモデル全体を確認します。


    図 9.

ボリュームパラメータの適用

ボリュームグループは、ボリューム領域に関する情報を保存するためのコンテナです。この情報には、ボリュームに適用される解析およびメッシングパラメータや、それらの設定が適用される形状領域が含まれます。

新しい形状をインポートするときに、デフォルトでは、形状のすべてのボリュームがAcuConsoleによって“default”という名前の1つのボリュームコンテナに配置されます。これは、最後のステップで正常にモデルをインポートすると、データツリーのModel > Volumes > defaultの下で確認できるはずです。

このチュートリアルのモデルには1つのボリュームしか含まれていないため、それが、形状のインポート時のデフォルトボリュームグループ内の唯一のボリュームになります。モデル内に1つのボリュームしか存在しない場合でも、今後の識別が容易になるようボリューム名を変更することをお勧めします。次の手順では、デフォルトボリュームグループコンテナの名前を変更し、その材料とその他のプロパティを設定します。

  1. Data Tree ManagerGlobalを最小化し、 をクリックすることでModelツリー項目を拡張表示します。
  2. Surfacesを右クリックしてDisplay offを選択し、サーフェスの表示をオフにします。
  3. Volumesツリー項目を拡張表示します。
  4. ボリューム名の横にある をクリックして、デフォルトボリュームコンテナの表示のオン / オフを切り替えます。
    注: Surfacesが表示されている場合は、サーフェスとボリュームが重なっている可能性があるため、表示を切り替えても何も変わらないことがあります。
  5. デフォルトボリュームグループの名前をFluidに変更します。
    1. defaultを右クリックします。
    2. コンテキストメニューからRenameをクリックします。
    3. 新しい名前としてFluidと入力し、Enterをクリックします。
      注: Data Tree内の項目の名前を変更した場合、Enterキーを押すまでは変更内容は保存されません。Enterキーを押さずに入力フォーカスをその項目から移動すると、変更内容は失われます。
  6. fluidボリューム要素セットを設定します。
    1. ツリー内でFluidボリュームグループを拡張表示します。
    2. fluidの下でElement Setをダブルクリックし、詳細パネルでこれを開きます。
    3. ボリュームMediumがFluidに設定されていることを確認します。設定されていない場合は、Mediumの横にあるドロップダウンセレクターをクリックして、Fluidを選択します。
      注: AcuConsoleでのボリュームのMediumのデフォルトはFluidです。
    4. Materialモデルの横にあるドロップダウンセレクターをクリックして、Airを選択します。


    図 10.

サーフェスグループの作成

サーフェスグループは、サーフェスに関する情報を保存するためのコンテナです。この情報には、解析およびメッシングパラメータや、パラメータが適用される形状内の対応するサーフェスが含まれます。

次の手順では、サーフェスグループを定義して、問題内の各グループに適切な属性を割り当てて、これらのグループにサーフェスを追加します。

シミュレーションの設定プロセスでは、(特に、サーフェスが非常に多いモデルの場合)複雑になりがちな境界条件やメッシュパラメータなどを設定するため、別のパネルに移動する必要があります。これを簡単にして、エラーを減らし、時間を節約するために、AcuConsoleでは2つの新しいダイアログが追加されています。これらのダイアログを使用すれば、すべてのサーフェスまたはボリュームエンティティに関する情報を一度に確認したり、指定することができます。これらのダイアログはVolume ManagerとSurface Managerです。ここでは、Surface Managerのいくつかの機能を利用します。

  1. Volumesを右クリックしてDisplay offを選択し、ボリュームの表示をオフにします。
  2. Surfacesを右クリックして、Surface Managerを選択します。
  3. Surface Managerダイアログで、Newを3回クリックし、3つの新しいサーフェスグループを作成します。
  4. デフォルトサーフェス以外のすべてのサーフェスの表示をオフにします。
  5. Surface 1のSurface Names(列1)の名前をSurface 3に変更して、下の表のように、Simple BC Active列とSimple BC Type列を設定します。


    図 11.
  6. サーフェスをz_posおよびz_negサーフェスグループに割り当てます。
    1. z-pos行で、Add toをクリックします。
    2. 下の図に示すように、z座標が最大の平面を選択し、Doneをクリックします。
    3. 同様に、z座標が最小のサーフェスをz_negサーフェスグループに割り当てます。


      図 12.
  7. 領域の外側の周囲のサーフェスをfarfieldサーフェスグループに割り当てます。次の図を参考にして必要なサーフェスを選択します。


    図 13.

    形状がAcuConsoleに読み込まれたときに、すべての形状サーフェスはデフォルトサーフェスグループコンテナに配置されました。このデフォルトサーフェスグループの名前はairfoilに変更されました。前の手順では、いくつかのサーフェスを自分で作成した他のさまざまなサーフェスグループに割り当てました。この時点で、airfoilサーフェスグループに残っているのは、翼を構成するサーフェスのみです。

  8. Surface Managerダイアログを閉じます。

サーフェスパラメータの割り当て

  1. 翼のサーフェスパラメータを設定します。
    1. Data TreeのSurfacesの下で、airfoilサーフェスグループを拡張表示します。
    2. Simple Boundary Conditionをダブルクリックして詳細パネルを開きます。
    3. TypeがWallに設定されていることを確認します。
  2. z_posおよびz_negサーフェスパラメータを設定します。
    1. Data TreeのSurfacesの下で、z_posサーフェスグループを拡張表示します。
    2. Simple Boundary Conditionをダブルクリックして詳細パネルを開きます。
    3. TypeがSymmetryに設定されていることを確認します。
    4. 同様に、z_negのSimple Boundary Condition typeもSymmetryに設定されていることを確認します。
  3. 遠方場のサーフェスパラメータを設定します。
    1. Data TreeのSurfacesの下で、farfieldサーフェスグループを拡張表示します。
    2. Simple Boundary Conditionをダブルクリックして詳細パネルを開きます。
    3. TypeがFar Fieldに設定されていることを確認します。
      Far field境界条件を使用する場合には、流速のベクトル方向を入力する必要があります。この方向に基づいて、AcuSolveは、各要素フェイスが入口または出口のどちらとして機能するのかを決定します。この方向ベクトルを、各要素の外向きの法線と組み合わせて使用することで、モデルのフェイスに適切な境界条件が適用されます。流れがモデルに入ってくるフェイスでは、速度および乱流の変数に関する境界条件が割り当てられます。流れがモデルから出ていくフェイスでは、圧力に関する要素境界条件(つまり流出条件)が割り当てられます。

      このシミュレーションの迎角の変更を容易にするために、以前に定義した変数を使用して、遠方場境界の入口速度ベクトルを設定します。次の入力を使用して、値を設定します。

    4. X Velocityに、:=xVelocityと入力します。
    5. Y Velocityに、:=yVelocityと入力します。
    6. Turbulence input typeをAutoに設定します。
    7. Turbulence input typeをAutoに設定します。


    図 14.

    Percent turbulence intensityが0.5に設定されているのを確認できます。この値は、乱流モデルのFlow typeなどのパラメータをもとにAcuConsoleによって自動的に選択されます

初期状態の設定

  1. Data TreeのGlobalの下で、Nodal Initial Conditionをダブルクリックして、詳細パネルでダイアログを開きます。
  2. X velocityを:=xVelocityに設定します。
  3. Y velocityを:=yVelocityに設定します。
    これにより、X velocityとY velocityがVariable Managerで指定した値と等しくなります。
  4. このパネルのすべてのinitial condition typeがConstantに設定されていることを確認します。

SST乱流モデルでは、Kinetic energyとEddy frequencyの初期値を設定する必要があります。Gamma遷移モデルでは、Intermittencyの初期値または、 γ を設定する必要があります。これらの値の合理的な推定値がわかっている場合は、初期設定欄にそれらの値を直接入力できます。1つのオプションとして、入口境界で割り当てられたものと同じ値を使用する方法もあります。初期状態に適した推定値がない場合は、AcuSolveによって乱流と遷移の変数の自動初期化を実行することも可能です。これらの値をゼロに設定すると、AcuSolveがこれらの変数の自動初期化を開始します。

  1. 自動初期化を開始するには、Kinetic energy、Eddy frequency、およびIntermittencyを0.0に設定します。


    図 15.
  2. データベースを保存して設定のバックアップを作成します。

メッシュコントロールの割り当て

グローバルメッシュパラメータの設定

問題全体に対して流体特性を設定したので、十分に細分化されたメッシュを生成する必要があります。

グローバルメッシュ属性は、特定の形状ボリューム、サーフェス、エッジ、およびポイントに参照されるのではなく、モデル全体に適用されるメッシングパラメータです。モデルの特定の形状コンポーネントのメッシュ生成コントロールを作成するには、ローカルメッシュ属性を使用します。

次の手順では、グローバルメッシュ属性を設定します。

  1. データツリーマネージャーMSHをクリックして、Data Tree内の設定をフィルタ処理して、メッシングに関するコントロールのみを表示します。
  2. GlobalData Tree項目をダブルクリックして拡張表示します。
  3. Global Mesh AttributesをダブルクリックしてGlobal Mesh Attributes詳細パネルを開きます。
  4. Mesh size typeをAbsoluteに変更します。
    1. Mesh size typeの横にあるドロップダウンコントロールをクリックします。
    2. Absoluteをクリックします。
  5. Absolute mesh sizeを200.0 mに設定します。
  6. Mesh growth rateを1.4に設定します。
  7. Set Maximum sweep angleを5.0度に設定します。


    図 16.

メッシュプロセスパラメータの設定

このシミュレーションでは、メッシャーにより境界層の積み重ねの高さが局所的に減少しますが、層の総数は一定に保たれます。このアプローチを使用して、積み重ねの合計高さが減少するよう各層の高さを一定の係数によってスケーリングし、品質の低い境界層要素の作成を回避します。

  1. Global Treeの下で、Mesh Process Attributesをダブルクリックします。
  2. Shrink mixed flagをOnに設定します。
  3. 2D Boundary layer adjacent height smoothing ratioを0.25に設定します。
    このパラメータは、品質の低い要素を解像するために層の高さを局所的に調整した後、局所的な境界層の高さを隣接する要素との間でいかに滑らかに変化させるかを制御します。このパラメータの値が低いと、高さの変化が長い距離に渡って滑らかになり、値が1.0に近づくと、高さの変化が急激になります。この設定には、2次元と3次元の境界層で別々の値が存在します。このアプリケーションでは、2Dメッシュを作成し、それを3つ目の方向に押し出して、ボリュームを作成します。このため、この場合は、2D設定によってメッシュの挙動が制御されます。


    図 17.

サーフェスメッシュパラメータの設定

サーフェスメッシュ属性は、モデル内の特定のサーフェスに適用されます。これは、1つまたは複数の特定のサーフェスのためのメッシュコントロールの作成に使用される、ローカルメッシングパラメータの一種です。

サーフェスメッシュ属性などのローカルメッシュ属性は必ずしも設定する必要ありません。あるコンポーネント用のローカルメッシュ属性が見つからなかった場合は、グローバル属性がそのコンポーネントのメッシュ生成コントロールとして使用されます。ローカルメッシュ属性が存在する場合は、グローバル設定より優先されます。

次の手順では、サーフェスメッシング属性を設定します。

  1. ModelSurfaces、さらにAirfoilを拡張表示します。
  2. Surface Mesh Attributesをダブルクリックして詳細パネルを開きます。
  3. Surface Mesh Attributesチェックボックスをオンにして、アクティブにします。
    詳細パネルにより多くのオプションが表示されます。
  4. Mesh size typeをAbsoluteに設定します。
  5. Absolute mesh sizeに0.01mと入力します。
  6. Region of influence parametersをOnに設定します。
    サーフェスからの影響領域に関するメッシュコントロールが表示されます。

    影響領域は、サーフェスからの距離に基づいて、サーフェスとサーフェスを囲んでいるボリュームメッシュのサイズと成長率を制御可能なサイズコントロールです。

  7. 次のように影響パラメータを設定します。
    1. Influence type:Simple
    2. Influence size factor:2.0
    3. Influence distance:0.1
  8. Boundary layer flagをOnに設定します。
    境界層メッシングに関係するメッシュコントロールが表示されます。
  9. Boundary layer typeをFull Controlに設定します。
  10. Resolveで、Number of Layersを選択します。
  11. 残りのパラメータを次のように設定します。
    1. First element height:0.0004
    2. Total layer height:0.04
    3. Growth rate:1.2
    4. Boundary layer elements type:Tetrahedron


    図 18.

エッジメッシュパラメータの設定

翼のサーフェスに最適なメッシュを作成するには、翼の2.前縁と後縁付近を細かく細分化し、翼弦の中央部分では要素サイズを大きくする必要があります。このサーフェスメッシュサイズは、影響領域の細分化のためのボリュームに伝播するサイズとして提供されるように一定に設定されているので、ユーザーはエッジメッシュ属性を使用して、翼のサーフェスに沿って節点の配置を制御します。これを実行するには、まず、翼の外周エッジを含むエッジグループを作成する必要があります。

  1. Edges > Newを右クリックすることで、新しいエッジを追加します。
    データツリーのEdgesの下に、新しいエントリEdge 1が作成されます。
  2. Edge 1の名前をPerimeter Edgesに変更します。
  3. 翼の2つの外周エッジを選択して、このグループに追加します。
    1. Perimeter Edgesを右クリックして、Add toをクリックします。
    2. 下に示すように、翼の2つの外周エッジを選択します。
    3. Doneをクリックします。


      図 19.
  4. Edge Mesh Attributesをアクティブにして、ダブルクリックします。
  5. Mesh size typeをAbsolute Expressionに設定します。
  6. Absolute mesh size expressionをクリックして、メッシュサイズの式を記述できるテキストエディタを開きます。
    この式はメッシュエンジンによって評価され、エッジセット内のエッジ上の各位置で使用するローカルメッシュサイズが決定されます。
  7. テキスト領域エディタに次の式を入力します。
    sizeMin = 0.002
    sizeMax = 0.05
    
    xMin = (0.0)
    xMax = (1.0)
    
    xCenter = ((xMin+xMax)/2.0)
    dx = ((xMax-xMin)/2.0)
    
    fac = ((dx - abs( x-xCenter) )/dx )
    
    power = (ln( sizeMax/sizeMin))
    expVal = sizeMin*exp(power*fac)
    
    linVal = sizeMin+(sizeMax-sizeMin)*fac
    
    value = expVal

    この式はサーフェスメッシュサイズの最小値と最大値(sizeMinとsizeMax)、および前縁と後縁の位置(xMinとxMax)を取り、前縁と後縁からの距離の関数として、サーフェスメッシュサイズの対数拡大を計算します。前縁と後縁のメッシュサイズはsizeMinに対応し、翼弦の中央位置のサイズはsizeMaxに対応します。

  8. Okを選択して、このテキストエディタ領域を閉じ、式を受け入れます。

メッシュ押し出しの定義

このシミュレーションは、モデルの2D断面の表現と等価です。AcuSolveでは、断面のフェイス全体で1つの要素のみで2Dモデルがシミュレートされます。つまり、これらのフェイスを同様の境界条件を使用して設定すると、フェイス全体の対応する節点で同じ結果が得られます。この問題では、これらのフェイスは負および正のzサーフェスです。この種のメッシュは、AcuSolveのメッシュ押し出しプロセスで実現されます。次の手順では、これらのサーフェス間のメッシュの押し出しプロセスを定義します。

  1. Mesh Extrusionsを右クリックし、Newを選択します。
  2. Mesh Extrusion 1を右クリックしてRenameを選択し、Z extrusionと入力します。
  3. z extrusionをダブルクリックして、設定ダイアログを開きます。
  4. Geometry typeがsurfaceに設定されていることを確認します。
  5. Side 1に対して、ドロップダウンメニューからz_negを選択します。
  6. Side 2に対して、ドロップダウンメニューからz_posを選択します。
  7. Extrusion typeがNumber of layersに設定されていることを確認します。
  8. Number of layersを1に設定します。
  9. Extrusion optionsで、All tetsを選択します。
  10. OKをクリックして、これらの設定を受け入れます。


    図 20.

メッシュの生成

次の手順では、問題の解を計算する際に使用されるメッシュを生成します。

  1. ツールバーの をクリックしてLaunch AcuMeshSimダイアログを開きます。
  2. デフォルト設定のままで、OKを選択します。

    メッシング時に、AcuTailウィンドウが開きます。メッシングの進行状況はこのウィンドウで報告されます。メッシングプロセスのサマリーで、メッシュが生成されたことが示されます。



    図 21.
    注: 節点と要素の実際の数およびメモリ使用量は、マシンによって少し異なる場合があります。
  3. モデリングウィンドウにメッシュを表示します。サーフェスの表示をオンにして、display typeをsolid and wireに設定します。
  4. モデル内で回転やズームを行うことにより、さまざまなメッシュ領域を解析することができます。


    図 22.

解の計算と結果の確認

AcuSolveの実行

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

  1. ツールバーでをクリックしてLaunch AcuSolveダイアログを開きます。
    このケースでは、デフォルトの設定を使用します。AcuSolveは4つのプロセッサを使用して(可能な場合は、さらに多くのプロセッサを指定できる)実行され、AcuConsoleAcuSolve入力ファイルを生成して、AcuSolveを起動します。AcuSolve は、この問題の定常状態解を計算します。
  2. Okを選択して解析プロセスを開始します。

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

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



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

AcuProbeでのポスト処理

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

  1. ツールバーの アイコンをクリックして、AcuProbeを開きます。
  2. Residual Ratioをダブルクリックして、ツリーを拡張表示します。
  3. Final を右クリックし、Plot Allをクリックします。
    これにより、すべての変数(圧力、速度、渦粘性、およびintermittency)の残差がプロット領域にプロットされます。
    注: プロットを正しく表示するために、ツールバーで をクリックする必要がある場合があります。


    図 24.
  4. Final を右クリックし、Plot Noneをクリックします。
  5. Surface Output > airfoil > Forces and Momentsを拡張表示します。
  6. x-tractionを右クリックし、Plotを選択してからy-traction を右クリックし、Plotを選択します。
    注: プロットを正しく表示するために、ツールバーで をクリックする必要がある場合があります。


    図 25.

    翼サーフェスのTraction値はほぼ収束しています。相関性に基づく遷移モデルを使用する場合は常に、解を受け入れる前に、残差だけでなく、収束の対象となる実際の解の数量も調査することをお勧めします。その他の場合では、残差がわずかに振動していても、流れ場が収束している可能性もあります。したがって、ユーザーは解の妥当性について十分な情報に基づく決定を下すには、あらかじめこの両方を並行して確認する必要があります。

  7. プロットを画像として保存することもできます。
    1. AcuProbeダイアログで、File > Saveをクリックします。
    2. 画像の名前を入力して、Saveをクリックします。

AcuFieldViewでのポスト処理

本チュートリアルは、AcuFieldViewのインターフェースと基本的な操作に慣れていることが前提となっています。本チュートリアルは、一般に次の基本事項の理解に役立ちます:
  • Fileメニューでデータリーダーを検索し、データ入力のための目的のリーダーパネルを開く方法。
  • AcuFieldViewにおいてサイドツールバーまたはVisualizationパネルメニューから表示パネルを検索し、でサーフェスを作成および変更する方法。
  • マウスアクションを使用してグラフィックスウィンドウでデータを動かし、データの移動、回転、およびズームを行う方法。
このチュートリアルでは、定常状態解析データの操作方法を示します。
  1. AcuConsoleツールバーで をクリックしてLaunch AcuFieldViewダイアログを開きます。
  2. OkをクリックしてAcuConsoleを起動します。
    圧力コンターがメッシュを含むすべての境界サーフェス上に表示されていることが確認できます。


    図 26.

AcuFieldViewの設定

  1. Viewer Optionsをクリックします。


    図 27.
  2. Viewer Optionsダイアログで:
    1. Perspectiveを選択解除して、遠近法表示をオフにします。
    2. Axis Markersをクリックして、 軸マーカーを無効にします。
    3. Closeをクリックします。
  3. ツールバーで、Colormapアイコン をクリックします。
  4. Scalar Colormap SpecificationダイアログでBackgroundをクリックし、Whiteを選択します。
  5. Scalar Colormap Specificationダイアログを閉じます。
  6. ツールバーでToggle Outlineアイコン をクリックし、輪郭表示をオフにします。
    表示は図2のようになるはずです。


    図 28.

中央座標サーフェス上の乱流粘性を示すサーフェスの調整

  1. Boundary SurfaceダイアログのSurfaceタブで、アクティブな境界サーフェスのVisibilityをオフにします。
  2. をクリックしてCoordinate Surfaceダイアログを開きます。
  3. Createをクリックして、新しい座標サーフェスを作成します。
  4. Coordinate PlaneとしてZを選択します。
    これにより、中央-Z座標平面に座標サーフェスが作成されます。作成される座標サーフェスは、モデル内の2つの側面間の中央平面です。
  5. ColoringをScalarに変更します。
  6. Display TypeをSmoothに変更します。
  7. Scalar Functionに対して、kinetic_energyを選択します。
  8. Coordinate Surfaceダイアログを閉じます。
  9. Defined Viewsメニューで、表示方向として+Zを選択します。
    ビューが図1のようになるはずです。


    図 29.

    翼弦の中ほどで乱流が発達するのがはっきりと確認できます。乱流が始まる前の翼サーフェスの境界層は層流です。

  10. Coordinate Surfaceダイアログを開き、Scalar Functionの横のSelectをクリックして、Intermittencyを選択します。


    図 30.

    intermittencyのコンタープロットを詳しく見ると、流れが層流から乱流に遷移する地点で、intermittencyの値が1に遷移していることがわかります。流れが層流の領域では、翼の最先端から半分までは、intermittencyがゼロになっています。

流れ係数計算のためのポスト処理

AcuSolveは、ソルバーを使用して解析する問題のプリ処理およびポスト処理を容易にするさまざまなユーティリティスクリプトとともに配布されています。ここでは、AcuLiftDragとAcuGetCpCfの2つのスクリプトとそれらの使用方法について説明します。これら2つのスクリプトは、このチュートリアルで解析するような空力シミュレーションに特化しています。

AcuLiftDragの実行

AcuLiftDragは、翼の揚力係数および抗力係数の計算に使用されるユーティリティスクリプトです。このスクリプトを実行するには、入力として次のオプションを指定する必要があります。

オプション名 説明
-pb 問題名
-dir 作業ディレクトリ。デフォルトの作業ディレクトリはACUSIM.DIRです。問題の解析ファイルはすべてここに格納されます。
-run 実行番号(0の場合、最後の番号を使用)
-osis すべての力の計算に使用するサーフェス出力のコンマ区切りリスト
-angle_of_attack / aoa 翼の迎角(度)
-reference_velocity / ref_vel 基準速度
-wing_chord / chord 翼弦
-wing_span / span 翼のスパン
-density / rho 空気密度
-drag_direction / drag_dir 迎角ゼロでの抗力方向: x、y、z。デフォルトの抗力方向はxです。
-lift_direction / lift_dir 迎角での揚力方向: x、y、z。デフォルトの揚力方向はyです。
-x_axis_vars / x_vars エクスポートされるデータのx軸変数: step、time、both。デフォルトはstepです。

問題の解析の項では、シミュレーションは翼のスパン方向に押し出される要素の単一層のみを含めることにより、2Dとして実行されると説明されています。そのように問題を解析する場合は、翼のスパンは押し出し方向の領域の厚さに等しくなるように設定する必要があります。3Dの問題を解析する場合は、実際の翼のスパンを使用する必要があります。

この位置についてAcuLiftDragスクリプトを実行するには、次の手順に従います:

  1. Start > All Programs > Altair HyperWorks <version> > AcuSolve > AcuSolve Cmd Promptの順にクリックして、StartメニューからAcuSolve コマンドプロンプトを起動します。
  2. ‘cd’コマンドを使用して、ディレクトリを現在の問題のディレクトリに変更します。
  3. プロンプトに以下のコマンドを入力します:
    acuLiftDrag -osis airfoil -aoa 1 -ref_vel 4 -chord 1 -rho 1.225 
    -span 50  
    
    コマンドの出力は下の画像のようになります:


    図 31.

    C_lの値は揚力係数に対応し、C_dの値は抗力係数に対応します。最終的なキーワードは、シミュレーションの最後の時間ステップでのそれぞれの係数値を表します。残りの値は、シミュレーションのすべての時間ステップにおけるこれらの係数の基本統計を表します。これらの統計は、シミュレーションが過渡的である場合、より有意義なものとなります。

    このスクリプトは、問題のディレクトリにTurbulent_Airfoil_SST.liftDrag.datというファイルも作成します。このファイルには、特定の表形式で、可能なすべての時間ステップの揚力および抗力データが含まれています。1列目が時間ステップ、2列目が揚力係数、3列目が抗力係数です。

AcuGetCpCfの実行

AcuGetCpCfはもう1つのユーティリティスクリプトで、翼の圧力係数(Cp)の計算に使用されます。このスクリプトを実行するには、入力として次のオプションを指定する必要があります。

オプション名 説明
-pb 問題名
-dir 作業ディレクトリ。デフォルトの作業ディレクトリはACUSIM.DIRです。問題の解析ファイルはすべてここに格納されます。
-run 実行番号(0の場合、最後の番号を使用)
-ts 抽出する時間ステップ(0の場合、最後の時間ステップを使用)
-osis すべての力の計算に使用するサーフェス出力のコンマ区切りリスト
-type 生成するデータのタイプ: cp、cf
-point_type カーブのポイントの生成に使用する方法: file、auto
-points_file / pts ポイントを読み出すファイルのコンマ区切りリスト(type=fileの場合に使用)
-radial_locations / rad_locs 放射状の位置のリスト
-z_direction / z_dir iso-cutの方向: x、y、z。デフォルトはzです。
-reference_pressure / ref_pres 基準圧力
-density / rho 空気密度
-reference_velocity / ref_vel 基準速度
-wing_chord / chord 翼弦
-normalize_chord / nc ローカルな翼弦を1に正規化。デフォルトはTrueです。
-chord_scale_fac / csf 翼弦のスケールファクター
-cp_scale_fac / cpsf c_p / c_fスケールファクター
-pressure_type / ptype 使用する圧力場: standard、time_ave、running_ave。デフォルトはstandardです。

この問題に対してAcuGetCpCfスクリプトを実行するには、次の手順に従います:

  1. Start > All Programs > Altair HyperWorks <version> > AcuSolve > AcuSolve Cmd Promptの順にクリックして、StartメニューからAcuSolve コマンドプロンプトを起動します。
  2. ‘cd’コマンドを使用して、ディレクトリを現在の問題のディレクトリに変更します。
  3. プロンプトに以下のコマンドを入力します:
    acuGetCpCf -osis airfoil -type cp -ref_vel 4 -rho 
    1.225 -no_nc

    コマンドの出力は下の画像のようになります:



    図 32.

    このスクリプトは、圧力係数の最小値と最大値を出力します。このスクリプトは、問題のディレクトリにcp.1.datというファイルも作成します。このファイルには、翼弦に沿った圧力係数データが含まれます。1列目は翼弦に沿ったx座標、2列目は圧力係数です。データのプロットには、外部のプロットユーティリティを使用できます。プロット結果を以下に示します。



    図 33.

Gamma-ReTheta遷移モデルの設定

この段階で、Gamma遷移モデルとSST乱流モデルによってS809翼の問題の設定と実行が正しく完了しています。チュートリアルのこの部分では、Gamma-ReTheta遷移モデルを使用するために、開いているデータベースを変更して問題を設定します。

  1. 開いているAcuFieldViewウィンドウを閉じて、開いているAcuConsoleウィンドウに戻ります。
  2. データベースを保存して、Gamma遷移モデルの設定を保持します。
  3. 既存の作業ディレクトリ内またはその他の場所を選択して、新しいディレクトリを作成し、SST_Gamma_ReThetaという名前を付けます。
  4. File > Save Asをクリックします。
  5. SST_Gamma_Re_Thetaディレクトリに移動します。データベースのFile nameとしてsst_transition_gammarethetaと入力するか、好きな名前を選択します。
  6. データベースを保存して設定のバックアップを作成します。

一般的なシミュレーションパラメータの更新

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


    図 34.
  2. GlobalData Tree項目をダブルクリックして拡張表示します。
  3. Problem DescriptionをダブルクリックしてProblem Description詳細パネルを開きます。
  4. このケースでは、新しいSub titleとしてSST Transition Gamma ReThetaと入力します。
  5. Turbulence transition modelを、GammaからGamma-ReThetaに変更します。


    図 35.

初期状態の更新

Gamma-ReTheta遷移モデルは2方程式モデルで、新しい変数である遷移ReThetaまたは R e θ t 。他の変数と同じように、この変数も初期値を指定する必要があります。ゼロに設定することで、AcuSolveによって R e θ t の自動初期化が開始されます。

  1. データツリーNodal Initial Conditionをダブルクリックして、詳細パネルを開きます。
  2. 自動初期化を開始するには、Transition re thetaを0.0に設定します。


    図 36.

    設定の残りを変更する必要はありません。これで、AcuSolveを起動して、Gamma-ReTheta遷移ケースでのS809翼の問題の解を取得できるようになりました。以前のケースと同じ手順に従って、結果のポスト処理を行います。



    図 37.








    Gamma-Re ThetaデータベースでAcuLiftDragとAcuGetCpCfを実行した結果を以下に示します。



    図 38.


    図 39.


    図 40.

要約

このAcuSolveチュートリアル、では、乱流遷移問題を正しく設定し、解析しました。採用した基本の乱流モデルはSSTモデルでした。この問題では、外部の流れ場におけるS809風力タービン翼をシミュレートしました。チュートリアルは、AcuConsoleでデータベースを作成し、形状をインポートしてメッシュ処理し、シミュレーションパラメータを設定することから始めました。データベースは、1方程式のGamma遷移モデルによって初期設定されました。ケースが設定されると、AcuSolveを使用して解が生成されました。結果は、AcuProbeAcuFieldViewでポスト処理されました。AcuFieldViewでは、乱流粘性の始まりとintermittencyとの相互関係を確認しました。Gamma遷移モデルの正しい解を取得した後、2方程式のGamma-ReThetaを遷移モデルとして使用するようにデータベースを変更しました。