DVPREL2, DEQATN を用いて、数式で、要素プロパティの最適化を行う例


始めに
OptiStruct の寸法最適化 (要素プロパティや、材料の値を変化させる最適化) は、通常、設計変数 = 書き換えたいプロパティ値、として使います。しかしタイトルに挙げたカードを使うことで、書き換えたいプロパティ値 = 設計変数で演算した結果値、という風にすることができます。本記事では、その例題を一つしめします。
例題
入力モデルダウンロード
このような矩形断面の梁要素を考えます。片持ち梁の問題です。
面積 A、断面二次モーメント1 I1, 断面二次モーメント2 I2 はそれぞれ
A=bh
I1=b h^3/12
I2=b^3 h\12
です。最適化で A, I1, I2 を設計変数にするのではなく、b, h を設計変数にして、A, I1, I2 は演算した値を使うようにしてみます。
実は、PBEAML という b, h を直接指定できるビーム要素特性を使えば、本記事のやり方は必要ないのですが、あくまで、良く知られている式で、簡単に検証できるということで選んでいます。
設計変数は b と h の 2個です。どちらも初期値 5, 下限上限を 1~ 10 としています。
それから A, I1, I2 の関数を 3 個用意します。
今のところ、設計変数と、関数は全く関係していない状態です。今から、これらを結び合わせて PBEAM の A, I1, I2 を書き換えるようにしてみます。
ちなみに DVPREL2 の青のところの並びと、DEQATN への引数の並び順が大事なのですが、HyperMesh では、DESVAR の ID の小さい順番で並んでしまうので、テキストエディタで並び変えたり, DEQATN 側を並び替えたりして対応してください。
最適化設定は、コンプライアンスに制約をいれて、体積最小化しています。つまり、h が増えて、b が減る、縦に細長い断面になるはずです。期待通りの結果が得られています。
Comments
-
-
リンクがうまく入りませんでした。
こちらです。
0