Module: Num4MechaEquLib
- Defined in:
- lib/num4mechaequ.rb
Overview
数値計算による力学方程式の解法するライブラリ
Class Method Summary collapse
-
.motiEqu4freeFallEqu(m, h0, v0) ⇒ hash[]
自由落下による運動方程式(空気抵抗有り).
-
.springFreqEqu(k, m, h0, v0) ⇒ hash[]
バネの固有振動.
Class Method Details
.motiEqu4freeFallEqu(m, h0, v0) ⇒ hash[]
自由落下による運動方程式(空気抵抗有り)
54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/num4mechaequ.rb', line 54 def motiEqu4freeFallEqu(m, h0, v0) hvt = [] yi_1 = [] yi = [h0, v0] 0.step(1, @t) { |x| yi_1 = Num4SimDiffLib.rungeKuttaMethod(yi, @t, @motionFunc) hvt.push({"t" => x, "h" => yi_1[0], "v" => m * yi_1[1]}) yi = yi_1 } return hvt end |
.springFreqEqu(k, m, h0, v0) ⇒ hash[]
バネの固有振動
33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/num4mechaequ.rb', line 33 def springFreqEqu(k, m, h0, v0) @w = Math.sqrt((k / m)) hvt = [] yi_1 = [] yi = [h0, v0] 0.step(1, @t) { |x| yi_1 = Num4SimDiffLib.rungeKuttaMethod(yi, @t, @springFunc) hvt.push({"t" => x, "h" => yi_1[0], "v" => m * yi_1[1]}) yi = yi_1 } return hvt end |