OS-T:4095 外部応答(DRESP3)を使った寸法最適化
本チュートリアルでは、OptiStructに用意されている標準の応答をHyperMathスクリプトに渡し、スクリプトから新たに生成された応答を最適化の制約条件として使用します。
HyperMathはインタープリターであるため、ユーザーはHyperMathスクリプトをコンパイルする必要なしにカスタム応答を構築することができます。
構造モデルをHyperMeshに読み込みます。材料、シェルプロパティ、荷重および境界条件は既にモデル内に定義されています。3つのコンポーネントの板厚は設計変数として認識されます。要素58および59(穴の縁上にある要素)のフォンミーゼス応力は応答として定義され、全体積の応答も定義されます。
要素58および59のフォンミーゼス応力はHyperMathスクリプトへ入力として渡され、2つのフォンミーゼス応力の和と2つの要素のフォンミーゼス応力の平均値が返されます。
- 目的関数
- 体積の最小化
- 制約条件
- フォンミーゼス応力の和と平均フォンミーゼス応力値の制約
- 設計変数
- 3つのパートの寸法

図 1.
HyperMathの起動
HyperMeshの起動とOptiStructユーザープロファイルの設定
モデルの読み込み
最適化のセットアップ
HyperMathスクリプトライブラリのOptiStructへの付加
寸法設計変数の作成
3つのコンポーネントの板厚について設計変数は既に定義されています。要素58および59の全体積とフォンミーゼス応力の応答も、定義されています。
DRESP3バルクデータエントリは、HyperMeshの現行バージョンではサポートされていません。したがって、これらのカードはBULK_UNSUPPORTED_CARDSパネル内で定義されます。
これは、2つの外部応答、すなわち要素58および59のフォンミーゼス応力の和(SUMH)と要素58および59のフォンミーゼス応力の平均値(AVGH)を定義します。
DRESP3応答は、DRESP1応答とは異なるIDを有し、定義されているHLIBという名称のライブラリを指します。また、関数MYSUMは、dresp3_simple_h.hmlスクリプト内で同じ関数名です。
これで、DRESP3カードのHyperMathスクリプトとのリンクが完了しました。