ここでは、FrontISTRチュートリアルにて01とナンバリングされている「線形静解析 (弾性)」をRICOS Production Suiteで実行する方法について説明します。
[FrontISTR チュートリアル 01]
※ 本記事でのRICOS Production Suite のバージョンは2.0.6です。
実行する内容としては、
この3D形状の物体 (節点数 84,056、要素数 49,871) に対して、条件を設定して解析を行い (下記画面 1) 、解析結果を右記のように可視化する (下記画面 2) というものです。
また、アカウント登録の段階およびこのチュートリアルを実際に実行しても、料金は一切発生しません。是非とも気軽にお試しください。
[RICOS Production Suite のアカウント登録・ログインはこちらから]
まず、チュートリアルで使用するデータを準備します。筆者の環境は下記の通りです。また、この記事で使用しているブラウザはFirefox 95.0.2です。
$ sw_vers
ProductName: macOS
ProductVersion: 12.1
BuildVersion: 21C52
また、以下では特に断らないかぎり、
- 頭に
$
が付いている行は、コマンドラインでの入力を
...(省略)
は、実際の表示ではなく複数の行を筆者が省いたということを
表すものとします。
まず、下記の操作でFrontISTRのgithubページよりデータをダウンロードします。
$ git clone https://github.com/FrontISTR/FrontISTR
Cloning into 'FrontISTR'...
remote: Enumerating objects: 31786, done.
remote: Counting objects: 100% (2060/2060), done.
remote: Compressing objects: 100% (1112/1112), done.
remote: Total 31786 (delta 1312), reused 1592 (delta 914), pack-reused 29726
Receiving objects: 100% (31786/31786), 231.56 MiB | 8.60 MiB/s, done.
Resolving deltas: 100% (24989/24989), done.
ダウンロードが完了しました。このようなファイル構成となっています。
$ ls FrontISTR/tutorial/
01_elastic_hinge/ 04_hyperelastic_spring/ 07_viscoelastic_cylinder/ 10_contact_2tubes/ 13_dynamic_beam_nonlinear/ 16_heat_block/ 19_conrod/
02_elastic_hinge_parallel/ 05_plastic_cylinder/ 08_creep_cylinder/ 11_contact_2beam/ 14_dynamic_plate_contact/ 17_freq_beam/
03_hyperelastic_cylinder/ 06_plastic_can/ 09_contact_hertz/ 12_dynamic_beam/ 15_eigen_spring/ 18_cavity_flow/
RICOS Productin Suiteにログインした後、「ファイルセット一覧」→「新規ファイル追加」より、ファイルをアップロードできます。
※ この記事の画像において、赤色の四角は筆者が編集し追加したものです。ご注意ください。
「ファイルを選択」ボタンで、アップロードするファイルを選択します。
先ほどダウンロードしたディレクトリ内「FrontISTR → tutorial → 01_elastic_hinge」にあるhinge.mshを
$ ls FrontISTR/tutorial/01_elastic_hinge/
hecmw_ctrl.dat hinge.cnt hinge.msh
「Mesh (FrontISTR) 」としてアップロードします。
アップロードすると、次のような画面に遷移します。ここで、Pre-processorボタンを押し「実行」を選択すると、meshデータが表示されます。
マウスやトラックパッド操作によって、拡大・縮小や回転などの操作が可能です。
今回のチュートリアルでは、強制面と拘束面を指定し、それぞれに条件を付与します。
どのような条件を設定するのか、チュートリアルのページで紹介されているhinge.cnt
を確認します。下記が該当する部分です。
### Boundary Conditon
!BOUNDARY
BND0, 1, 3, 0.000000 # 拘束面1を指定
!BOUNDARY
BND1, 1, 3, 0.000000 # 拘束面2を指定
!CLOAD
CL0, 1, 0.01000 # 強制面を指定
2 つの拘束面については、座標idが1〜3の方向(つまり全ての方向)への変位を0に、強制面については 座標id=1の方向に0.01の荷重を設定します。
※座標idについては、 座標id=1, 2, 3がそれぞれ画面上のX, Y, Z軸に対応しています。
まず、穴が2つある側の、2つの穴の内側の面を拘束面として固定します。
画面右上の「Node group」を選ぶと、節点グループの一覧が見られるようになります。
その状態で条件を付与したい面をクリックすると、その面を構成している節点グループの名前が右側でグレー塗りになります 。
今回の場合は、「Body0-6_ngroup」という名前です。
グレーになっている名前をクリックし、青色になると、その面を選択できた状態となります。この状態で、下にある「Add」ボタンをクリックすると、条件を入力する画面が表示されます。
今回はこの面について座標id 1〜3のそれぞれの方向に固定します。
この場合、「condition type」は「BOUNDARY〜〜〜」を選択し、「DOF_id(from)」に「1」、「DOF_id(from)」に「3」、Valueに「0」を入力すると、上記のような設定ができたことになります。
※ また、例えば「座標id 1と3について変位を0に設定したい」場合は、同じ面に
- 「DOF_id(from)」に「1」、「DOF_id(from)」に「1」、Valueに「0」
- 「DOF_id(from)」に「3」、「DOF_id(from)」に「3」、Valueに「0」
の2種類の条件を設定することになります。
入力した状態で「set」ボタンを押下すると、入力した値が設定されます。
画面右側の「Conditions」欄に条件が入っていることが確認できます。
次に、もう片方の穴の内側の面にも同様の条件を設定します。こちらの面の名前は「Body0-7_ngroup」です。
先ほどの面と同じ内容を「set」します。これで、拘束面の設定は完了しました。
次に、もう片方の面の穴の内側=強制面に、荷重の条件を設定します。
3D形状で目的の面をクリックすると、この面の名前が「Body0-5_ngroup」であることが分かります。
この面には、先ほどとは違う条件を設定することになります。「condition type」は「CLOAD〜〜〜」を選び、「DOF_id」は「1」、「value」には「0.01」を設定します。
「Conditions」欄には、拘束面に設定した「BOUNDARY〜〜〜」ではなく「CLOAD〜〜〜」という条件が設定されています。
これで、拘束面、強制面ともに解析条件の設定が完了しました。
画面右上にある「Model name」で、今回設定した解析条件のモデルの名前を変更できます。ここでは、「hinge_test」に変更します。そして画面右上にある「Save model」ボタンを押し、遷移した画面で「実行」を選ぶと、この設定条件を記述した解析ファイルが作成されます。
この画面に遷移すると、解析の実行ができます。
また、画面下部に表示されている解析ファイルmodel.cnt
をダウンロードし、中身を確かめることもできます。
この記事では、このまま解析に進みます。「Analysis」ボタンを押すと、解析に使用するリソースを選択できます。今回は、料金の発生しない「free instance」で、他の条件も変更せずに実行します。
「free instance」では、1ノード・10分の計算時間までの計算が実行できます。
※ それ以上の計算を行いたい場合は、画面左部「ご利用情報管理」よりご利用者様の情報をご登録いただく必要がございます。ご登録いただければ、上限時間や並列数が多いノードが選択できるようになります。また、料金は計算時間によって課金されます。
ジョブの実行が始まりました。計算が終わるまで、少し時間がかかります。計算が完了していない状態では、ファイルセット情報の「種類」が「FrontISTR analysis model set」のままです。
時間をおいて画面をリロードします。今回だと 1 分程度で計算が完了します。
計算が完了すると、「種類」が「FrontISTR analysis result」に変更されます。
解析結果が完了した状態でページの下部を見てみると、複数のファイルが出力されているのが分かります。
ここからログデータなどをダウンロードして結果を確認することもできますが、この記事ではRICOS Production Suite上で視覚的に結果を確認します。
「Post processor」ボタンを押し、「実行」を選ぶと、結果を表示するためのファイルが生成され、画面に表示されます。
右部「Contour map」を変更すると、指定した値に基づいた色が塗られます。例えば、「NodalMISES_0」を選ぶと、このようになります。
右部「# of classes」の値を変更すると、着色の細かさが変更できます。他の結果と比較するときに、このように細かさを落とした方が、より違いが分かりやすいこともあります。
また、「Colour」を変更することで、着色の色付けを変更できます。
ここでは、FrontISTRのチュートリアル01をRICOS Production Suite上で実行しました。画面上の3Dデータやボタン操作のみで、チュートリアルと同じ解析条件を設定することができました。
また、上記では紹介していませんが、素材の性質や線形ソルバの設定も、RICOS Production Suite上から変更できます。
低いコストでCAEをはじめられるきっかけとして、そして RICOS が開発する独自技術の提供プラットフォームとして、今後もRICOS Production Suiteは機能追加やUI改善を行っていきます。無料である「free instance」でも様々な例が実行できますので、是非とも気軽にお試しください。
[RICOS Production Suiteのアカウント登録・ログインはこちらから]