Ver vectores

amplitud

Ver amplitud

punto de reposo

m = 3 (slider from 2 to 8, step 0.1)
k = 2 (slider from 1 to 4, step 0.1)
O: (0, 0)
h = 3 (slider from -5 to 5)
P0: (-20, 0)
P: P0 + (h, 0)
M: (0, 0)
a: (k / m * (O - M))
Q = Point(Segment[O, (2 * O) - P])
A: abs(x(Q - O))
t0: {0, 0, 0}
t1: {0, 0, 0}
reg: {0}
regDif = If(Length[reg] ≟ 1, {reg(1)}, Sequence[reg(k) - reg(k + 1), k, 1, Length[reg] - 1])
T = mean(regDif)
t: ((t1(3) < t0(3)) * 3600) + ((t1(3) - t0(3)) * 60) + t1(2) - t0(2) + (t1(1) - t0(1)) / 1000
tt = 34
dt = 0.044
n: 50
v = (0, 0)
anima = 0 (slider from 0 to 1, step 0.001)
osci = 0
verVectores = true
sep: y(P0 - M) / n
s: 3
dis: sqrt(s^(2) - sep^(2)) / 2
T_0: ((2 * pi) * sqrt(m / k))
r: m^(1 / 3)
B: (O + Q) / 2 - (4, 10)
verAmplitud = true
i: {Polygon[P0 - (0, (2 * s)), P0 + (0, (2 * s)), P0 + (((-s)) / 2, (2 * s)), P0 + (((-s)) / 2, (-2 * s))]}
F: M + (0, 3)
l5: {Polygon[Q + (0, -1000), Q + (0, 1000), O + (0, 1000), O + (0, -1000)]}
comenzado = false
j = Segment((x(Q), y(B) + 0.1), (x(O), y(B) + 0.1))
cir = Circle(M, r)
texto1: "Amplitud: " + A + "
Período teórico MAS: " + T_0 + "''

Oscilaciones completas: " + osci + "
Período animación (media) : " + T + "''"
puntosRetorno: {Line[Q, yAxis], Line[(2 * O) - Q, yAxis]}
puntoReposo: {Line[O, yAxis]}
C: (x(O) + 0.2, 10)
i2: {Polygon[P0 + (0, (-r)), P0 + ((3 * x(O - P)), (-r)), P0 + ((3 * x(O - P)), (-r) - s / 2), P0 + (0, (-r) - s / 2)]}
muelle = CurveCartesian(t, (1.2 * sin(((20 * pi) * (t - (x(M) + 0.5)) / (x(P0) - (x(M) + 0.5))))), t, x(P0), x(M))
aux = (0, 0)