弾性体、プロパティファイル、カーブなどのMotionViewのインクルードファイルを含む最適化方法
概要
MotionViewのモデルファイル(.mdl)にはCMS弾性体、AutoEntityのプロパティファイル、Curve Entityのcsvファイルなどの参照ファイルが含まれます。
HyperStudyでMotionViewのモデルを最適化する場合、これらの参照ファイルは相対パス設定を用いても、常に元ファイルと同じファイルを参照します。
たとえば、元のMotionViewのモデルでmdlと同じフォルダにあるCMS弾性体を相対パスで下記のように設定します。
しかし、HyperStudyでパラメータ変更すると、参照ファイルのパスは下記のように変更され、相対パスではありますが、元のCMS弾性体を参照したままです。
そのため、CMS弾性体、AutoEntityのプロパティファイル、Curve Entityのcsvファイルの中の値を設計変数とすることができません。
そこで、今回は、CMS弾性体、AutoEntityのプロパティファイル、Curve Entityのcsvファイルの中の値を設計変数とする方法を紹介します。
本記事で使用するモデル一式はこちらです。
mdlファイルのパスの設定
MotionViewにはMODEL.Solver_Filename.pathという変数があり、これを使用すると明示的にmdlファイルがあるフォルダパスを取得できます。
MotionViewのGUIからは設定できませんので、mdlファイルをテキストエディタで以下のようにファイルパスを編集してください。
MODEL.Solver_Filename.path + "sample_plate_flex.h3d"
MODEL.Solver_Filename.path + "bushing.bus"
MODEL.Solver_Filename.path + "curve.csv"
MotionViewで開くと、mdlファイルと同じ階層にあるので、ファイル名のみ表示されます。
HyperStudyで設計変数作成
HyperStudyでパラメータ化したいファイル毎にモデルを追加してください。
今回は4ファイル(CMS弾性体作成のソルバーデック.fem、AutoBushingのプロパティファイル、カーブのcsvファイルおよびMotionViewのmdlファイル)です。
cmsはOptiStructを実行し、cms弾性体のh3dファイルを作成します。
AutoBushingのプロパティファイル、カーブのcsvファイルは値を書き換えるだけですので、ソルバー実行は無しです。
最後にMotionViewのモデルでMotionSolveを実行します。
本例では、cms弾性体の板厚、AutoBushingのプロパティファイルの減衰係数、カーブの値、MotionViewの加振振幅を設計変数としました。
モデルリソースの設定
モデルをテストで1~3のモデルを一度実行すると、出力ファイルが生成されます。
モデルリソースの出力ファイルを追加して、モデル1~3の出力ファイル(.h3d、.bus、.csv)をモデル4にコピーします。
これで、モデル4にパラメータ変更したCMS弾性体ファイル、AutoBushingのプロパティファイル、カーブのcsvファイルが揃いますので、
モデル4でMotionSolveを実行すれば、すべての参照ファイルが更新された状態で計算することができます。
解説動画はこちらです。
使用ソフト:Altair MotionSolve/MotionView, Altair OptiStruct, Altair HyperStudy