サブモデルを使うと、モデルの回転を簡単に行うことができます。


始めに

下のような X 軸に対して引っ張っているモデルを 90度回転して Y 軸に対して引っ張るモデルに変更するにはどうしたらよいでしょうか?

横に引っ張っているモデル

 

もっとも基本的な考え方はこうなります。メッシュを回すだけではほかの条件が回らないのでそれらは作り直すことになります。

 

もしもっと複雑なモデルで、異方性材料を使っていたり、局所座標系を使ったばねがあったりすると、もっと大変な作業が必要になります。

 

そこで、ここでは、サブモデル //SUBMODEL と座標変更ツール /TRANSFORM を組み合わせるのがとても便利だということを紹介します。サブモデルは、RADIOSS モデルの中で複数のエンティティをまとめて一つのグループとすることができます。要素、節点、材料、プロパティ、座標系、境界条件、そういったたいていのエンティティをまとめることができます。詳しくはこちらです。

https://2022.help.altair.com/2022/hwsolvers/rad/topics/solvers/rad/submodel_starter_r.htm

 

座標を変更する /TRANSFORM は基本的には節点グループ単位で変更を加えるものですが、サブモデルの中身をすべて座標変更することもできます。今回は 90度回転させるので /TRANSFORM/ROT を使います。

https://2022.help.altair.com/2022/hwsolvers/rad/topics/solvers/rad/transform_rot_starter_r.htm

 

実際にやってみます

次のように設定してみます。

#RADIOSS STARTER
/BEGIN
Submodel_Test
      2022         0
                  Mg                  mm                   s
                  Mg                  mm                   s
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
//SUBMODEL/1//2022
tensile_test_model
# ID オフセットとか不要であれば、ここは空行で OK です。詳しくは HELP

# 出来上がっているモデルをインクルードという形で取り込むのが、
# 入力ファイルも見やすくて良いと思います。
# このモデルは先ほど X 方向に引っ張っていたモデルです
#include 01_mainmodel_0000.inc
//ENDSUB
#---1----|----2----|----3----|----4----|----5----|----6----|----7----|----8----|----9----|---10----|
/TRANSFORM/ROT/1
90rot_tensile_test_model
# sub_ID に //SUBMODEL の ID です。
#                    x1                      y1                   z1                       sub_ID
                      0                      0                   0                            1
# (0,0,0)->(0,0,1) つまり Z 軸に対して 90 度回転という設定です
#                      x2                    y2                   z2             angle
                      0                     0                    1                 90
/END

 

これを計算したらこうなります。

縦引っ張り

 

例題ファイルのダウンロード

submodel_transform_example01.7z

 

アルテアジャパン公式製品サイト

https://www.altairjp.co.jp/radioss/