Method: Num4MechaEquLib.DHM

Defined in:
lib/num4mechaequ.rb

.DHM(m, k, b, t, h0, v0) ⇒ hash[]

減衰振動(damped harmonic motion)

Examples:

m = 1.0
k = 1.0
h0 = 1.0
v0 = 0.0
yi_1 = Num4MechaEquLib.DHM(m, k, 0.6, 2, h0, v0)


215
216
217
218
219
220
221
222
223
224
225
226
227
228
# File 'lib/num4mechaequ.rb', line 215

def DHM(m, k, b, t, h0, v0)
    @l = 2 * m * b
    @w = Math.sqrt((k / m))
    hvt = []
    yi_1 = []
    yi = [h0, v0]
    0.step(t, @dt) { |x|
      yi_1 = Num4SimDiffLib.rungeKuttaMethod(yi, @dt, @DHMFunc)
      hvt.push({"t" => x, 
                "h" => yi_1[0], "v" => m * yi_1[1]})
      yi = yi_1
    }
    return hvt
end