こんにちは、うさじん(@Rabi_Jin_)です。
プライベートが忙しく前回記事より期間が空いてしまいました。
本記事は、オープンソースCAEソフトウェア「Salome-Meca」の固有振動数解析についてです。
以前のバージョン(~2019)までのやり方などはいくつか拝見したのですが、
2021のバージョンで固有振動数解析の実施まで行っている記事があまりなかったので記事にしてみました。
記事の内容は以下をまとめています。
- 解析条件の設定
- プリポスト(ジオメトリ、メッシュ、解析ファイルの作成)
- 解析実行
- ポスト処理(固有振動数の比較)
関連記事
こんにちは、うさじん(@Rabi_Jin_)です。 タイトルにあるようにオープンソースCAEである「Salome-Meca」を自PCに導入しました。 本記事では、その導入についてご紹介します。 &n[…]
こんにちわ、うさじん(@Rabi_Jin_)です。 本記事は、昨日インストールしたSalome-Mecaについて、日本語化を行いました。 調べたところあまり記事がなかったため、その[…]
スーツ✕白い髮がブームです。
(画像の人物は未成年ではないので喫煙を助長するものではございません。)
解析条件の設定
PCスペック
解析に使用するPCのスペックは以下です。
・製品名:Inspiron5515
・CPU:AMD Ryzen 7 5700U with Radeon Graphics 1.80 GHz
・RAM:16.00 GB
解析条件
前回記事で固有振動数の理論解を計算しました。
同条件で実施します。
こんにちは、うさじん(@Rabi_Jin_)です。 本記事は、Salome-Mecaでの固有振動数解析を行うにあたっての事前学習のような内容です。 タイトル通り固有振動数を数値計算で求めてみました。 […]
プリポスト(Salome-Mecaの操作)
Salome-Mecaを設定します。
ジオメトリの作成
Salome-Mecaを立ち上げます。
立ち上げた最初のウィンドウは以下の用になっていると思います。
なお、私が使っているSalome-Mecaは日本語化しております。
日本語化については以下の記事にて説明していますのでよかったらご参照下さい。
こんにちわ、うさじん(@Rabi_Jin_)です。 本記事は、昨日インストールしたSalome-Mecaについて、日本語化を行いました。 調べたところあまり記事がなかったため、その[…]
まずSalome-Mecaの左上のツールバーの下、メインメニューのアイコン郡のGeometory(ジオメトリ)をクリックします。
ジオメトリを立ち上げます。
ジオメトリ画面上部のツール郡から、「ボックスの作成」をクリックし、設定ウィンドウを立ち上げます。
そしてパラメータを「Dx:1000、Dy:20、Dz:10」に変更します。
その後、「適用して閉じる」をクリックします。
作成したボックスが以下です。
作成直後に「グローバルパンニング」をクリックすると作成したボックスが画面にフィット拡大されます。
拘束条件の設定
作成したボックスに拘束条件を設定します。
ボックスを作成したことで左側にあるツリーに「Box_1」が作成されました。
ツリー状のBox_1を右クリックし、グループを作成を左クリックします。
グループの設定ウィンドウが開き、内容を設定します。
設定後、「適用して閉じる」を左クリックして設定画面を閉じると以下の画面になります。
ちなみに面の拘束の方向などは後ほどせっていします。
まずは拘束する面の場所をここで設定します。
メッシュの作成
続いてMesh(メッシュ)を作成します。
以下の画面になります。
メッシュの設定ウィンドウを開き、各種設定を行います。
メッシュ作成するための前段階の準備が終わりました。
実際にメッシュを作成します。
これでメッシュは作成されましたが、解析の精度を向上させるため、
メッシュの1次要素を2次要素に変換します。
また、ジオメトリのグループとメッシュの関連づけ設定を行います。
これでメッシュの作成は完了です。
解析条件の設定
解析の準備に入ります。
ツールバー下のモジュールアイコンから「AsterStudy」を選択します。
この画面で様々な解析の設定が可能です。
今回はシンプルに解析設定ができるアシスタントウィザードを使用して設定します。
解析の種類は「Modal analysis」(固有振動数解析)を選択します。
アシスタントウィザードで設定完了後、これまでのデータを保存します。
英字のみのディレクトリに保存することを指定して下さい。
解析の設定は個々まで完了です。
この「AsterStudy」モジュールの画面のまま解析実行に移ります。
解析実行
AsterStudyモジュールのまま、ツリーの左側の「History View」を選択します。
画面の中心部にCurrent Caseを操作して解析を実行します。
解析実行フェイズはここまでです。
マークが緑色にならなかった場合はどこかの設定が間違っている可能性があります。
ポスト処理
解析結果を確認します。
固有振動数の確認
上部ツールバーから「ParaVis」モジュールを選択します。
ParaVisはポスト処理を行うライブラリソフトですが、Salome-Mecaと統合されており、様々な分析を行うことができます。
固有振動数の一覧が表示されました。
理論解と比較
理論解と解析結果を比較しました。
。。。。結果違いますね。
それもそのはずです。
理論解は断面2次モーメントを短辺方向の1方向から算出していませんでした。
解析結果は長辺方向からの固有振動数も含むため、理論解も同様に長辺方向を算出する必要があります。
理論解と比較(その2)
理論解の再計算
理論解を再計算しました。
import numpy as np
Fix1, Fix2, Fix3 = 1.875, 4.694, 7.855 #境界条件の定数
b = 20 #幅 mm
h = 10 #高さ mm
l = 1000 #長さ mm
E = 205 #ヤング率 GPa
p = 7850 #密度 kg/m^3
A = (b/1000) * (h/1000) #断面積
I = (h/1000) * (b/1000) ** 3 / 12 #断面2次モーメント 「b」と「h」を入れ替え
f1 = 1 / (2 * np.pi) * ((Fix1 ** 2) / ((l/1000) ** 2)) * np.sqrt((E * 1000 ** 3) * I / p / A) #1次固有振動数
f2 = 1 / (2 * np.pi) * ((Fix2 ** 2) / ((l/1000) ** 2)) * np.sqrt((E * 1000 ** 3) * I / p / A) #2次固有振動数
f3 = 1 / (2 * np.pi) * ((Fix3 ** 2) / ((l/1000) ** 2)) * np.sqrt((E * 1000 ** 3) * I / p / A) #3次固有振動数
print(f1) #1次固有振動数
print(f2) #2次固有振動数
print(f3) #3次固有振動数
#実行結果
16.508368345084637 #1次固有振動数
103.46364560199602 #2次固有振動数
289.7303460890385 #3次固有振動数
まとめ
理論解の再計算も考慮にいれてまとめると以下の表になります。
次数 | A:理論解 | B:解析結果 | 誤差(B/A) | 方向 |
1次 | 8.2541 | 8.2721 | 1.00 | 短辺方向の1次 |
2次 | 16.5083 | 16.525 | 1.00 | 長辺方向の1次 |
3次 | 51.7318 | 51.8187 | 1.00 | 短辺方向の2次 |
4次 | 103.4636 | 103.371 | 0.99 | 長辺方向の2次 |
5次 | 144.8651 | 145.003 | 1.00 | 短辺方向の3次 |
6次 | 289.7303 | 283.895 | 0.97 | 長辺方向の3次 |
結果を見る限り、短辺方向と長辺方向の固有振動数が交互に順に出てくるようになりました。
また、誤差もほとんどなく5次までの固有振動数は誤差1%以内に収まっています。
高周波数の帯域では傾向が変わるかもしれません。
メッシュの作成についても、2次要素で行ったため、1次要素だとまた違った結果が得られると思います。
おわりに
Salome-Meca2021の固有振動数解析(モーダル解析)をやってみました。
理論解と比較するため、再計算を行った結果、CAEの固有振動数解析は対象の方向に関係なく計算されることがわかりました。
コンター図やモード図のアニメーションを作りたかったのですが長くなりそうでしたの次回にしようと思います。
結構いろいろと設定のしがいがありそうなソフトで今後が楽しみです。
効率よく結果を分析する方法も、数こなしていくと見つけることができそうです。
今回の解析で気になったので、メッシュの1次要素でも比較してみたいです。
では、またよろしくお願いします。
参考サイト
Salome-Meca 2020の使いかたの基本(SSLV)
https://qiita.com/Jun_Tatsuno/items/f87220bbeb2ce0aaf3a7#%E5%8D%98%E4%BD%8D