複雑な動きを /IMPDISP/FGEO で簡単に表現する方法
altair_fukuoka
Altair Employee
本記事では、下のアニメーションのように複数の節点をバラバラに強制変位で動かすときに便利な /IMPDISP/FGEO を説明します。普通の強制変位 /IMPDISP は 1軸の動きなので、複数の節点が別々の動き (別々の軸) をするときは、節点の数だけ /IMPDISP が必要になって、大変面倒です。
そこで /IMPDISP/FGEO を使います。初めに節点の移動を表現するために、バネ要素を用意しておきます。
このバネ要素は、解析に影響しないように、バネ定数 0 (K1=0) としておきます。質量 (MASS) はゼロでなければ何でも良いのですが、全体の質量に対して数ケタ小さい全体としては無視できる値にしておいた方がよいでしょう。マススケーリングの質量変化具合などが分かりにくくなるのだ。
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----| ##HWCOLOR properties 2 7 /PROP/SPRING/2 spring_zero_k # MASS sens_ID Isflag Ileng 1e-10 # K1 C1 A1 B1 D1 0.0 # fct_ID11 H1 fct_ID21 fct_ID31 fct_ID41 DeltaMin DeltaMax # F1 E1 AScale1 Hscale1
このバネのパート /PART を /IMPDISP/FGEO で指定すれば OK です。part_ID にバネ要素のパートを指定します。
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----| ##HMNAME LOADCOLS 2Impdisp_Fgeo ##HWCOLOR loadcollectors 2 20 /IMPDISP/FGEO/2 impdisp_fgeo # Ifunct part_ID Isensor 1 2 0 # Scale Tstart Tstop 0.0 #---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
関数 Ifunct はゼロで始まって 1で終わるようにしておけば、ちょうどピッタリ、バネ要素の先端に収まります。
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----| ##HWCOLOR curves 1 21 /FUNCT_SMOOTH/1 #title disp-time # X Y 0.0 0.0 0.1 1.0 #---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
バネ要素込みのアニメーションはこうなります。
この説明に使った入力データのダウンロード: fgeo.7z
1