OS-T:5100 ノイバー補正法に基づいた応力の応答

本チュートリアルでは、ノイバー補正法に基づいた形状最適化を行い、形状を変化させることによってフィレット領域の応力集中を低減する方法を説明します。

ノイバー補正法に基づいた形状最適化について、演習では下記を行います:
  • HyperMeshでの目的関数、制約条件および設計変数のセットアップ
  • OptiStructでのジョブのサブミット
  • HyperViewでの結果の可視化
Figure 1は、本チュートリアルに用いられる構造モデルを示しています。このチュートリアルでは、1次テトラ要素を使用してモデル化され、特定の位置に荷重が付与された対称形状のバルブのハーフモデルを用います。形状IDがHyperMorphを用いて作成され、Shape設計変数が作成されます。静的応力応答は、ノイバー補正を用いて作成され、質量の変化を最小化するための式で定義された質量応答が作成されます。1つの設計制約条件が、静的ストレス応答のために定義されています。


図 1. モデルと荷重の詳細
本チュートリアルにおける最適化問題の設定は以下の通りです:
目的関数
質量の変化の最小化
制約条件
ノイバー補正を用いて、バルブへの応力応答を330 MPa未満の値に変更
設計変数
形状設計変数

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

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

モデルのオープン

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

モデルのセットアップ

プロパティの作成

ここでは、Valveがソリッドパートであるため、プロパティを割り当てます。

  1. Modelブラウザ内で右クリックし、Create > Propertyを選択します。
  2. NameにPSOLIDと入力します。
  3. Card Imageには、PSOLIDを選択します。
  4. MaterialにAluminumを選択します。
  5. Modelブラウザ、ComponentフォルダーからValveを右クリックし、AssignでプロパティPSOLIDを割り当てます。

FORCE荷重コレクターの作成

まず対象コンポーネントを単独表示させ、次に荷重を付与します。

  1. Modelブラウザでコンポーネントaxisを右クリックしてisolate onlyを選択します。
  2. Modelブラウザで右クリックし、Create > Load Collectorを選択します。
  3. NameにForceと入力します。
  4. メニューバーBCs > Create > Forcesをクリックします。
  5. トグルでnodesに切り替え、AXIS要素(RBE2要素)の中心節点を選択します。
  6. 下の図に示す値を割り当てます。


    図 2. 荷重の付与
  7. Createをクリックします。

SPC荷重コレクターの作成

  1. Modelブラウザで右クリックし、Create > Load Collectorを選択します。
  2. NameにSPCと入力します。
  3. メニューバーからBCs > Create > Constraintsをクリックします。
  4. 1つ目のドロップダウンでnodesに切り替え、2つ目のドロップダウンメニューでfacesを選択します。
  5. dof2のみを選択し、他のすべての自由度の選択を解除してCreate.をクリックします。
  6. Valveのside faceを選択し、dof1dof2およびdof3のみを選択します。
  7. Createをクリックします。
  8. 同様にして、Valveの他のside facesを選択し、dof1およびdof2のみを選択します。


    図 3. 制約条件の付与

荷重ステップの作成

  1. Modelブラウザ内で右クリックし、Create > Load Stepを選択します。
    デフォルトの荷重コレクターがエンティティエディターに表示されます。
  2. Nameに Staticと入力します。
  3. Typeにドロップダウンメニューからlinear staticを選択します。
  4. SPCにSPCを選択します。
  5. load definitionにforceを選択します。

設計の式の作成

  1. Analysisページからパネルoptimziation > dequationsをクリックします。
  2. dequation =欄にDeltaと入力します。
  3. edit equation欄にdelta(x)=x-9.892e-02と入力します。


    図 4. 設計の式
  4. Createをクリックします。
    注: Delta(x)は質量で変化します。ここで、xは形状変化に対する実際の質量を表し、バルブの質量は9.892e-02 kgです。
  5. Tools > mass Calc > compsを選択し、valveを選択し、calculateをクリックします。


    図 5. バルブの質量

形状最適化設計変数の作成

  1. Analysisページからパネルoptimization > shapeをクリックします。
  2. desvarサブパネルに切り替えます。
  3. desvar =に設計変数の名称としてVariableと入力します。
  4. shape =にFillet_shapeを選択します。
  5. lower boundに0、upper boundに1と入力します。
  6. createreturnをクリックします。


    図 6. 寸法設計変数の作成
    注: Valveの形状の潜在的なばらつきは、フィレット半径が大きくなるほど大きくなります。

最適化の応答の作成

Mass応答タイプの作成

  1. Analysisページからパネルoptimization > responsesをクリックします。
  2. response =にMassと入力します。
  3. ドロップダウンで、response typemassを選択し、returnをクリックします。


    図 7. Mass応答

Static Stress応力タイプの作成

  1. Analysisページからパネルoptimization > responsesをクリックします。
  2. response =にNeuberと入力します。
  3. ドロップダウンメニューからresponse typestatic stressを選択します。
  4. elems > by collector > Valveをクリックします。
  5. 下の図に示すとおり、neuber correctionを選択します。


    図 8. Static Stress応答
  6. createをクリックします。

Function応答タイプの作成

  1. Modelブラウザで、Optimization Viewを選択します。
  2. 右クリックし、Window > Create > Responsesを選択します。
  3. NameにDelta_Responseと入力します。
  4. Functionで、Response typeを選択します。
  5. Function IDに、前のステップで作成されたDequationであるDeltaを選択します。
  6. Response Listを展開し、MassとしてOptiresponseを選択します。


    図 9. Function応答タイプ
    注: 質量変化応答を作成するために、ここでFunction応答を使用します。

設計制約条件の作成

  1. dconstraintsパネルをクリックします。
  2. constraints=欄にConstraintsと入力します。
  3. response typeをクリックし、static stressの応答タイプであるneuberを選択します。
  4. loadstep 1 - Staticを選択します。
  5. upper boundをクリックし、値330を入力します。

目的関数の定義

  1. objectiveパネルをクリックします。
  2. が選択されていることを確認します。
  3. response typeをクリックしDelta_Responseを選択します。
  4. Createをクリックします。

SHAPEカードの定義

デフォルトでは、変位と応力の結果のみが.h3dファイルに得られます。HyperViewで、モデルに加えられた形状変化に重ねて変位 / 応力結果を見るためには、SHAPEカードを定義する必要があります。

  1. Analysisページからパネルcontrol cardsをクリックします。
  2. Card Imageダイアログで、SHAPEをクリックします。
  3. FORMATをH3Dに設定します。
  4. TYPEをALLに設定します。
  5. OPTIONをALLに設定します。
  6. returnを2回クリックし、メインメニューに戻ります。

最適化の実行

  1. AnalysisページからOptiStructをクリックします。
  2. save asをクリックします。
  3. Save Asダイアログで、OptiStructモデルファイルを書き出す場所を指定し、ファイル名としてneuber_based_opimizationと入力します。
    OptiStruct入力ファイルには、拡張子 .femが推奨されます。
  4. Saveをクリックします。
    入力ファイル欄には、Save Asダイアログで指定されたファイル名と場所が表示されます。
  5. export optionsのトグルをallにセットします。
  6. run optionsのトグルをoptimizationにセットします。
  7. memory optionsのトグルはmemory defaultにセットします。
  8. OptiStructをクリックして最適化を実行します。
  9. Closeをクリックします。

結果の表示

最適化された形状でのコンタープロットをHyperViewで確認する方法について以下に示します。

ノイバー修正法を用いてモデル内の変形形状、応力を確認することは有益です。

  1. OptiStructパネルから、HyperViewをクリックします。
    HyperViewが起動され、結果が読み込まれます。HyperViewにモデルと結果が正しく読み込まれたことを示すメッセージウィンドウが現われます。
  2. Resultsタブに移動します。
  3. Resultsタブで、最終反復計算結果であるIteration 23を選択します。


    図 10. 反復計算の選択
  4. ResultsツールバーでresultsContour-16をクリックし、Contour panelを開きます。
  5. Result typeをShape change (v)にセットし、Applyをクリックして要素コンターを表示させます。


    図 11. 形状変化の結果
  6. Result typeをNeuber stressに設定します。
  7. Applyをクリックします。


    図 12. 要素の応力結果
  8. 新しいHyperViewウィンドウを開き、File > Open > Sessionを選択します。
  9. <filename>_hist.mwvを選択し、形状変更後の質量の変化と最適化された質量を確認します。


    図 13. セッションのプロット結果
  10. 目的関数と全質量のプロット結果を確認します。


    図 14. 目的関数と全質量のプロット