OS-T:4050 水平尾翼の最適化

本チュートリアルでは、下に示す水平尾翼モデルのアルミニウムリブ(翼小骨)の板厚を最適化します。


4050_model
図 1. 水平尾翼モデル
尾翼は、飛行機の胴体に近いほうの部分が片持ちとなっています。尾翼が底部外板に0.25psiの圧力荷重を受ける、尾翼が400lbsの先端荷重を受ける、尾翼が圧力荷重と先端荷重を同時に受ける、という3つの荷重ケースについて考察します。適用される荷重は下に示すとおりです。

4050_loading
図 2. 水平尾翼にかかる荷重
与えられた荷重条件下、破壊や座屈がなく可能な限り軽量であるものが最適設計となります。
表 1. パート材料
  Glass_fabric Core   Aluminum 2024-T3
E1 4Msi (4.0e6 psi) 2ksi (2000 psi)

E

10.6Msi (10.6e6 psi)
E2 6Msi (6.0e6 psi) 4ksi (4000 psi) Nu 0.33
NU12 0.1 0.3 G 4.06Msi (4.06e6 psi)
G12 800ksi (800000 psi) 3ksi (3000 psi) Rho 0.1 lb/in3
G1,Z 800ksi (800000 psi) 4ksi (4000 psi) Yield 50ksi (50000 psi)
G2,Z 800ksi (800000 psi) 4ksi (4000 psi)    
RHO 0.07 lb/in3 0.001074 lb/in3    
Xt 35ksi (35000 psi) 500 psi    
Xc 35ksi (35000 psi) 500 psi    
Yt 35ksi (35000 psi) 500 psi    
Yc 35ksi (35000 psi) 500 psi    
S 4ksi (4000 psi) 150 psi    
最適化問題の設定は以下の通りです:
目的関数
質量の最小化
制約条件
複合材外板に破壊がないこと
アルミニウムリブが塑性しないこと
座屈が生じないこと
設計変数
複合材プライ板厚
リブ板厚

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

  1. HyperMeshを起動します。
    User Profilesダイアログが現れます。
  2. OptiStructを選択し、OKをクリックします。
    これで、ユーザープロファイルが読み込まれます。ユーザープロファイルには、適切なテンプレート、マクロメニュー、インポートリーダーが含まれており、OptiStructモデルの生成に関連したもののみにHyperMeshの機能を絞っています。

モデルのオープン

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

モデルのセットアップ

等方性材料およびプロパティの作成とメタリックリブへの割り当て

材料の生成

  1. Modelブラウザで右クリックしコンテキストメニューからCreate > Materialを選択します。
    デフォルトの材料がエンティティエディターに表示されます。
  2. Nameにal2024-t3と入力します。
  3. Card ImageをMAT1に設定します。
  4. 各欄の横に材料の値を入力します。
    これらの値は、本チュートリアルの始めの部分に記載されている一覧Aluminum 2024-T3によるものです。
    1. E(ヤング率)に10.6e6と入力します。
    2. NU(ポワソン比)に0.33と入力します。
    3. RHO(材料密度)については、0.1と入力します。
新しい材料al2024-t3が作成されました。この材料は、OptiStructの線形等方性材料モデルMAT1を用いています。

プロパティの生成

  1. Modelブラウザで右クリックしコンテキストメニューからCreate > Propertyを選択します。
    デフォルトのプロパティがエンティティエディターに表示されます。
  2. NameにRibsと入力します。
  3. Card ImageをPSHELLに設定します。
  4. 各欄の横に、プロパティの値を入力します。
    空のValueランは、それがオフになっていることを表します。そのようなプロパティを編集するには、その横で空白となっているValue欄をクリックし、値を入力します。
    1. Materialに、Unspecified > Materialをクリックします。Select Materialダイアログでa12024-t3を選択し、OKをクリックします。
    2. T(プレートの板厚)に、1.0と入力します。
新しいプロパティRibsが2D PSHELLとして作成されます。材料情報もこのプロパティにリンクしています。

Ribsコンポーネントへの材料とプロパティデータの割り当て

  1. Modelブラウザで右クリックしコンテキストメニューからCreate > Componentを選択します。
    デフォルトのコンポーネントテンプレートがエンティティエディターに表示されます。
  2. NameにRibsと入力します。
  3. Propertyに、Unspecified > Propertyをクリックします。Select Propertyダイアログで、Ribsを選択し、OKをクリックします。
Ribsという名のプロパティコレクターが作成されました。これには、板厚が1.0であるPSHELL定義が含まれています。これは、al2024-t3 (Aluminum 2024-T3)材料定義およびRibsという名のコンポーネントも参照します。

os_4050_ribs
図 3.

HyperLaminateを用いた材料と形状特性の作成

直交異方性材料特性の作成

  1. 2DページからパネルHyperLaminateをクリックします。
    HyperLaminateが開きます。
  2. 材料定義glass_fabricを作成します。
    1. LaminateブラウザでMAT8を右クリックし、コンテキストメニューからNewを選択します。
      新しい材料定義が作成され、LaminateブラウザのMAT8の下に表示されます。
    2. Define, Edit materialセクションの下で、Material欄にGlass_fabricと入力します。
    3. 以下の欄を編集します:
      E1
      4Msi (4.0e6 psi)
      E2
      6Msi (6.0e6 psi)
      NU12
      0.1
      G12
      800ksi (800000 psi)
      G1Z
      800ksi (800000 psi)
      G2Z
      800ksi (800000 psi)
      RHO
      0.07 lb/in3
      Xt
      35ksi (35000 psi)
      Xc
      35ksi (35000 psi)
      Yt
      35ksi (35000 psi)
      Yc
      35ksi (35000 psi)
      S
      4ksi (4000 psi)
    4. Applyをクリックします。
    Glass_fabric の直交異方性材料定義が作成されました。
  3. 材料定義coreを作成します。
    1. LaminateブラウザでMAT8を右クリックし、コンテキストメニューからNewを選択します。
      新しい材料定義が作成され、LaminateブラウザのMAT8の下に表示されます。
    2. Define, Edit materialセクションの下で、Material欄にCoreと入力します。
    3. 以下の欄を編集します:
      E1
      2ksi (2000 psi)
      E2
      4ksi (4000 psi)
      NU12
      0.3
      G12
      3ksi (3000 psi)
      G1Z
      4ksi (4000 psi)
      G2Z
      4ksi (4000 psi)
      RHO
      0.001074 lb/in3
      Xt
      500 psi
      Xc
      500 psi
      Yt
      500 psi
      Yc
      500 psi
      S
      150 psi
    4. Applyをクリックします。
LaminateブラウザのMAT8ブランチに、2つの新しい直交異方性材料定義が作成されました。

複合積層材の作成

  1. LaminateブラウザでPCOMPを右クリックし、コンテキストメニューからNewを選択します。
    新しい積層定義が作成され、LaminateブラウザのPCOMPの下に表示されます。
  2. Laminate definitionセクションの下で、積層材の情報を編集します。
    1. Name欄にInboard_section_topと入力します。
    2. カラーボックスをクリックし、積層材の新しい色を選択します。
  3. Stacking sequence conventionの下で、ConvectionをSymmetric-Midlayerに切り替えます。
  4. Add/Updateプライの下で、プライ情報を編集します。
    1. MaterialをGlass_fabricに設定します。
    2. Thickness T1に0.25と入力します。
    3. Orientation (Degrees)に0.0と入力します。
    4. No. of Repetitionsに1.0と入力します。
  5. Add New Plyを3回クリックします。
  6. Ply lay-up orderの下で、1つ目のプライ(row 1)を編集します。
    1. MaterialをCoreに設定します。
    2. Thickness T1に0.5と入力します。
    3. Orientation (Degrees)に45と入力します。
    4. SOUTをYESに設定します。
  7. Ply lay-up orderの下で、2つ目のプライ(row 2)を編集します。
    1. Orientation (Degrees)に90と入力します。
    2. SOUTをYESに設定します。
  8. Ply lay-up orderの下で、3つ目のプライ(row 3)を編集します。
    1. SOUTをYESに設定します。

    4050_plylayup
    図 4.
  9. Update Laminateをクリックします。
    Inboard_section_topの積層材定義が完了しました。

    4050_update_lam
    図 5. Inboard_section積層材
  10. LaminateブラウザでInboard_section_topを右クリックし、コンテキストメニューからDuplicateを選択します。
  11. Laminate definitionセクションの下で、積層材の情報を編集します。
    1. Name欄にInboard_section_btmと入力します。
    2. カラーボックスをクリックし、積層材の新しい色を選択します。
  12. Update Laminateをクリックします。
  13. 積層材Outboard_section_btm、Outboard_section_top、Midspan_section_btm、Midspan_section_topについて、Inboard_section_topと同じになるようプライ角度を更新し、Update Laminateをクリックします。
  14. メニューバーFile > Exitをクリックします。
    HyperLaminateが閉じ、積層材情報はHyperMeshに戻されます。
6つの積層材定義が、PCOMPキーワードを使って作成されました。

os_4050_002
図 6. 積層材定義

関連のコンポーネントへの新たに作成されたプロパティの割り当て

この時点では、モデルのメッシング、および材料特性と形状特性の定義が完了しています。しかし、要素は正しい形状特性および材料特性を参照していません。
  1. コンポーネントInboard_section_topを編集します。
    1. ModelブラウザのComponentフォルダーで、Inboard_section_topを選択します。
      エンティティエディターが開き、コンポーネントの対応するデータが表示されます。
    2. Propertyに、Unspecified > Propertyをクリックします。Select Propertyダイアログで、<uicontrol>Ribs</uicontrol>を選択し、OKをクリックします。
  2. コンポーネントInboard_section_btmを編集します。
    1. ModelブラウザのComponentフォルダーで、Inboard_section_btmを選択します。
      エンティティエディターが開き、コンポーネントの対応するデータが表示されます。
    2. Propertyに、Unspecified > Propertyをクリックします。Select Propertyダイアログで、<uicontrol>Ribs</uicontrol>を選択し、OKをクリックします。

正しいコンポーネントコレクターへの要素の編成

  1. Modelブラウザで、Load Collector欄を右クリックし、コンテキストメニューからHideを選択します。
  2. フィーチャー角度を編集します。
    1. キーボードのOを押し、Optionsパネルを開きます。
    2. meshサブパネルを選択します。
    3. feature angle=欄に37と入力します。
    4. returnをクリックします。
    これにより、フィーチャー角度によって要素が選択できます。
  3. Toolページからorganizeパネルをクリックします。
  4. 上部胴体部の要素をInboard_section_topコンポーネントに含めます。
    1. 上部胴体部の要素の1つを選択します。
    2. elems > by faceをクリックします。
      上部サーフェス上のいくつかの要素が選択され、要素間の角度が37度以上のところで停止します。下部サーフェスと上部サーフェスの間のリブの要素は90度を成しており、したがって。選択セットはここで止っています。
    3. dest component =をクリックしInboard_section_topを選択します。
    4. Moveをクリックします。
  5. 残りの要素を、図 7で示される正しいコンポーネントコレクターに含めます。

    4050_skin_elements
    図 7.
  6. ModelブラウザのComponentフォルダーでTailを右クリックし、コンテキストメニューからIsolate Onlyを選択します。
    tailコレクターに含まれるリブを形成している要素のみが表示されます。
  7. リブを形成している要素をRibsコンポーネントコレクターに含めます。
    1. Organize paneldisplayedをクリックします。
    2. dest component =をクリックしRibsを選択します。
    3. Moveをクリックします。
    4. return をクリックしてパネルを終了します。
  8. Modelブラウザで、Components欄を右クリックし、コンテキストメニューからShowを選択します。
  9. 空のコンポーネントをクリアします。
    1. キーボードのF2キーを押します。
    2. エンティティセレクターをcompsに設定します。
    3. preview emptydelete entityをクリックし、空のコンポーネント(ここではtailコンポーネント)を消去します。
    4. return をクリックしてパネルを終了します。

要素の方向付け

  1. Toolページからnormalsパネルをクリックします。
  2. elementsサブパネルを選択します。
  3. エンティティセレクターをelemsにセットし、elems > by collectorをクリックします。
  4. Ribsを選択します。
  5. comps > reverseをクリックします。
  6. selectをクリックします。
  7. displayをクリックします。
    要素の法線がすべて同じ方向に揃っていないかを確認します。
  8. 要素の法線が同じ方向に揃っていない場合、それらを調整します。
    1. orientationの下でセレクターをelemにセットし、法線が内側を指している要素を選択します。
    2. adjustをクリックします。
    外板の法線方向はすべて内側を向くようになったはずです。これらの外板の法線方向は各要素の局所座標系のz軸です。
  9. returnをクリックし、メインメニューに戻ります。
  10. 2Dページからパネルcompositesをクリックします。
  11. material orientationサブパネルを選択します。
  12. compsセレクターを使って、外面に属する要素をすべて含むコンポーネントを選択します。
    注: これは、Ribs以外の全コンポーネントです。
  13. Material orientation methodをby vectorに設定します。
  14. by vectorの下で、z-axisを選択します。
  15. projectをクリックします。
  16. return をクリックしてパネルを終了します。

選択された各要素の局所x軸が全体z軸の投影となるよう方向付けされます。これは、各要素上に表示される小さな白い矢印で示されます。

コンポーネントコレクターInboard_section_top、Inboard_section_btm、Midspan_section_top、Midspan_section_btm、Outboard_section_top、Outboard_section_btmに属する要素の局所xおよびz軸を定義したことにより、複合積層材を参照する各要素について局所座標系が設定されました。

静的および座屈サブケースの作成

本チュートリアルでは、尾翼が底部外板に圧力荷重を受ける、尾翼が先端荷重を受ける、尾翼が圧力荷重と先端荷重を同時に受ける、という3つの荷重ケースを考慮します。

これより前のステップでは、圧力荷重を含む荷重コレクターおよび先端荷重を含む別の荷重コレクターが生成されましたが、その両方を含んだ荷重コレクターがまだ必要です。次に、荷重コレクターpressureとtip_loadの組み合わせである荷重コレクターを作成します。

組み合わせ荷重コレクターの作成

  1. Modelブラウザで右クリックしコンテキストメニューからCreate > Load Collectorを選択します。
    デフォルトの荷重コレクターがエンティティエディターに表示されます。
  2. Name =欄にCombinedと入力します。
  3. Colorをクリックし、カラーパレットから色を選択します。
  4. Card ImageをLOADADDに設定します。
  5. Sに1.0と入力します。
  6. LOAD_Num_Set =をクリックし、2と入力します。
    これは、いくつの荷重コレクターを組み合わるかを示します。
  7. Data: S1欄で、をクリックします。
  8. LOAD_Num_Set=ダイアログで、荷重コレクター情報を編集します。
    1. S1(1)に1.0と入力します。
    2. L1(1)にpressureを選択します。
    3. S1(2)に1.0と入力します。
    4. L1(2)にtip_loadを選択します。
    5. Closeをクリックします。
pressure荷重コレクター内の荷重の1.0倍とtip_load荷重コレクター内の荷重の1.0倍を組み合わせた荷重コレクターが作成されました。

静的および関連した座屈サブケースの作成

  1. メニューバーView > Browsers > HyperMesh > Utilityをクリックします。
  2. UtilityタブでFEAを選択します。
  3. Loadsteps:の下でBucklingをクリックします。
    Create Buckling Subcasesが開きます。
  4. 荷重コレクターpressure内の圧力荷重を荷重コレクターconstraints内の単点拘束と組み合わせたpressure_onlyという名の線形静的サブケースと、pressure_only静的サブケースについて0.0より大きい最初の10個の座屈モードを計算する関連した座屈固有値サブケースbuck_pressure_onlyを作成します
    1. Name欄にpressure_onlyと入力します。
      これが、静解析サブケースのユーザー定義の名称となります。静解析サブケース名をnameとすると、関連した座屈サブケースはbuck_nameという名称で作成されます。
    2. Name欄にEIGRLと入力します。
      これは、固有値解析が座屈モードの計算に使用されることを示します。現在のところ、これが使用可能な唯一のオプションです。
    3. V1欄に0.0と入力します。
      これは、固有値抽出の下限が0.0であることを示します。これにより、負の座屈モードが算出されることを回避します(負の座屈モードは、荷重が反転した場合に座屈が起こることを示します)。
    4. V2欄はブランクのままとします。
      これは、固有値抽出の上限です。本チュートリアルでは、(固有値の範囲ではなく)計算するモードの数を選択します。
    5. D欄に10と入力します。
      これは、低いほうから10番目までの座屈モード(V1より大きい)が計算されるよう要求しています。
    6. LOADをpressureに設定します。
    7. SPCをconstraintsに設定します。
    8. Createをクリックします。
  5. 荷重コレクターconstraints内の単点拘束と荷重コレクターtip_load内の集中荷重を組み合わせたtip_load_onlyという名の静的サブケースと、0.0より大きい最初の10個のモードを計算するための関連した座屈サブケースを作成します。
  6. 荷重コレクターconstraints内の単点拘束と荷重コレクターcombined(すなわちpressureとtip_loadの両方)内の荷重を組み合わせたcomboという名の静的サブケースと、0.0より大きい最初の10個のモードを計算するための関連した座屈サブケースを作成します。
  7. Create Buckling Subcasesダイアログを終了します。

複合積層材についての応力、ひずみ、および破壊結果の要求

複合積層材はデフォルトでは応力、ひずみおよび破壊結果が出力されないため、出力指定する必要があります。
  1. プロパティOutboard_section_topを編集します。
    1. ModelブラウザのPropertiesフォルダーで、Outboard_section_topをクリックします。
      エンティティエディターが開き、プロパティカードイメージが表示されます。
    2. FTをHILLに設定します。
      これで、破壊理論計算がアクティブになります。
    3. SBに3,500と入力します。
      これは、積層材の積層間せん断強度で、結合材せん断強度です。材料データは提供されていないため、3.5ksiは仮定値です。
    4. Data: MID欄で、をクリックします。
    5. Number_of_Plies=ダイアログで、すべてのプライについてSOUTをYESにセットし、Closeをクリックします。
      これでプライについての応力およびひずみの結果出力を要求します。
  2. 他の複合積層材について、手順1を繰り返します。
  3. GLOBAL_CASE_REQUESTコントロールカードを編集します。
    1. Analysisページからパネルcontrol cardsをクリックします。
    2. Card Imageダイアログで、GLOBAL_CASE_REQUESTをクリックします。
    3. CSTRAINCSTRESSが選択されていることを確認します。
    4. returnを2回クリックし、ダイアログを終了します。
    複合積層材についての応力、ひずみ、および破壊結果が出力されるようになりました。

ジョブのサブミット

  1. AnalysisページからOptiStructパネルをクリックします。

    OS_1000_13_17
    図 8. OptiStructパネルへのアクセス
  2. save asをクリックします。
  3. Save Asダイアログで、OptiStructモデルファイルを書き出す場所を指定し、ファイル名としてtail_baseline_completeと入力します。
    OptiStruct入力ファイルには、拡張子 .femが推奨されます。
  4. Saveをクリックします。
    入力ファイル欄には、Save Asダイアログで指定されたファイル名と場所が表示されます。
  5. export optionsのトグルをallにセットします。
  6. run optionsのトグルをanalysisにセットします。
  7. memory optionsのトグルはmemory defaultにセットします。
  8. OptiStructをクリックし、OptiStructジョブを開始します。
ジョブが成功した場合、tail_baseline_complete.femが書き出されたディレクトリに新しい結果ファイルがあるはずです。何らかのエラーがある場合、tail_baseline_complete.outファイルはデバッグを手助けするエラーメッセージを探すのに良い場所です。

結果の表示

解析サマリーファイルの確認

OptiStruct解析を実行した後、tail_baseline_complete.outファイルが作業ディレクトリに書き出されます。このファイルには、解析結果のサマリーが含まれています。
テキストエディタを使って、tail_baseline_complete.outファイルを開きます。
ファイルに含まれるものは以下のとおりです:
  • 有限要素モデルの概要
  • 最適化パラメータの概要
  • メモリおよびディスクスペースの推定量
  • 解析結果
解析結果セクションには、ベースラインモデルのVolume、MassおよびBuckling Modesが表示されています。
ANALYSIS RESULTS :

------------------

ITERATION   0

(Scratch disk space usage for starting iteration = 30 MB)
(Running in-core solution)

Volume                              =  7.71079E+04   Mass     =  2.49519E+03

Subcase   Compliance
      1  5.455666E+02
      3  2.486638E+01
      5  7.735856E+02

Subcase  Mode  Buckling Eigenvalue
      2      1     1.583435E+01
      2      2     1.610702E+01
      2      3     1.638024E+01
      2      4     1.665444E+01
      2      5     1.681097E+01
      2      6     1.693918E+01
      2      7     1.715172E+01
      2      8     1.723870E+01
      2      9     1.739906E+01
      2     10     1.748200E+01
      4      1     8.267695E+01
      4      2     8.326373E+01
      4      3     8.393269E+01
      4      4     8.466939E+01
      4      5     8.541136E+01
      4      6     8.618942E+01
      4      7     8.695226E+01
      4      8     8.765920E+01
      4      9     8.834313E+01
      4     10     8.907416E+01
      6      1     1.329775E+01
      6      2     1.351079E+01
      6      3     1.372538E+01
      6      4     1.394187E+01
      6      5     1.416444E+01
      6      6     1.417737E+01
      6      7     1.439755E+01
      6      8     1.445274E+01
      6      9     1.464175E+01
      6     10     1.466889E+01

変位結果の確認

  1. OptiStructパネルから、HyperViewをクリックします。
    HyperMesh DesktopでHyperViewが起動され、結果が読み込まれます。
  2. Animationツールバーで、Animation typeをanimationLinear-24(Linear)に設定します。
  3. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  4. Result typeをDisplacement [v]およびMagに設定します。
  5. Applyをクリックします。
最初のサブケース[pressure only]について、変位のコンターが表示されます。他のサブケースについても同様に確認することが可能です。

4040_displacement_contour
図 9. pressure_onlyサブケースの変位コンター図

応力結果の確認

  1. Visualizationツールバーでpalette-24をクリックし、Entity Attributesパネルを開きます。
  2. Auto apply modeを選択します。
  3. DisplayにOffをクリックします。
    これで、選択されたコンポーネントは、ディスプレイ内、もしくはコンポーネントのリストで表示されなくなります。
  4. ribsを除く全てのコンポーネントを非表示にします。
  5. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  6. Result typeをElement Stresses (2D & 3D) [t]およびvon Misesに設定します。
  7. Applyをクリックします。
    金属製リブについてのフォンミーゼス応力のコンター図が表示されます。

    os_4050_contour_plot
    図 10.
  8. Visualizationツールバーでpalette-24をクリックし、Entity Attributesパネルを開きます。
  9. Flipをクリックします。
    Ribsコンポーネントは表示されなくなり、複合積層材コンポーネントが表示されます。
  10. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  11. Result typeをComposite Stresses (s)およびPly Failureに設定します。
  12. Layersを1に設定します。
  13. Applyをクリックします。
    これで、複合材外板についての複合破壊指数のコンター図が表示されます。

    os_4050_fail_index
    図 11. pressure only荷重ステップの1つ目の層の破壊指数
    OptiStructでは、個々のプライに対する破壊指数を計算した後、複合シェル要素で考えられ得る破壊指数を計算します。これは、個々の層における破壊は複合材の破壊を意味するという前提に基づきます。したがって、複合材要素の破壊指数は、層および母材に対して計算されたすべての破壊指数の最大値として算出されます。
    注: 要求された応力出力を持つプライのみが考慮されます。
  14. LayersをMaxに設定します。
    積層材の最大指数が表示されます。

    os_4050_max_fail
    図 12. pressure only荷重ステップの全層に求められた最大破壊指数

この手順を繰り返し、すべての荷重ステップについて、最大破壊指数を得ます。

MAX FAILURE INDEX = 3.73 e-3 (Combo Loadstep)

最適化のセットアップ

続いて、HyperMeshで最適化問題のセットアップを行います。セットアップの最初のステップは、設計変数を定義することです。本演習の設計変数は、リブの板厚および複合材外板内に使用されている積層です。

HyperMesh Desktopに戻る

HyperMesh Desktopでは、アプリケーションを切り替えることなく、1つのHyperMeshページと、HyperViewHyperGraphMotionViewおよびMediaViewクライアントからの複数ページを使うことができます。

HyperViewページ時を削除、もしくはHyperMeshクライアントをナビゲートすることにより、HyperMesh Desktopに戻ります。
  • HyperViewページ時を削除してHyperMeshクライアントに戻るには、Page Controlsツールバー上のpageDelete-24をクリックします。
  • ページを開いたままHyperMeshクライアントに戻るには、アプリケーションの上部右側にあるpagePrevious-24/pageNext-24HyperMeshクライアントが戻るまでクリックします。

金属製リブの板厚設計変数の作成と参照

  1. Analysisページからパネルoptimizationをクリックします。
  2. gaugeパネルをクリックします。
  3. createサブパネルを選択します。
  4. propsセレクターを使って、Ribsコレクターを選択します。
  5. 一番上のトグルをvalue from propertyに設定します。
    これで、設計変数の初期値が特性カードで定義される板厚値となるよう設定されます。
  6. lower bound %をlower bound =に切り替え、0.01と入力します。
    これは、設計変数の下限値を設定します。
  7. upper bound %をupper bound =に切り替え、2.0と入力します。
    これは、設計変数の上限値を設定します。
  8. typeをPSHELL - Tにセットします。
  9. createをクリックします。
  10. returnを2回クリックし、メインメニューに進みます。

os_4050_settings
図 13. リブ板厚設計変数についてのGaugeパネルの設定

複合積層材の設計変数の作成

  1. 2DページからパネルHyperLaminateをクリックします。
    HyperLaminateが開きます。
  2. LaminateブラウザでDESVARを右クリックし、コンテキストメニューからNewを選択します。
    NewDv1という名の新規の設計変数が作成されます。
  3. Defne/Edit materialセクションで、設計変数を編集します。
    1. Material欄にistgf_thと入力します。
      istgf_thは、inboard_section_top、glass_fabric、thicknessを表します。
    2. Initial value欄に0.25と入力します。
    3. Lower bound欄に0.01と入力します。
    4. Upper bound欄に1.0と入力します。
  4. Applyをクリックします。
  5. istgf_th設計変数と同じ値を使用し、もう1つの設計変数をisbgf_thという名で作成します。
    ヒント: 同等の設計変数を素早く作成するには、Laminateブラウザでistgf_thを右クリックし、コンテキストメニューからDuplicateを作成します。
  6. HyperLaminateでその他10個の設計変数を調べて、境界が表 2の情報と一致することを確認します。
    表 2.
    名称 Initial Value Lower bound Upper bound
    mstgf_th 0.25 0.01 1.0
    msbgf_th 0.25 0.01 1.0
    ostgf_th 0.25 0.01 1.0
    osbgf_th 0.25 0.01 1.0
    istc_th 0.5 0.01 2.0
    isbc_th 0.5 0.01 2.0
    mstc_th 0.5 0.01 2.0
    msbc_th 0.5 0.01 2.0
    ostc_th 0.5 0.01 2.0
    osbc_th 0.5 0.01 2.0
各複合積層コンポーネントのglass fabricの板厚について1つずつ、および各複合積層コンポーネントのCoreの板厚について10個、計12個の設計変数が存在しています。積層材は対称形であるため、glass fabricは、coreの両側の同じ設計変数を参照します。

複合積層材プロパティの更新

  1. LaminateブラウザのPCOMPの下で、Inboard_section_topを選択します。
  2. Optimizationを選択します。
    Ply lay-up orderテーブルに新しい欄が現われ、設計変数をプライ板厚またはプライ方向に関連付けすることが可能となります。
  3. Ply lay-up orderテーブルの1番目の行で、Thickness Designvarをistgf_thに設定します。
    Inboard_section_topコンポーネントコレクターのply1、およびこの場合ply5(ここでは、対称中間層タイプの積層材であるため)に使用されているGlass_fabric材料の板厚に、新しい設計変数istgf_thが関連付けされます。
  4. 2番目の行で、Thickness Designvar をistc_thに設定します。
    Inboard_section_topコンポーネントコレクターのply2とply4に使用されているCore材料の板厚に、設計変数 istc_thが関連付けされます。
  5. 3番目の行で、Thickness Designvar をistgf_thに設定します。
  6. Update Laminateをクリックし、設計変数の割り当てを保存します。
  7. Inboard_section_btm複合積層コンポーネントコレクターについて、上記の手順を繰り返し、設計変数を関連付けします。
  8. メニューバーFile > Exitをクリックします。
    HyperLaminateが閉じ、設計変数と更新された積層材情報はHyperMeshに戻されます。

最適化の応答の作成

  1. Analysisページからoptimizationをクリックします。
  2. Responsesをクリックします。
  3. モデルの全体積について定義される質量の応答を作成します。
    1. responses=欄に、massと入力します。
    2. response typeの下で、massを選択します。
    3. regional selectionをとno regionidに設定します。
    4. createをクリックします。
  4. 複合材破壊応答を作成します。
    1. response=欄にhl_istと入力します。
    2. response typeをcomposite failureに設定します。
    3. propsセレクターを使って、Inboard_section_topコレクターを選択します。
    4. プロパティセレクターの横のスイッチをhillに設定します。
    5. createをクリックします。
  5. 他の複合積層材外板のプライについてのhill破壊指数の最適化応答を作成するために手順4を繰り返し、応答hl_osb、hl_ost、hl_msb、hl_mst、hl_isbを作成します。
  6. 静的応力の応答を作成します。
    1. responses=欄に、vm_strsと入力します。
    2. response typeをstatic stressに設定します。
    3. プロパティセレクターを使って、Ribsを選択します。
    4. response セレクターをvon misesにセットします。
    5. von misesの下で、both surfacesを選択します。
    6. createをクリックします。
  7. 座屈応答を作成します。
    1. response=欄にbuckleと入力します。
    2. response typeをbucklingに設定します。
    3. Mode Number欄に1と入力します。
    4. createをクリックします。
      モデルについて計算された最小の座屈モードである、最適化の応答buckleが作成されました。
  8. returnをクリックし、Optimization panelに戻ります。

制約の作成

このステップでは、制約条件を定義します。金属製リブのフォンミーゼス応力は降伏応力未満、複合材外板の複合破壊指数は1.0未満、モデルの座屈モードは1.0より大きく保ちながら、モデルの全質量を最小とするよう試みます。
  1. dconstraintsパネルをクリックします。
  2. 制約条件cnst1を作成します。
    1. constraints=欄にcnst1と入力します。
    2. response=をクリックしvm_strsを選択します。
    3. upper boundの横のボックスにチェックマークを入れ、50,000と入力します。
    4. 荷重ステップセレクターを使用し、pressure_onlytip_load_only、およびcomboを選択します。
    5. createをクリックします。
    これで、すべての静的サブケースについて、金属製リブのフォンミーゼス応力が50ksi未満となるように制約条件が定義されます。
  3. 制約条件cnst2を作成します。
    1. constraints=欄にcnst2と入力します。
    2. response=をクリックしhl_istを選択します。
    3. upper boundの横のボックスにチェックマークを入れ、1.0と入力します。
    4. 荷重ステップセレクターを使用し、pressure_onlytip_load_only、およびcomboを選択します。
    5. createをクリックします。
    これで、すべての静的サブケースについて、Inboard_section_topコンポーネントコレクターの積層材外板のply 1のhill破壊指数が1.0未満となるように制約条件が定義されます。
  4. 手順3を繰り返して、cnst3からcnst7までの制約条件を作成します。
  5. 制約条件cnst8を作成します。
    1. constraints=欄にcnst8と入力します。
    2. response=をクリックしbuckleを選択します。
    3. upper boundの横のボックスからチェックマークを外します。
    4. lower boundの横のボックスにチェックマークを入れ、1.0と入力します。
    5. 荷重ステップセレクターを使用し、buck_pressure_onlybuck_tip_load_only、およびbuck_comboを選択します。
    6. createをクリックします。
    これで、すべての線形座屈サブケースについて、計算されたモデルの最小座屈モードが1.0より大きくなるように制約条件が定義されます。
  6. returnをクリックし、Optimizationパネルに戻ります。

目的関数の定義

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

追加の実行パラメータの作成

座屈制約条件が効果的に保持されるよう、追加のパラメータを定義します。
  1. opti controlパネルをクリックします。
  2. MAXBUCK=を選択します。
    デフォルトでは、GBUCK=の前のボックスには、チェックマークが自動的に入ります。
  3. returnをクリックします。
これら2つのオプションにより、10までのモードが座屈制約条件内で確実に考慮されます。

最適化の実行

  1. AnalysisページからOptiStructをクリックします。
  2. save asをクリックします。
  3. Save Asダイアログで、OptiStructモデルファイルを書き出す場所を指定し、ファイル名としてtail_optと入力します。
    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はエラーメッセージも出します。エラーに関する詳細は、テキストエディタでファイル tail_opt.outを開いて確認することができます。このファイルは同じディレクトリ内に.femファイルとして書き出されます。
  9. Closeをクリックします。

結果の表示

解析サマリーファイルの確認

テキストエディタを使って、OptiStruct最適化を実行したディレクトリに進み、tail_opt.outファイルを開きます。
tail_opt.outファイルに含まれるものは以下のとおりです:
  • 有限要素モデルの概要
  • 最適化パラメータの概要
  • メモリおよびディスクスペースの推定量
  • 最適化の反復計算履歴

最適化の反復計算履歴セクション内には、各反復計算についての目的関数の値、保持された制約条件、および設計変数が含まれています。

最終反復計算には、最適化モデルの質量、最適化モデルの設計変数の値、および、最適化モデルの目的関数と保持された制約条件の値についての情報が含まれます。

反復履歴の確認

  1. Page ControlsツールバーでpageNew-24をクリックし、HyperViewクライアントで新しいページを作成します。
  2. メニューバーFile > Open > Sessionをクリックします。
    Open Session Fileウィンドウが開きます。
  3. Open Session Fileダイアログで、OptiStruct最適化を実行したディレクトリに進み、tail_opt_hist.mvwファイルを開きます。

これは、tail_opt.histファイルからの情報を用いた、反復計算番号に対する目的関数、制約条件および設計変数のプロットを生成するHyperViewセッションです。

図 14 は、反復計算に対する目的関数のプロットであるセッションのpage 1を示しています。これには、最適化プロセスを通して質量がどのように減少したか、また、質量の変化が一様である際に、収束がいかに達成されたかが示されています。

同様のプロットが、設計変数および制約条件についても得られます。また、指定した反復計算についての最大違反率を示すプロットも含まれます。この値がゼロであると、制約条件の違反はなかったことを意味します。

os_4050_obj_function
図 14.

ベースライン解析結果と最適化結果の比較

  1. メニューバーFile > New > Sessionをクリックします。
    新しいセッションが開始します。
  2. クライアントセレクターでclient_selector_iconを選択し、現在のクライアントをHyperViewに切り替えます。
  3. 操作を継続するにはYesをクリックします。
  4. Page Controlsツールバーから、ページレイアウトをpageLayout2Vertical-24に切り替え、2つのペインのビューを作成します。

    os_4050_page_layout
    図 15.
  5. 1つ目のウィンドウをクリックしてアクティブ化します。
    ウィンドウを囲む水色の枠は、それがアクティブであることを示しています。
  6. StandardツールバーからfolderResultsContours-24をクリックし、新しいモデルファイルを読み込みます。
  7. Load Model Fileダイアログで、OptiStructベースライン解析を実行したディレクトリに進み、Tail_baseline_complete.h3dファイルを開きます。
    Load modelとLoad resultsの右側入力欄にTail_baseline_complete.h3dファイルの名称と位置が表示されるようになりました。これは、Hyper3Dフォーマットにはモデルと結果データの両方が含まれているためです。
  8. Applyをクリックします。
    モデルと結果は現在のHyperViewウィンドウに読み込まれます。
  9. 2つ目のウィンドウをクリックしてアクティブ化します。
  10. StandardツールバーからfolderResultsContours-24をクリックし、新しいモデルファイルを読み込みます。
  11. Load Model Fileダイアログで、OptiStruct最適化を実行したディレクトリに進み、tail_opt_s1.h3dファイルを開きます。
    最適化については、解析結果は*_s#.h3d(静的解析結果。#はサブケースID)および*_m#.h3d(固有値解析結果。#はサブケース番号)という名称のファイルに、密度、板厚および形状結果はファイル*_des.h3dに書き出されます。
  12. 1つ目のウィンドウをアクティブにします。
  13. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  14. Result typeをDisplacement (v)に設定します。
  15. Applyをクリックします。
  16. 2つ目のウィンドウをアクティブにします。
  17. Resultsブラウザsubcase 1 (pressure only)荷重ケースと最終反復計算を選択します。

    os_4050_subcase1
    図 16.
  18. ResultsツールバーでresultsContour-24をクリックし、Contour panelを開きます。
  19. Result typeをDisplacement (v)に設定します。
  20. Applyをクリックします。

    最適化前の変位結果と最適化後の結果が並んで表示されます。全変位で値が大きく変わっている点にご注目ください。

    最適化された変位結果は、ベースラインの結果よりも大きくなっています。これは、変位の制約なしで質量を最適化したためです。

    os_4050_base_optimize
    図 17.
  21. Animationツールバーで、アニメーションモードをanimationLinear-24(Linear Static)に設定します。
  22. animationStart-24をクリックして変形をアニメーション表示します。再度クリックし、アニメーションを停止します。

同様の手順で、最適化の前後の応力および複合破壊を比較することが可能です。

複合破壊指数の最大値は設計限界の1.0近くで発生している点にご注目ください。

板厚と方向の割り当て

本ステップでは、板厚と方向を割り当てるための最適なプロパティファイルをインポートします。
  1. メニューバーFile > New > Sessionをクリックします。
  2. クライアントセレクターから、clientHyperMesh-24をクリックしてHyperMeshクライアントに切り替えます。
    これで、すべてのページを含む結果情報がすべて、クライアントからクリアされます。これは、ユーザーのハードドライブ上のファイルに影響を与えることはありません。
  3. メニューバーFile > Import > Solver Deckをクリックします。
  4. Importブラウザでfiles_panelをクリックし、最適化を実行したディレクトリからtail_opt.femファイルを開きます。
  5. Importをクリックします。
    最適化が実行された*.femHyperMeshに読み込まれます。
  6. Importブラウザでfiles_panelをクリックし、最適化を実行したディレクトリからtail_opt.propファイルを開きます。
    tail_opt.propファイルは、最適化実行の終了時にOptiStructによって作成され、モデルについての最適化されたプロパティが含まれます。
  7. インポートオプション群を展開し、FE overwriteを選択します。
  8. Importをクリックします。
  9. 2DページからパネルHyperLaminateをクリックします。
  10. HyperLaminateで、PCOMPプロパティに割り当てられた新しい板厚を確認します。