/MONVOL/PRES の圧力-体積比関数の /FUNCT を解析途中で変更する例
始めに
Radioss のエンジンファイル (_0001.rad, _0002.rad,,,) の /FUNCT カードにて、スターターファイル (_0000.rad) で設定した /FUNCT を書き換えることができます。
https://2022.help.altair.com/2022.1/hwsolvers/rad/topics/solvers/rad/funct_engine_r.htm
注意点としては、XY データの行数を同じにする必要があることです。_0000.rad でのデータ行数が 3行なら _0001.rad 等での書き換えも 3行です。
本記事のサンプルモデルの説明
10x10x10mm の箱を用意します。で下図のような動きをさせます。
最初は圧力を発生させないので、/MONVOL/PRES が参照する関数は、こうなります。Y が圧力で、X は V0/V (V0: 最初の体積、V: 計算中のその時点での体積)
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----| /FUNCT/2 monvol_pres # X Y -1.0 0.0 0.0 0.0 1.0 0.0 #---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
これを 0.01 ~ 0.02 sec のエンジンファイル _0002.rad で次のようにします。0.01 sec 時点で体積は元の 2倍になるようにしてるので、V0/V=0.5 です。この時点で負圧を発生させれば元に戻ろうとするので 0.1 MPa とします。元の大きさでは V0/V=1.0 ですので、ここを平衡点としたいので、圧力を 0 とします。体積が半分まで縮んだら (V0/V=2) で正圧を掛けて、今度は押し返すようにします。
/FUNCT 2 0.5 -0.1 1.0 0.0 2.0 0.1
他には、圧力と体積の関係をモニタしたいので、_0000.rad には /TH/MONV を設定しました。また、強制変位 /IMPDISP を 0.01sec で開放するため Tstop=0.01 [s] を設定しています。また、箱自体に剛性があると、圧力に関係なくもとに戻ろうとしてしまうので、/MAT/VOID, /PROP/VOID で剛性の無い要素としています。
その結果、次のようになります。特になんの減衰、粘性もないので、元の大きさを中心に振動する結果となります。
/TH/MONV により、体積と圧力の履歴を HyperGraph で確認できます。0.01sec までどんなに体積が変化しても圧力ゼロです。0.01sec 以降は、/FUNCT 書き換えの通り、膨らめば負圧、縮めば正圧という挙動ができています。実際書き換えた通りの値になっているのですが、それは実際に計算を実行して確認してみてください。
本モデルのダウンロード
アルテアジャパン公式製品リンク
https://www.altairjp.co.jp/radioss/
アルテアジャパンの技術者による投稿記事リスト
https://web.altair.com/ja/technical-listing