OS-T:4070 飛行機の翼のリブの非線形ギャップを用いたフリー寸法最適化

本チュートリアルではアルミニウム製の翼小骨(リブ)をモデル化した既存の有限要素モデルを使用し、フリー寸法最適化を行う方法について説明します。

HyperViewはリブの板厚パターンをポスト処理するために使用します。

os4070_pic1
図 1. 翼リブモデル

モデル内には、取り付けフランジ、ウェブ(薄い金属板)、上部と下部のフランジおよびラグ(肉厚を部分的に厚くした突起部)の4つのシェルコンポーネントがあります。ウェブはギャップ要素でラグと結合しています。適切な材料特性、荷重、境界条件および非線形サブケースが既にモデルに定義されています。設計領域はウェブで、残りのコンポーネントは非設計領域です。航空宇宙関連の部品の大部分は機械加工またはフライス加工で製造されたシェル構造で、フリー寸法最適化はこれらの部品に非常に適しています。トポロジー最適化適用の限界を理解するために、非線形ギャップを用いたトポロジー最適化を翼のリブモデルで実施します。

本チュートリアルにおける最適化問題の設定は以下の通りです:
目的関数
重み付きコンプライアンスWCOMPの最小化
制約条件
ウェブの体積率 < 0.3
フリー寸法最適化の設計変数:
設計領域での各シェル要素の板厚
トポロジー最適化の設計変数
設計領域での各シェル要素の要素密度

HyperMeshの起動とOptiStructユーザープロファイルの設定

使用されるモデルは、図 6に示すようなコントロールアームのモデルです。荷重と拘束条件、および2つの静的荷重ケースは、このモデルに既に定義されています。

本演習に使用されるモデルは、図 1図 1図 1に示すような自動車のフレームのモデルです。入力ファイルには、フレームが受ける3つの静的荷重ステップFrontal torsion、Rear torsionおよびVertical bendingです。

本演習に使用されるモデルは、図 1に示すようなシンプルなCADボックスのモデルです。4つの荷重ステップは既にこのモデル上で定義されており、それぞれNormal Modes Analysis(ノーマルモード解析)、両方の拘束ポイントにおけるFrequency Response(周波数応答)およびRandom Response Analysis(ランダム応答解析)を表します。

本演習に使用されるモデルは、図 1に示すようなbracket_frf_ENのモデルです。3つの荷重ステップは既にこのモデル上で定義されており、それぞれStatic Analysis(静解析)、Normal Modes Analysis(ノーマルモード解析)および荷重位置において加振されるFrequency Response(周波数応答)。

  1. HyperMeshを起動します。
    User Profilesダイアログが現れます。
  2. OptiStructを選択し、OKをクリックします。
    これで、ユーザープロファイルが読み込まれます。ユーザープロファイルには、適切なテンプレート、マクロメニュー、インポートリーダーが含まれており、OptiStructモデルの生成に関連したもののみにHyperMeshの機能を絞っています。
  3. Tools > Fatigue Process > Create Newをクリックします。
  4. New Sessionで、作業ディレクトリフォルダーに名称を入力します。
  5. Createをクリックします。
    これで、現在ロードされている疲労プロセステンプレートの内容を保存するための新しいファイルが生成されます。

フリー寸法非線形ギャップ最適化の実行

モデルのオープン

  1. File > Open > Modelをクリックします。
  2. optistruct.zipファイルから自身の作業ディレクトリに保存したrib_complete.hmファイルを開きます。モデルファイルへのアクセスをご参照ください。
  3. Openをクリックします。
    rib_complete.hmデータベースが現在のHyperMeshセッションに読み込まれます。

最適化のセットアップ

フリー寸法最適化設計変数の作成

  1. Analysisページからパネルoptimizationをクリックします。
  2. free sizeパネルをクリックします。
  3. createサブパネルを選択します。
  4. desvar=欄にshellsと入力します。
  5. typeをPSHELLにセットします。
  6. プロパティセレクターを使って、Webコンポーネントを選択します。
  7. createをクリックします。

フリー寸法製造用制約条件の作成

  1. parametersサブパネルを選択します。
  2. desvarsをクリックしshellsを選択します。
  3. minmemb offからmindim =に切り替え、2.0と入力します。
  4. updateをクリックします。
  5. returnをクリックします。

最適化の応答の作成

  1. Analysisページからoptimizationをクリックします。
  2. Responsesをクリックします。
  3. 体積率の応答を作成します。
    1. responses=欄に、Volfracと入力します。
    2. response typeの下で、volumefracを選択します。
    3. regional selectionをtotalno regionidに設定します。
    4. createをクリックします。
  4. 重み付けコンプライアンスの応答を作成します。
    1. responses=欄に、wcompと入力します。
    2. response typeの下で、weighted compを選択します。
    3. loadstepsをクリックし、すべての荷重ステップを選択します。
    4. returnをクリックします。
    5. createをクリックします。
  5. returnをクリックし、Optimization panelに戻ります。

設計制約条件の作成

  1. dconstraintsパネルをクリックします。
  2. constraints=欄にvolと入力します。
  3. response =をクリックしvolfracを選択します。
  4. upper boundの横のボックスにチェックマークを入れ、0.3と入力します。
  5. createをクリックします。
  6. returnをクリックし、Optimization panelに戻ります。

目的関数の定義

  1. objectiveパネルをクリックします。
  2. minが選択されていることを確認します。
  3. response=をクリックし、wcompを選択します。
  4. createをクリックします。
  5. returnを2回クリックし、Optimization panelを終了します。

最適化の実行

  1. AnalysisページからOptiStructをクリックします。
  2. save asをクリックします。
  3. Save Asダイアログで、OptiStructモデルファイルを書き出す場所を指定し、ファイル名としてrib_freesizeと入力します。
    OptiStruct入力ファイルには、拡張子 .femが推奨されます。
  4. Saveをクリックします。
    入力ファイル欄には、Save Asダイアログで指定されたファイル名と場所が表示されます。
  5. export optionsのトグルをallにセットします。
  6. run optionsのトグルをoptimizationにセットします。
  7. memory optionsのトグルはmemory defaultにセットします。
  8. OptiStructをクリックして最適化を実行します。
    ジョブが完了すると、ウィンドウ内に次のようなメッセージが現れます:
    OPTIMIZATION HAS CONVERGED.
    FEASIBLE DESIGN (ALL CONSTRAINTS SATISFIED).
    エラーがある場合、OptiStructはエラーメッセージも出します。エラーに関する詳細は、テキストエディタでファイル rib_freesize.outを開いて確認することができます。このファイルは同じディレクトリ内に.femファイルとして書き出されます。
  9. Closeをクリックします。
ディレクトリ内に作成されるデフォルトのファイルは以下の通り:
rib_freesize.hgdata
各反復計算における目的関数、制約条件の違反率が納められているHyperGraph形式のファイル。
rib_freesize.hist
目的関数の各反復計算の履歴および最も違反している制約値が納められているOptiStruct反復計算履歴ファイル。反復計算履歴のxyプロットに使用可能。
rib_freesize.HM.comp.tcl
密度の結果値に基づいて要素をコンポーネントに分類するために使用されるHyperMeshコマンドファイル。このファイルは、OptiStructのトポロジー最適化を実行した場合にのみ使用されます。
rib_freesize.HM.ent.tcl
密度の結果値に基づいて要素をエンティティセットに分類するために使用されるHyperMeshコマンドファイル。このファイルは、OptiStructのトポロジー最適化を実行した場合にのみ使用されます。
rib_freesize.html
問題設定と最終反復計算結果のサマリーを含むHTML形式の最適化レポート。
rib_freesize.mvw
HyperViewセッションファイル。
rib_freesize.oss
デフォルトで密度のしきい値が0.3として定義されているOSSmooth用のファイル。このファイル内のパラメーターを調整することでユーザーの意図する結果を得ることができます。
rib_freesize.out
ファイルのセットアップ、最適化のセットアップの情報、 実行に必要なRAMとディスクスペースの見積もり、それぞれの最適化の反復情報、計算時間の情報を含むOptiStruct出力ファイル。rib_freesize.femファイルの処理を行う際にフラグが立つワーニングおよびエラーに関しては、このファイルを確認すること。
rib_freesize.res
HyperMeshバイナリ結果ファイル。
rib_freesize.sh
反復計算が終了した段階での形状データが納められているファイル。各要素の密度値、空孔の大きさと角度を含む。このファイルは、最適化計算のリスタートに使用することができます。
rib_freesize.stat
計算を完全に終了するために使用されたCPU、また、入力デックの読み出し、アセンブリ、解析および収束等のCPU情報が含まれています。
rib_freesize_des.h3d
最適化結果を含むHyperViewバイナリ結果ファイル。
rib_freesize_frame.html
ブラウザを使ってHyperView Player.h3dをポスト処理するために使用されるHTMLファイル。_menu.htmlファイルとリンクされている。
rib_freesize_hist.mvw
目的関数、制約条件、および設計変数の反復計算履歴が含まれています。このファイルはHyperGraphHyperViewおよびMotionViewでカーブをプロットするために使用できます。
rib_freesize_menu.html
ブラウザを使ってHyperView Player.h3dをポスト処理するために使用されるHTMLファイル。
rib_freesize_s#.h3d
線形静解析からの結果を含むHyperViewバイナリ結果ファイル。
rib_freesize.fsthick
フリー寸法設計空間の一部であった要素についての要素特性情報。これらの要素の最適化された板厚は、節点板厚値(Ti)として与えられます。

結果の表示

要素の板厚分布はすべての反復計算についてOptiStructから出力されます。また、デフォルトで、最初と最後の反復計算の各サブケースについて、変位および応力の結果が出力されます。本演習では、これらの結果をHyperViewで可視化する方法について解説します。
  1. OptiStructパネルから、HyperViewをクリックします。
    HyperViewHyperMesh Desktop内で起動し、rib_freesize.h3dファイルからの結果が読み込まれます。
  2. Visualizationツールバーでpalette-24をクリックし、Entity Attributesパネルを開きます。
  3. Auto appy mode: Display Offを選択し、Webコンポーネントを選択します。
    Web以外のコンポーネントはすべて表示されていません。
  4. Mesh影付メッシュオプションvisualizationElementsShadedWithMesh-24をクリックします。
  5. Webコンポーネントをクリックし、影付きのメッシュにします。
  6. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  7. Result typeをElement Thicknessesに設定します。
  8. Resultsブラウザから、Simulationリストにリストされている最終反復計算を選択します。

    os4070_iteration
    図 2.
  9. Standard ViewsツールバーでviewAxisOrientationYXTop-24をクリックし、Webをトップビューで表示させます。

    Webコンポーネントの要素板厚コンターが表示されます。

    フリー寸法最適化の結果は、製造プロセスを簡略化するために大規模な範囲の中で板厚を削減することができるような最適化された板厚分布のウェブとなります。また、フリー寸法から得られた設計はトポロジー最適化では得ることのできない空洞、リブおよび連続的に変化する板厚を同時に生成する自由度を提供します。

    4070_thickness_contour
    図 3. フリー寸法非線形ギャップ最適化による板厚コンター. プレート板厚0.1mmのWebの
  10. Page ControlsツールバーでpageDelete-24をクリックし、HyperMeshクライアントが表示されるまで、HyperViewクライアントページを閉じます。

データベースの保存

  1. メニューバーFile > Save As > Modelをクリックします。
  2. Save Asダイアログでファイル名欄にrib_complete.hmと入力し、自身の作業ディレクトリに保存します。

トポロジー非線形ギャップ最適化の実行

非線形ギャップ要素を用いたトポロジー最適化のセットアップ

トポロジー設計変数の作成

  1. Modelブラウザで、Design Variable欄を右クリックし、コンテキストメニューからDeleteを選択します。
  2. Analysisページからパネルoptimizationをクリックします。
  3. topologyパネルをクリックします。
  4. createサブパネルを選択します。
  5. desvar=欄にshellsと入力します。
  6. プロパティセレクターを使って、Webコンポーネントを選択します。
  7. typeをPSHELLにセットします。
  8. base thicknessは0.0のままとします。
  9. createをクリックします。
ウェブコンポーネントはトポロジー最適化の設計変数として定義されました。

データベースの保存

  1. メニューバーFile > Save As > Modelをクリックします。
  2. Save Asダイアログでファイル名欄にrib_topology.hmと入力し、自身の作業ディレクトリに保存します。

トポロジー最適化製造用制約条件の作成

  1. parametersサブパネルを選択します。
  2. desvars =をクリックしshellsを選択します。
  3. minmemb offをmindim =に切り替え、最小部材寸法制御として2.0を入力します。
  4. updateをクリックします。
  5. returnを2回クリックします。

最適化の実行

  1. AnalysisページからOptiStructをクリックします。
  2. save asをクリックします。
  3. Save Asダイアログで、OptiStructモデルファイルを書き出す場所を指定し、ファイル名としてrib_topologyと入力します。
    OptiStruct入力ファイルには、拡張子 .femが推奨されます。
  4. Saveをクリックします。
    入力ファイル欄には、Save Asダイアログで指定されたファイル名と場所が表示されます。
  5. export optionsのトグルをallにセットします。
  6. run optionsのトグルをoptimizationにセットします。
  7. memory optionsのトグルはmemory defaultにセットします。
  8. OptiStructをクリックして最適化を実行します。
    ジョブが完了すると、ウィンドウ内に次のようなメッセージが現れます:
    OPTIMIZATION HAS CONVERGED.
    FEASIBLE DESIGN (ALL CONSTRAINTS SATISFIED).
    エラーがある場合、OptiStructはエラーメッセージも出します。エラーに関する詳細は、テキストエディタでファイル rib_topology.outを開いて確認することができます。このファイルは同じディレクトリ内に.femファイルとして書き出されます。
  9. Closeをクリックします。

結果の表示

OptiStructは、すべての反復計算における要素密度の結果を提供します。また、デフォルトで、最初と最後の反復計算の各サブケースについて、変位および応力の結果が出力されます。
  1. OptiStructパネルから、HyperViewをクリックします。
    HyperViewHyperMesh Desktop内で起動し、rib_topology.mvwファイルからの結果が読み込まれます。このファイルは、モデルと結果が定義されている.h3dファイルとリンクされています。
  2. Visualizationツールバーでpalette-24をクリックし、Entity Attributesパネルを開きます。
  3. Auto appy mode: Display Offを選択し、Webコンポーネントを選択します。
    Web以外のコンポーネントはすべて表示されていません。
  4. Mesh影付メッシュオプションvisualizationElementsShadedWithMesh-24をクリックします。
  5. Webコンポーネントをクリックし、影付きのメッシュにします。
  6. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  7. Result typeをElement Densitiesに設定します。
  8. Resultsブラウザから、Simulationリストにリストされている最終反復計算を選択します。
  9. Standard ViewsツールバーでviewAxisOrientationYXTop-24をクリックし、Webをトップビューで表示させます。
  10. Applyをクリックし、Webコンポーネントの要素密度のコンターを表示させます。
トポロジー最適化の結果は予測した通り非常に離散していることが分かります。

4070_contour_elem_density
図 4. 要素密度のコンター. 非線形ギャップ最適化によるWebコンポーネントの

フリー寸法最適化およびトポロジー最適化の結果の確認と比較

トポロジー最適化の結果は、材料を完全に残す部分と削除する部分(空洞)から成るトラスタイプの構造を示し、フリー寸法最適化の結果は、板厚が連続的に変化するようなせん断パネルタイプの構造を示す傾向があります。ソリッドモデルに関しては、要素を完全に残すか削除するか以外に選択の余地がありませんが、シェルモデルに関しては、トポロジー最適化のペナルティ係数(opti controlパネルのDISCRETE)によって中間的な密度をもつ要素が0か1どちらかの値に近くなるように変換されることで、必ずしも効率的とはいえない構造を導き出す場合もあります。また、航空宇宙関連の構造物の大半は板構造であり、切削加工などの製造条件によりせん断パネルタイプの構造物がしばしば必要とされます。フリー寸法最適化は、このような場合に非常に有効です。