固有振動数ついて数値計算で求めてみた【数値解析, Python】

CAE

 

こんにちは、うさじん(@Rabi_Jin_)です。

本記事は、Salome-Mecaでの固有振動数解析を行うにあたっての事前学習のような内容です。

タイトル通り固有振動数を数値計算で求めてみました。

Salome-Mecaについては以下の記事にてご参照下さい。

 

関連記事

  こんにちは、うさじん(@Rabi_Jin_)です。 タイトルにあるようにオープンソースCAEである「Salome-Meca」を自PCに導入しました。 本記事では、その導入についてご紹介します。 &n[…]

関連記事

    こんにちわ、うさじん(@Rabi_Jin_)です。 本記事は、昨日インストールしたSalome-Mecaについて、日本語化を行いました。 調べたところあまり記事がなかったため、その[…]

 

アイキャッチはStable Diffusionで生成したイラストです。
txt2imgやらimg2imgやらいろいろと試行錯誤しています。

 

固有振動数

固有振動数について

固有振動数は、その物体(もしくは構造物)がもつ揺れやすい揺れ方(振動数)です。

振動数は1秒間に揺れる回数をよび、物体の剛性に比例して大きくなり、質量に比例して小さくなります。

つまり、以下の例で例える事ができます。

  • 太く固く支持がされており、曲がりにくい構造の物体は「固有振動数が大きい」
  • 細く支持や補強がない、曲がりやすい構造の物体は「固有振動数が小さい

また、以下もいえます。

  • 重い物体は「固有振動数が小さい」ので遅く大きく揺れる

なぜ固有振動数を把握するのか、というと、
固有振動数は、外部の振動と共振することが理由にあります。

物体の特性である固有振動数が外部の振動の振動数とおなじになることで、物体の振動が何倍、何十倍にも増幅され、
最終的に、物体の破損を引き起こしてしまうケースがあります。

世の中には様々な外部振動(風、波、音、地震、機械振動)が存在します。

物体の振動の特性を把握して共振を防ぐような設計を行うことが開発者の責務でもあります。

以下に共振が起こった場合、どのようなことが起こるのかわかりやすい動画を参照しました。

<タコマ橋の崩壊>(by Youtube)

 

固有振動数の次数

物体の固有振動数は一つではありません。

最も振動数が小さく、最も大きく揺れる揺れ方を「1次」とし、

振動数が大きくなる方向へ、次に「2次」、次に「3次」とその後も次数を上げて、延々と続きます。

 

固有振動モード

物体の固有振動数はそれぞれ固有の振動モードを持ちます。(文献によっては固有モードとも言われる)

これは物体(もしくは構造物)がもつ、「揺れやすい揺れ方」の形を表しています。

例えば、振動で例えられる片持梁について、振動モードの違いは以下で表されます。

片持梁の固有振動モード

 

一概にすべての形においてこの振動モードになるとは限りません。

物体の質量、重心、断面形状によって異なりますが、おおまかに上記のように分類されます。

 

理論解について

前述の通り、振動で固有振動数を求める場合、片持梁状態である梁部材を使った振動特性を表す方程式を示します。

4階の偏微分方程式

「ρは密度」「Aは断面積」、「Eはヤング率」「Iは断面2次モーメント」を表します。

割愛しますが、この方程式を解き、固定条件である境界条件に対応した固有振動数についての公式が以下となります。

固有振動数f

「lは梁の長さ」です。「λは境界条件」に応じた定数で、以下の表で表されます。

境界条件 / 次数 1次 2次 3次
固定=自由:片持梁 1.875 4.694 7.855
支持=支持:単純梁 3.141 6.282 9.423
固定=固定 4.730 7.853 10.996

 

振動の運動方程式は以下の書籍で詳細に解説しています。

参考までにご紹介します。

 

Pythonコードによる計算

片側固定、片側自由の片持梁は以下の図となります。

各種の寸法、ヤング率、密度についてもここで決めます。

固定=自由の片持梁

 

上記の条件に従い、理論解にもとづいてPythonで計算します。

以下がコードと実行結果です。

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 = (b/1000) * (h/1000) ** 3 / 12 #断面2次モーメント

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次固有振動数
実行結果
8.254184172542319 #1次固有振動数(Hz)
51.73182280099801 #2次固有振動数(Hz)
144.86517304451925 #3次固有振動数(Hz)

まとめ

固有振動数と固有振動モード及び次数、また理論解よる固有振動数についてPythonで数値計算を行いました。

CAEにおいて、計算結果が正しいものであるかは理論解の比較検証によって行われることが多いと思います。

次回の記事でSalome-Mecaで今回の理論解との比較を行います。

また次回の記事でお会いしましょう。

 

参考

固有振動数 (こゆうしんどうすう) | CYBERNET
https://www.cybernet.co.jp/ansys/glossary/koyuushindousuu.html

オープンCAE 「Salome-Meca」構造解析「固有値」「熱伝導」解析編 | 柴田良一著 工学社

Salome-Mecaについて、ご興味の方は以下の書籍が参考になります。

CAEについて、ご興味の方は以下の書籍が参考になります。

 

CAEカテゴリ
  1. オフラインのためランキングが表示できません