Oscilaciones

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 24

UNIVERSIDAD NACIONAL AUTÓNOMA DE HONDURAS

UNAH-VS
Herramientas Computacionales Para Fı́sica
Osciladores
Guı́a elaborada por: Ms.C. Marco Antonio Reyes Pagoada

1. Objetivos
1. Estudiar el sistema oscilatorio masa-resorte.

2. Calcular y graficar cantidades de interés en el M.A.S. con Octave.

3. Estudiar el sistema masa-resorte con amortiguamiento proporcional a la velocidad.

4. Calcular y graficar las diferentes ecuaciones de posición con amortiguamiento.

5. Estudiar el sistema masa-resorte con fuerza impulsora externa y con amortiguamiento.

6. Estudiar osciladores no lineales con enfoque numérico con RK4.

2. Oscilador Armónico Simple: MAS


Los fenómenos oscilatorios están presentes en la naturaleza, de lo microscópico en los áto-
mos que oscilan en una red cristalina, hasta lo macroscópico con el movimiento repetitivo de
planetas y satélites. En nuestra vida cotidiana, observamos péndulos o piezas de motores que
realizan movimientos oscilatorios, de ahı́ la importancia de identificar, entender y modelar estos
fenómenos. Quizá el modelo más fácil de visualizar, es el de un bloque de masa m que descansa
sobre una superficie sin fricción, la cual esta conectada por un resorte que obedece a la ley de
Hooke y este a la vez tiene un extremo fijo, como muestra la figura 1.

En la figura 1, el resorte esta en su posición de equilibrio, o sea que no esta estirado ni


comprimido, tiene su longitud natural, si tomamos la masa y la movemos a la derecha y la
soltamos, la masa va moverse de izquierda a derecha y viceversa simétricamente con respecto
a x = 0. En una posición x cualquiera de la masa, la masa siente la fuerza de restitución que
trata de enviarla a la posición de equilibrio, aplicando la segunda ley de Newton, se tiene:
X d2 x
Fx = max , −kx = max , −kx = m (1)
dt2
dividiendo entre m la última ecuación y agrupando en un lado, se tiene

d2 x k d2 x
2
= − x, = −ω 2 x (2)
dt m dt2

1
La ecuación (2) es la ecuación dinámica o ecuación caracterı́stica del movimiento armónico
simple (M.A.S.), esta es una ecuación diferencial ordinaria lineal de segundo orden, la solución
de esta ecuación x = x(t) es una función que nos permite predecir la posición de la masa para
cualquier tiempo, es natural que la solución sea una función sinusoidal, ya que estas funciones
son periódicas, una posible solución es

x(t) = A cos(ωt + ϕ) (3)


donde A es la amplitud, esto es la distancia mas grande de la masa, respecto a x = 0, ω es la
frecuencia angular, que a la vez se puede escribir ası́

ω = 2πf = (4)
T
donde T es el periodo, el tiempo que le toma a la masa dar una oscilación completa, f es la
frecuencia, esto es el número de oscilaciones por unidad de tiempo. Para un oscilador particular,
la ecuación (3) queda completamente determinada al calcular la amplitud y el ángulo de fase
ϕ, las cuales dependen de las condiciones iniciales, esto es la posición y velocidad de la masa
en el tiempo t = 0, x = x0 , v = v0 . Aplicando las condiciones iniciales a la ecuación (3) se tiene
r
v2
 
−v 0
ϕ = tan−1 , A = x20 + 02 (5)
ωx0 ω
Otro aspecto interesante es que la energı́a mecánica es constante, ya que no hay pérdida de
energı́a. La energı́a mecánica es
1 1
E = Kc + U = mv 2 + kx2 (6)
2 2
donde Kc es la energı́a cinética y U es la energı́a potencial elástica, derivando la ecuación (3)
respecto al tiempo obtenemos la velocidad
dx
v= = −Aωsen(ωt + ϕ) (7)
dt
reemplazando x y v en (6) se tiene
1 1
E = mA2 ω 2 sen2 (ωt + ϕ) + kA2 cos2 (ωt + ϕ) (8)
2 2
de la ecuación (2) sabemos que
k
ω2 = (9)
m
Al reemplazar la ecuación (8) en (7) se obtiene
1
E = kA2 (10)
2
lo cual demuestra que la energı́a mecánica es constante, aunque la energı́a cinética y potencial
estén cambando E no cambia.
Con Octave podemos calcular fácilmente las constante A y ϕ, ası́ construir la ecuación de posi-
ción, velocidad y aceleración para cualquier tiempo, ademas podemos observar como cambian
las energı́as, consideremos el siguiente ejercicio.

Ejercicio 1: una masa de 5 kg, esta conectada a un resorte de constante elástica de 20


N/m, como en la figura 1. En t = 0, x = 1 m, v = 2 m/s, encuentre (a) la ecuación de posición
x = x(t), (b) la ecuación de la velocidad v = v(t), (c) la ecuación de aceleración a = a(t), (d)

2
las gráficas de x vr t, v vs t, a vs t, (c) muestre gráficamente como cambia la energı́a cinética
y potencial ası́ como la energı́a total en un periodo completo. El siguiente script, realiza todos
los cálculos

1 clc,clear;
2 disp(’==========================================================’)
3 disp(’Exploracion del movimiento armonico simple’);
4 disp(’del sistema masa-resorte, resorte que obedece’);
5 disp(’la ley de Hooke’);
6 disp(’===========================================================’);
7 disp(’Condiciones iniciales y valores de las constantes: ’);
8 xo=input(’Ingrese la posicion inicial de la masa: ’);
9 vo=input(’Ingrese la velocidad inicial inicial de la masa: ’);
10 k=input(’Ingrese la constante del resorte: ’);
11 m=input(’Ingrese la masa: ’);
12 disp(’============================================================’);
13 disp(’Resultados:’);
14 w=sqrt(k/m); % frecuencia angular
15 A=sqrt(xo*xo+(vo/w)^2); % amplitud
16 phi=atan(-vo/(w*xo));
17 E=0.5*k*A^2.;
18 T=(2*pi)/w;
19 fprintf(’La frecuencia angular es w=%5.3f rad/s\n’,w);
20 fprintf(’El periodo es T=%5.3f seg\n’,T);
21 fprintf(’La amplitud es A=%5.3f metros\n’,A);
22 fprintf(’El angulo de fase es phi=%5.3f rad\n’,phi);
23 fprintf(’x=x(t), es x=%5.3f cos(%5.3f t+%5.3f)metros\n’,A,w,phi);
24 fprintf(’vx=vx(t), es vx=-%5.3f sen(%5.3f t+%5.3f)m/s\n’,A*w,w,phi);
25 fprintf(’ax=ax(t), es ax=-%5.3f cos(%5.3f t+%5.3f)m/s^2\n’,A*w*w,w,phi);
26 fprintf(’La energia mecanica es E=%5.3f J\n’,E);
27 disp(’===============================================================’);
28 t=0:0.02:T;
29 x=A*cos(w*t+phi);
30 vx=-A*w*sin(w*t+phi);
31 ax=-A*w*w*cos(w*t+phi);
32 Ek=0.5*m*vx.^2;
33 Ep=0.5*k*x.^2;
34 Et=Ek+Ep;
35 subplot(2,2,1)
36 plot(t,x)
37 xlabel(’Tiempo (seg)’);
38 ylabel(’x (metros)’);
39 title(’Posicion vs tiempo’);
40 subplot(2,2,2)
41 plot(t,vx)
42 xlabel(’ Tiempo (seg)’);
43 ylabel(’Velocidad (m/s)’);
44 title(’Velocidad vs tiempo’);
45 subplot(2,2,3)
46 plot(t,ax)
47 xlabel(’Tiempo (seg)’);
48 ylabel(’a (m/s^{2})’);

3
49 title(’Aceleracion vs tiempo’);
50 subplot(2,2,4)
51 plot(t,Ek,t,Ep,t,Et)
52 xlabel(’Tiempo (seg)’);
53 ylabel(’Ek, Ep, Et (Joule)’);
54 legend(’Ek’,’Ep’,’Et’);
55 title(’ Ek vs t, Ep vs t, Et vs t’);

al correr al programa nos vamos a la ventana de comando en Octave e ingresamos las condicio-
nes iniciales y las constantes, inmediatamente, el programa genera lo siguiente:

===========================================================
Exploracion del movimiento armonico simple
del sistema masa-resorte, resorte que obedece
la ley de Hooke
===========================================================
Condiciones iniciales y valores de las constantes:
Ingrese la posicion inicial de la masa: 1
Ingrese la velocidad inicial inicial de la masa: 2
Ingrese la constante del resorte: 20
Ingrese la masa: 5
============================================================
Resultados:
La frecuencia angular es w=2.000 rad/s
El periodo es T=3.142 seg
La amplitud es A=1.414 metros
El angulo de fase es phi=-0.785 rad
x=x(t), es x=1.414 cos(2.000 t+-0.785)metros
vx=vx(t), es vx=-2.828 sen(2.000 t+-0.785)m/s
ax=ax(t), es ax=-5.657 cos(2.000 t+-0.785)m/s^2
La energia mecanica es E=20.000 J
===============================================================

4
En las gráficas de las energı́as, se puede apreciar como cambian las energı́a, cuando la cinéti-
ca crece la potencial disminuye, pero su suma permanece constante.

3. Oscilador Amortiguado
El movimiento del oscilador armónico simple discutido en la sección anterior es idealizado,
en realidad el resorte tiene masa ası́ como fricción interna. Un resorte real no es un cuerpo
puramente elástico, ası́ algo de la energı́a del sistema es disipada por fricción internamente.
Adicionalmente el aire que rodea a la masa, es una fuente de fricción y provoca que la energı́a
mecánica no se conserve. Pensemos que el resorte no tiene masa y la masa de estudio esta
sumergida en un fluido, figura 2, la masa en el fluido experimenta una fuerza retardadora pro-
porcional a la velocidad Fa = −bv

La segunda ley de Newton para este sistema es

d2 x dx
max = −kx − bvx , m 2
= −kx − b (11)
dt dt
La frecuencia para el sistema anterior es
r
k b2
ωa = − (12)
m 4m2
De la ecuación (12) nos damos cuenta que hay varias posibilidades con este oscilador.

3.1. Sub-amortiguamiento
Esto ocurre cuando k/m > b2 /4m2 , la solución general para este caso es

x(t) = Ae−γt sen(ωa t + θ) (13)


donde γ ≡ b/2m, A y θ dependen de las condiciones iniciales, en t = 0, x = x0 , v = v0
s  2
v0 + γx 0
A = x20 + (14)
ωa
 
−1 ωx0
θ = tan (15)
v0 + γx0

5
Ejemplo 2: Consideremos una masa de 0.05 kg que se mueve en un fluido que tiene asociada
una constante de amortiguamiento de b=0.08 kg/s, la masa esta conectada a un resorte con
constante de fuerza k = 1 N/m. Al inicio x = 1 m y v = 5 m/s. Encontremos la ecuación de
posición x = x(t) y graficar la ecuación.
El siguiente programa, le solicita las condiciones iniciales y las constantes, al correr el programa
se genera un reporte y la gráfica de x = x(t)

1 clc,clear
2 display(’======================================================’);
3 display(’Se estudia el movimiento oscilatorio amortiguado’);
4 display(’======================================================’);
5 display(’Condiciones iniciales y constantes: ’);
6 xo=input(’Ingrese la posicion inicial, xo: ’);
7 vo=input(’Ingrese la velocidad inicial, vo: ’);
8 m=input(’Ingrese la masa, m: ’);
9 k=input(’Ingrese la constante del resorte, k: ’);
10 b=input(’Ingrese la constante de amortiguamiento, b: ’);
11 display(’=========================================================’);
12 display(’Resultados: ’);
13 wo=sqrt(k/m);
14 gama=b/(2*m);
15 disc=wo^2-gama^2;
16 t=0:0.05:6;
17 if (disc>0)
18 wa=sqrt(disc);
19 a1=sqrt(xo^2+((vo+gama*xo)/wa)^2);
20 theta=atan((wa*xo)/(vo+gama*xo));
21 display(’el oscilador es sub-amortiguado: ’);
22 fprintf(’x=x(t) es x=%5.3f exp(-%5.3f t)sen(%5.3f t+%5.3f) \n’,a1,gama,wa,theta);
23 x=a1*exp(-gama*t).*sin(wa*t+theta);
24 plot(t,x)
25 xlabel(’t (seg)’);
26 ylabel(’ x (m) ’);
27 title(’x vs t del oscilador subamortiguado’);
28 return
29 elseif (disc<0)
20 gama1=gama-sqrt(gama^2-wo^2);
21 gama2=gama+sqrt(gama^2-wo^2);
22 c1=xo-(vo+gama1*xo)/(gama1-gama2);
23 c2=(vo+gama1*xo)/(gama1-gama2);
24 display(’El oscilador esta sobre-amortiguado’);
25 fprintf(’x=x(t) es x=%5.3f exp(-%5.3f t)+%5.3f exp(-%5.3f t)\n’,c1,gama1,c2,gama2);
26 x=c1*exp(-gama1*t)+c2*exp(-gama2*t);\
27 plot(t,x)
28 xlabel(’t (seg)’);
29 ylabel(’ x (m) ’);
30 title(’x vs t del oscilador sobreamortiguado’);
31 return
32 elseif (disc==0)
33 b1=xo;
34 b2=vo+gama*xo;
35 display(’El oscilador esta criticamente amortiguado’);

6
36 fprintf(’x=x(t) es x=%5.3f exp(-%5.3f t)+%5.3f t exp(-%5.3f t)\n’,b1,gama,b2,gama);
37 x=b1*exp(-gama*t).+b2*t.*exp(-gama*t);
38 plot(t,x)
39 xlabel(’t (seg)’);
40 ylabel(’ x (m) ’);
41 title(’x vs t del oscilador criticamente amortiguado’);
42 return
43 else
44 end
45 fprintf(’La frecuencia natural es %5.2f\n’,wo);
46 display(’=========================================================’);

después de correr el programa nos vamos a la ventana de comando, ahı́ se nos preguntan las
condiciones iniciales y las constantes y a continuación se genera un reporte que incluye la ecua-
ción de posición y la gráfica de posición vs tiempo

======================================================
Se estudia el movimiento oscilatorio amortiguado
======================================================
Condiciones iniciales y constantes:
Ingrese la posicion inicial, xo: 1
Ingrese la velocidad inicial, vo: 5
Ingrese la masa, m: 0.05
Ingrese la constante del resorte, k: 1
Ingrese la constante de amortiguamiento, b: 0.08
=========================================================
Resultados:
el oscilador es sub-amortiguado:
x=x(t) es x=1.655 exp(-0.800 t)sen(4.400 t+0.649)

7
3.2. Amortiguamiento crı́tico
Esto ocurre cuando k/m = b2 /(4m2 ), la solución general es

x(t) = c1 e−γt + c2 te−γt (16)


c1 y c2 son constantes que se determinan con las condiciones iniciales

c1 = x 0 , c2 = v0 + γx0 (17)
Ejemplo 3: una masa de 0.25 kg, esta conectada a un resorte que tiene una constante de
fuerza, k = 4 N/m, y la fuerza de amortiguamiento es Fa = −2v. Si la masa inicialmente esta
en la posición de equilibrio y se mueve hacia la izquierda con 3 m/s. Encontrar la ecuación de
posición y su gráfica.
Con el mismo programa del ejemplo 2 se trabaja, al correr el programa con las condiciones
iniciales y constantes del problema se obtiene.

======================================================
Se estudia el movimiento oscilatorio amortiguado
======================================================
Condiciones iniciales y constantes:
Ingrese la posicion inicial, xo: 0
Ingrese la velocidad inicial, vo: -3
Ingrese la masa, m: 0.25
Ingrese la constante del resorte, k: 4
Ingrese la constante de amortiguamiento, b: 2
=========================================================
Resultados:
El oscilador esta criticamente amortiguado
x=x(t) es x=0.000 exp(-4.000 t)+-3.000 t exp(-4.000 t)

8
3.3. Sobre-amortiguamiento
En este caso se cumple que k/m < b2 /(4m2 ), la solución de la ecuación diferencial es
x(t) = a1 e−γ1 t + a2 e−γ2 t (18)
con
s 2 s 2
b b k b b k
γ1 = − − , γ2 = + − (19)
2m 2m m 2m 2m m
y a1 y a2 , se obtienen con las condiciones iniciales

(v0 + γ1 x0 ) v0 + γ1 x0
a1 = x 0 − , a2 = (20)
γ1 − γ2 γ1 − γ2
Ejemplo 4: consideremos que el oscilador tiene una masa de 0.05 kg, k = 1 N/m, b =0.5 kg/s,
x0 = 1, v0 = 5 m/s. Determinar el tipo de amortiguamiento, la ecuación de posición de la masa
y la gráfica de x vs t.
Utilizamos el mismo programa, con el cual se obtiene lo siguiente:

======================================================
Se estudia el movimiento oscilatorio amortiguado
======================================================
Condiciones iniciales y constantes:
Ingrese la posicion inicial, xo: 1
Ingrese la velocidad inicial, vo: 5
Ingrese la masa, m: 0.05
Ingrese la constante del resorte, k: 1
Ingrese la constante de amortiguamiento, b: 0.5
=========================================================
Resultados:
El oscilador esta sobre-amortiguado
x=x(t) es x=2.736 exp(-2.764 t)+-1.736 exp(-7.236 t)

9
4. Oscilador Forzado
El motor gira con una frecuencia angular impulsora ω = ωi y esta fuerza externa puede ser
aproximada como Fe xt = F0 cos(ωi t + θ), donde θ es un ángulo que depende de las condiciones
iniciales

La segunda ley de Newton para este problema es

d2 x dx
m 2
= −kx − b + F0 cos(ωi t + θ) (21)
dt dt
al resolver la ecuación diferencial, se obtiene lo siguiente

xp = Bcos(ωi t + ϕ) (22)
La ecuación (22) es la solución asociada a la fuerza externa y se le suele llamar solución parti-
r
k
cular, donde A depende de la frecuencia impulsora y la frecuencia natural del sistema ω0 =
m
(F0 /m)
B=p (23)
(2γwi )2 + (ω02 − ωi2 )
y ϕ es
 
−1 2γωi
ϕ = θ − tan (24)
ω0 − ωi2
2

donde θ, esta determinada por la ecuación (15), la solución de la ecuación (21) asociada a la
fuerza del resorte y la fuerza de amortiguamiento, considerando subamortiguamiento, ya sabe-
mos cual es la solución, esto es la ecuación (13) y se le llama solución de la parte homogénea.
La solución general es

x(t) = Ae−γt sen(ωa t + θ) + Bcos(ωi t + ϕ) (25)


Una cantidad muy importante es la potencia absorbida por el sistema, proporcionada por la
fuerza externa
dxp
P = Fext v = F0 cos(ωi t + ϕ) (26)
dt
La ecuación (26) es la potencia instantánea absorbida, en la mayor parte de los casos interesa
la potencia media, al promediar la ecuación (26) se obtiene

1 T
Z
AF0 ωi
Pmed = P (t)dt = sen(φ), donde φ=θ−ϕ (27)
T 0 2
Ejemplo 5: consideremos un oscilador con una masa de 0· 55 kg, constante del resorte 0· N/m,
amortiguamiento con b = 0· 5 kg/s, la masa esta conectada a un motor, la amplitud de esta
fuerza externa es F0 = 0· 5 N y su frecuencia es ωi = 0· rad/s. Calculemos las cantidades aso-
ciadas a la solución general, la gráfica de posición versus tiempo y la potencia media absorbida

10
por el sistema.
El siguiente programa, realiza todos los cálculos

1 clc,clear;
2 disp(’=============================================================’)
3 disp(’Exploracion del sistema oscilatorio: masa-resorte’);
4 disp(’con amortiguamiento, y conectado a un motor que proporciona’);
5 disp(’una fuerza impulsora periodica, Fe=Fo cos(wi*t+theta)’);
6 disp(’===========================================================’);
7 disp(’Condiciones iniciales y valores de las constantes: ’);
8 xo=input(’Ingrese xo: ’);
9 vo=input(’ Ingrese vo: ’);
10 k=input(’Ingrese la constante del resorte: ’);
11 m=input(’Ingrese la masa: ’);
12 b=input(’Ingrese la constante de amortiguamiento: ’);
13 Fo=input(’Ingrese la amplitud de la fuerza impulsora: ’);
14 wi=input(’La frecuencia de la fuerza impulsora: ’);
15 disp(’============================================================’);
16 disp(’Resultados:’);
17 wo=sqrt(k/m); % frecuencia angular
18 gama=b/(2*m);
19 disc=wo^2-gama^2;
20 wa=sqrt(disc); % frecuencia con amortiguamiento
21 if disc<=0;
22 disp(’b debe ser mas pequena’);
23 return;
24 end
25 theta=atan(wa*xo/(vo+gama*xo));
26 B=sqrt(xo^2+(vo+gama*xo)^2/wa^2);
27 A=(Fo/m)/sqrt((2*gama*wi)^2+(wo^2-wi^2)^2); % amplitud
28 phi=theta-atan(b*wi/(m*(wo^2-wi^2)));
29 dang=atan(b*wi/(m*(wo^2-wi^2)));% diferencia de angulos
30 Pm=0.5*A*Fo*wi*sin(dang);
31 fprintf(’La frecuencia natural es wo=%5.3f rad/s\n’,wo);
32 fprintf(’La frecuencia del oscilador amortiguado es wa=%5.3f rad/s\n’,wa);
33 fprintf(’La amplitud es A=%5.3f metros\n’,A);
34 fprintf(’El angulo de fase del termino transitorio: theta=%5.3f rad\n’,theta);
35 fprintf(’El angulo de fase del termino estable: phi=%5.3f rad\n’,phi);
36 fprintf(’x=x(t), es x=%5.3f exp(-%5.3f t) sen(%5.3f t+%5.3f)+%5.3f cos(%5.3f t+%5.3f)
38 disp(’===============================================================’);
39 dt=0.01;
40 ni=200;
41 xt=@(t)B*exp(-gama*t)*sin(wa*t+theta);
42 xe=@(t)A*cos(wi*t+phi);
43 for i=1:ni
44 t(i)=(i-1)*(150/ni);
45 x(i)=xt(t(i))+xe(t(i));
46 x2(i)=xe(t(i));
47 x1(i)=xt(t(i));
48 end
49 subplot(2,2,1)

11
50 plot(t,x1)
51 xlabel(’t (seg)’);
52 ylabel(’x_{t} (m)’);
53 title(’Solucion transitoria: x_{t} vs t’);
54 subplot(2,2,2)
55 plot(t,x2)
56 xlabel(’t (seg)’);
57 ylabel(’ x_{F} (m)’);
58 title(’Solucion asociada a la fuerza impulsora: x_{F} vs t’)
59 subplot(2,2,3)
60 plot(t,x)
61 xlabel(’t (seg)’);
62 ylabel(’ x (m)’);
63 title(’Solucion general: x=x_{t}+x_{F} vs t’)

al correr el programa, nos vamos a la ventana de comando, donde se solicita las condiciones
iniciales, ası́ como las constantes

=============================================================
Exploracion del sistema oscilatorio: masa-resorte
con amortiguamiento, y conectado a un motor que proporciona
una fuerza impulsora periodica, Fe=Fo cos(wi*t+theta)
===========================================================
Condiciones iniciales y valores de las constantes:
Ingrese xo: 1
Ingrese vo: 5
Ingrese la constante del resorte: 0.5
Ingrese la masa: 0.5
Ingrese la constante de amortiguamiento: 0.1
Ingrese la amplitud de la fuerza impulsora: 0.5
La frecuencia de la fuerza impulsora: 0.1
============================================================
Resultados:
La frecuencia natural es wo=1.000 rad/s
La frecuencia del oscilador amortiguado es wa=0.995 rad/s
La amplitud es A=1.010 metros, del termino estable
El angulo de fase del termino transitorio: theta=0.193 rad
El angulo de fase del termino estable: phi=0.172 rad
x=x(t), es x=5.222 exp(-0.100 t) sen(0.995 t+0.193)+1.010 cos(0.100 t+0.172)
La potencia media transmitida a la masa es 0.001 watt
===============================================================

12
Al tener una fuerza impulsora, existe la posibilidad que se de el fenómeno de la resonancia,
este ocurre cuando la frecuencia
p de la fuerza externa (impulsora) se acerca a la frecuencia
natural del sistema (ω = k/m en el caso del sistema masa-resorte), en este caso la amplitud
crece y crece, en principio, si el amortiguamiento es cero y la frecuencia impulsora es igual a
la frecuencia natural, la amplitud tiende a infinito, lo cual significa que el sistema mecánico
colapsa. El amortiguamiento puede ayudar a controlar las amplitudes a mayor amortiguamiento
las amplitudes disminuyen, el siguiente programa nos muestra gráficamente como cambia la
amplitud del oscilador al variar el amortiguamiento.
1 clc,clear;
2 m=1.2;
3 k=3;
4 Fo=0.5;
5 wo=sqrt(k/m);
6 wmin=0.1;
7 wmax=2.0;
8 np=200;
9 w=[wmin:wmax/np:wmax];
10 hold on
11 bmin=0.1;
12 bmax=(2*m*wo)/sqrt(2);
13 bpaso=(bmax-bmin)/5;
14 for b=bmin:bpaso:bmax,
15 d1=(k-m*w.^2).^2+(b.^2)*w.^2;
16 A=Fo./sqrt(d1);
17 plot(w,A);
18 wr=sqrt(wo^2-(b^2)/(2*m*m));
19 Amax=Fo/(b*sqrt(wo*wo-(b*b)/(4*m*m)));
20 str=cat(2,’b=’,num2str(b,2));
21 text(wr+0.1,Amax-0.06,str);
22 endfor
23 title(’Amplitud vs frecuencia impulsora’)

13
24 xlabel(’\omega_{i}’,’FontSize’,14);
25 ylabel(’A(\omega_{i})’,’FontSize’,14);

al correr el programa se obtiene

5. Enfoque Numérico
En las secciones anteriores estudiamos el oscilador trabajando la solución de la ecuación
diferencial del movimiento de forma exacta, ası́ obtenı́amos la ecuación de posición de la masa
que oscila para todos los casos. Sin embargo hay muchos osciladores que no son armónicos, co-
mo las ecuaciones dinámicas de los péndulos para ángulos grandes, y otros tipos de osciladores
que son gobernados por ecuaciones diferenciales no lineales. La mayor parte de las ecuaciones
diferenciales no lineales no se pueden resolver de forma exacta, en este tipo de situaciones es
natural aproximar las soluciones de manera numérica, existen muchos esquemas numéricas para
resolver ecuaciones diferenciales de valores iniciales, en nuestro caso vamos a utilizar el método
de Runge-Kutta de orden cuatro. El siguiente programa resuelve la ecuación (21) de forma
numérica con RK4, al correr el programa se le solicita al usuario las condiciones iniciales y las
constantes de interés, el programa genera una tabla de algunos valores de posición, velocidad,
aceleración para diversos tiempos ademas de las gráficas de las mismas cantidades

1 clear,clc
2 disp(’====================================================’);
3 disp(’Con este programa, calculamos la velocidad y ’);
4 disp(’posicion, dada la aceleracion, la cual puede ’);
5 disp(’depender de t, x, vx’);
6 disp(’Se genera una tabla y graficas de interes’);
7 disp(’La aceleracion se integra con RK4’);
8 disp(’=====================================================’);
9 x(1)=input(’Ingrese la posicion inicial: ’);
10 t(1)=0.0;
11 v(1)=input(’Ingrese la velocidad inicial: ’);
12 tmax=input(’Ingrese el tiempo maximo: ’);
13 m=input(’Ingrese la masa: ’);
14 k=input(’Ingrese la constante k, del resorte: ’);
15 b=input(’Ingrese la constante de amortiguamiento, b: ’);

14
16 Fo=input(’Ingrese la amplitud de la fuerza externa, Fo: ’);
17 wi=input(’Ingrese la frecuencia de la fuerza impulsora, wi: ’);
18 a=@(t,x,v)-(k/m)*x-(b/m)*v+(Fo/m)*cos(wi*t); % la aceleracion
19 n=500;
20 nt=20;
21 h=tmax/n;
22 ax(1)=a(t(1),x(1),v(1));
23 fprintf(’ t x vx ax \n’);
24 fprintf(’%7.3f %9.3f %10.3f %10.3f \n’,t(1),x(1),v(1),ax(1));
25 for i=1:n+1
26 k1v=a(t(i),x(i),v(i))*h;
27 k1x=v(i)*h;
28 k2v=a(t(i)+h/2,x(i)+k1x/2,v(i)+k1v/2)*h;
29 k2x=(v(i)+k1v/2)*h;
30 k3v=a(t(i)+h/2,x(i)+k2x/2,v(i)+k2v/2)*h;
31 k3x=(v(i)+k2v/2)*h;
32 k4v=a(t(i)+h,x(i)+k3x,v(i)+k3v)*h;
33 k4x=(v(i)+k3v/2)*h;
34 v(i+1)=v(i)+(1/6)*(k1v+2*k2v+2*k3v+k4v);
35 x(i+1)=x(i)+(1/6)*(k1x+2*k2x+2*k3x+k4x);
36 t(i+1)=t(i)+h;
37 ax(i+1)=a(t(i),x(i),v(i));
38 if(mod(i,nt)==0)
39 fprintf(’%7.3f %9.3f %10.3f %10.3f \n’,t(i+1),x(i+1),v(i+1),ax(i+1));
40 end;
41 end
42 disp(’=========================================================’);
43 subplot(2,2,1)
44 plot(t,x)
45 xlabel(’Tiempo’)
46 ylabel(’Posicion’)
47 title(’Posicion vs tiempo’);
48 subplot(2,2,2)
49 plot(t,v)
50 xlabel(’Tiempo’)
51 ylabel(’V_{x}’)
52 title(’Velocidad vs tiempo’);
53 subplot(2,2,3)
54 plot(t,ax)
55 xlabel(’Tiempo’)
56 ylabel(’Aceleracion’)
57 title(’Aceleracion vs tiempo’);

Utilizando los datos del ejemplo 5, obtenemos lo siguiente:

====================================================
Con este programa, calculamos la velocidad y
posicion, dada la aceleracion, la cual puede
depender de t, x, vx
Se genera una tabla y graficas de interes
La aceleracion se integra con RK4
=====================================================

15
Ingrese la posicion inicial: 1
Ingrese la velocidad inicial: 5
Ingrese el tiempo maximo: 180
Ingrese la masa: 0.5
Ingrese la constante k, del resorte: 0.5
Ingrese la constante de amortiguamiento, b: 0.1
Ingrese la amplitud de la fuerza externa, Fo: 0.5
Ingrese la frecuencia de la fuerza impulsora, wi: 0.1
t x vx ax
0.000 1.000 5.000 -1.000
7.200 2.867 1.447 -1.847
14.400 1.618 -0.512 -1.531
21.600 -0.135 -0.818 -0.523
28.800 -1.115 -0.419 0.090
36.000 -1.136 -0.015 0.221
43.200 -0.517 0.167 0.129
50.400 0.292 0.165 0.022
57.600 0.888 0.078 -0.028
64.800 1.015 -0.020 -0.031
72.000 0.638 -0.088 -0.015
79.200 -0.047 -0.107 0.000
86.400 -0.703 -0.074 0.009
93.600 -1.008 -0.008 0.012
100.800 -0.813 0.061 0.009
108.000 -0.216 0.099 0.002
115.200 0.488 0.088 -0.005
122.400 0.950 0.034 -0.010
129.600 0.940 -0.037 -0.010
136.800 0.464 -0.090 -0.005
144.000 -0.243 -0.098 0.002
151.200 -0.829 -0.057 0.008
158.400 -1.004 0.012 0.010
165.600 -0.680 0.075 0.007
172.800 -0.019 0.101 0.001
180.000 0.651 0.077 -0.006
=========================================================

16
El programa anterior esta listo para resolver exclusivamente la ecuación (21), pero se puede
adecuar para resolver cualquier ecuación diferencial de segundo orden de valores iniciales.

Ejemplo 6: consideremos la ecuación de van der Pol


d2 x dx
2
= −µ(x2 − 1) − ω02 x (28)
dt dt
esta ecuación modela algunos circuitos de tubo al vació, consideremos que µ = 0· 5, ω0 = 1,
dx
consideremos que en t = 0, x = 1 y =1
dt
El siguiente programa integra numéricamente la ecuación (28)

1 clear,clc
2 disp(’====================================================’);
3 disp(’Con este programa, resolvemos una ecuacion diferencial’);
4 disp(’de segundo d2x/dt2=f(x,dx/dt,t) con el metodo de RK4, ’);
5 disp(’se encuentra x, dx/dt, para diferentes t’);
6 disp(’Se genera una tabla y graficas de interes’);
7 disp(’Se le solicita al usuario los valores iniciales’);
8 disp(’=====================================================’);
9 x(1)=input(’Ingrese la x inicial: ’);
10 t(1)=0.0;
11 v(1)=input(’Ingrese dx/dt inicial: ’);
12 tmax=input(’Ingrese el t maximo: ’);
13 a=@(t,x,v)-0.5*(x.^2-1)*v-x; % la ecuacion diferencial
14 n=500;
15 nt=20;
16 h=tmax/n;
17 ax(1)=a(t(1),x(1),v(1));
18 fprintf(’ t x vx ax \n’);
19 fprintf(’%7.3f %9.3f %10.3f %10.3f \n’,t(1),x(1),v(1),ax(1));
20 for i=1:n+1
21 k1v=a(t(i),x(i),v(i))*h;
22 k1x=v(i)*h;
23 k2v=a(t(i)+h/2,x(i)+k1x/2,v(i)+k1v/2)*h;

17
24 k2x=(v(i)+k1v/2)*h;
25 k3v=a(t(i)+h/2,x(i)+k2x/2,v(i)+k2v/2)*h;
26 k3x=(v(i)+k2v/2)*h;
27 k4v=a(t(i)+h,x(i)+k3x,v(i)+k3v)*h;
28 k4x=(v(i)+k3v/2)*h;
29 v(i+1)=v(i)+(1/6)*(k1v+2*k2v+2*k3v+k4v);
30 x(i+1)=x(i)+(1/6)*(k1x+2*k2x+2*k3x+k4x);
31 t(i+1)=t(i)+h;
32 ax(i+1)=a(t(i),x(i),v(i));
33 if(mod(i,nt)==0)
34 fprintf(’%7.3f %9.3f %10.3f %10.3f \n’,t(i+1),x(i+1),v(i+1),ax(i+1));
35 end;
36 end
37 disp(’=========================================================’);
38 subplot(2,2,1)
39 plot(t,x)
40 xlabel(’t’)
41 ylabel(’x’)
42 title(’x vs t’);
43 subplot(2,2,2)
44 plot(t,v)
45 xlabel(’t’)
46 ylabel(’dx/dt’)
47 title(’dx/dt versus t’);
48 subplot(2,2,3)
49 plot(t,ax)
50 xlabel(’t’)
51 ylabel(’d^{2}x/dt^{2}’)
52 title(’d^{2}x/dt^{2} versus t’);

al ejecutar el programa se obtiene

=====================================================
Con este programa, resolvemos una ecuacion diferencial
de segundo d2x/dt2=f(x,dx/dt,t) con el metodo de RK4,
se encuentra x, dx/dt, para diferentes t
Se genera una tabla y graficas de interes
Se le solicita al usuario los valores iniciales
=====================================================
Ingrese la x inicial: 1
Ingrese dx/dt inicial: 1
Ingrese el t maximo: 20
t x vx ax
0.000 1.000 1.000 -1.000
0.800 1.382 -0.094 -1.366
1.600 0.934 -0.986 -0.998
2.400 -0.170 -1.750 -0.751
3.200 -1.504 -1.151 2.150
4.000 -1.741 0.421 1.374
4.800 -1.061 1.243 0.970
5.600 0.268 2.069 0.798
6.400 1.743 1.070 -2.812

18
7.200 1.849 -0.565 -1.224
8.000 1.089 -1.319 -0.948
8.800 -0.305 -2.157 -0.793
9.600 -1.807 -1.025 2.970
10.400 -1.871 0.602 1.175
11.200 -1.091 1.338 0.943
12.000 0.319 2.178 0.783
12.800 1.823 1.007 -3.001
13.600 1.874 -0.612 -1.161
14.400 1.088 -1.344 -0.944
15.200 -0.328 -2.183 -0.774
16.000 -1.829 -0.996 3.008
16.800 -1.873 0.617 1.154
17.600 -1.084 1.348 0.945
18.400 0.335 2.186 0.765
19.200 1.832 0.986 -3.009
20.000 1.871 -0.621 -1.149
=========================================================

La linea 13, es donde se define la ecuación diferencial, esa es la única linea que se modifica del
programa.

Ejemplo 7: un péndulo de longitud L = 0· 7 m y mas M tiene un resorte con constante de


fuerza k = 120 kg/m conectado a él a una distancia h bajo su punto de suspensión. La barra es
rı́gida, pero de masa despreciable. Encontrar la ecuación diferencial que gobierna el movimiento
el movimiento de la masa y trazar la gráfica de posición versus tiempo con el algoritmo RK4.
Considere que h = 0· 5 m, M = 4 kg. Ejercicio tomado de Serway.
La figura (a) muestra al péndulo y la (b) el diagrama de fuerzas sobre la barra.

19
Del diagrama puede verse que el péndulo oscila debido a dos momentos de torsión de res-
titución, el peso tiene un brazo de palanca de Lsenθ y la fuerza que ejerce el resorte depende
del estiramiento del resorte, x, el cual tiene un brazo de palanca de hcosθ
Al aplicar la segunda ley de Newton se tiene
X
τi = Iα = −M gLsenθ − FR hcosθ = Iα
d2 θ
−M ghsenθ − k(hsenθ)hcosθ = M L2
dt2
al simplificar

d2 θ gh kh2
= − senθ − senθcosθ (29)
dt2 L2 M L2
La ecuación (29) es la ecuación dinámica para cualquier angulo que tome el péndulo, para
ángulos pequeños, senθ ≈ θ y cosθ ≈ 1, la ecuación diferencial se simplifica a

d2 θ M gL + kh2
 
=− θ = −ω 2 θ (30)
dt2 M L2
La ecuación (30), es la ecuación diferencial caracterı́stica del movimiento armónico simple con
una frecuencia angular ω
r
M gL + kh2
ω=
M L2
Modificamos la linea 13, ahı́ ingresamos la segunda derivada, de la siguiente forma:

a=@(t,x,v)-((9.8*0.5)/(.7^2))*sin(x)-((120*0.5^2)/(4*0.7^2))*sin(x)*cos(x);

la salida del programa es la siguiente

====================================================
Con este programa, resolvemos una ecuacion diferencial
de segundo d2x/dt2=f(x,dx/dt,t) con el metodo de RK4,
se encuentra x, dx/dt, para diferentes t
Se genera una tabla y graficas de interes

20
Se le solicita al usuario los valores iniciales
=====================================================
Ingrese la x inicial: pi/4
Ingrese dx/dt inicial: 0
Ingrese el t maximo: 8
t x vx ax
0.000 0.785 0.000 -14.724
0.320 0.110 -3.650 -4.196
0.640 -0.767 -0.869 14.456
0.960 -0.323 3.361 8.892
1.280 0.694 1.744 -13.594
1.600 0.517 -2.786 -12.191
1.920 -0.565 -2.579 11.603
2.240 -0.673 2.002 14.019
2.560 0.381 3.291 -7.877
2.880 0.780 -1.091 -14.793
3.200 -0.152 -3.749 2.302
3.520 -0.827 0.109 14.984
3.840 -0.104 3.823 4.126
4.160 0.807 0.911 -14.760
4.480 0.360 -3.460 -9.654
4.800 -0.715 -1.936 13.788
5.120 -0.584 2.725 13.123
5.440 0.547 2.897 -11.209
5.760 0.753 -1.751 -14.676
6.080 -0.308 -3.652 6.119
6.400 -0.850 0.654 15.137
6.720 0.019 3.994 1.130
7.040 0.863 0.499 -15.115
7.360 0.285 -3.771 -8.237
7.680 -0.785 -1.676 14.502
8.000 -0.560 3.021 12.867
=========================================================

21
6. Referencias
1. Javier E. Hasbun, Warren Wright. Classical Mechanics with Matlab applications. Jones-
Bartlet. 2009.

2. Dennis Zill. Ecuaciones diferenciales con problemas con valores en la frontera. Cengage
Learning. Octava edición 2013.

3. Sears, Zemanky, Young y Freedman. Fı́sica universitaria, volumen 1. Pearson edición 13,
2013.

4. Raymond Serway, John Jewett. Fı́sica para ciencias e ingenierı́a, volumen 1. Cengage
Learning, séptima edición, 2008.

7. Ejercicios
En los siguientes ejercicios utilice los programas suministrados en esta guı́a. Es importante
recordar la convención de signos, para asignar los valores iniciales e interpretar como se mueve la
partı́cula en cualquier tiempo. En el movimiento de un oscilador vertical, arriba de la referencia
la posición la vamos a tomar negativa, abajo de la referencia positivo, si la masa se mueve hacia
abajo la velocidad es positiva, si se mueve hacia arriba negativa, la siguiente figura ilustra la
convención.

22
En el caso que la masa se mueva sobre una recta horizontal,la convención, es, si esta la masa
a la derecha de la referencia (x = 0) la posición es positiva, si se mueve hacia la derecha la
velocidad es positiva, como se ilustra en la siguiente gráfica.

1. Una masa que pesa 25 libras alarga 8 pulgadas un resorte. La masa se libera al inicio
desde el reposo en un punto 8 pulgadas abajo de la posición de equilibrio. a) Encuentre
la ecuación la posición para cualquier tiempo, b) construya la gráfica de x versus t, c)
muestre gráficamente como cambia la energı́a cinética y la energı́a potencial.

2. Una fuerza de 420 N alarga 2.2 m un resorte. Una masa de 50 kg se une al extremo del
resorte y se libera inicialmente desde la posición de equilibrio con una velocidad ascendente
de 10 m/s. a) Encuentre la ecuación de movimiento, b) la gráfica de x versus t

3. Una masa de 1.2 kg se fija a un resorte cuya constante es 16 N/m y luego el sistema
completo se sumerge en un liquido que imparte una fuerza amortiguadora igual a 9 veces
la velocidad instantánea. Determine las ecuaciones de movimiento si:
a) al inicio la masa se libera desde un punto situado 1 metro abajo de la posición de
equilibrio. b) la masa se libera inicialmente desde un punto 1 metro abajo de la posición
de equilibrio con una velocidad ascendente de 10 m/s.

23
4. Una fuerza de 2.2 libras alarga 1 pie un resorte. Una masa que pesa 3 libras se une al resorte
y luego se sumerge el sistema en un medio que ofrece una fuerza de amortiguamiento igual
a 0.5 veces la velocidad instantánea.
a) Encuentre la ecuación de movimiento si inicialmente se libera la masa desde el reposo
en un un punto situado a 1 pie por encima de la posición de equilibrio, b) construya la
gráfica de x versus t.

5. Después de que una masa de 10 libras se sujeta a un resorte de 5 pies, este llega a medir
7 pies. Se retira la mas y se sustituye con una de 8 libras. Luego se coloca al sistema en
un medio que ofrece una fuerza de amortiguamiento igual a la velocidad instantánea.
a) Encuentre la ecuación de movimiento si la masa se libera inicialmente desde el reposo de
un punto situado 0.5 pie arriba de la posición de equilibrio con una velocidad ascendente
de 1 pie/s.
b) Trace la gráfica de la ecuación de movimiento.
8
6. Una masa que pesa 16 libras alarga pie un resorte. La masa se libera inicialmente
3
desde el reposo desde un punto 2 pies abajo de la posición de equilibrio y el movimiento
posterior ocurre en un medio que ofrece una fuerza de amortiguamiento igual a 0.5 de la
velocidad instantánea. Encuentre la ecuación de movimiento si se aplica a la una fuerza
externa igual a f (t) = 10cos(3t).

7. Una masa de 1 slug esta unida a un resorte cuya constante es 5 lb/pie. Al inicio la masa se
libera 1 pie abajo de la posición de equilibrio con una velocidad descendente de 5 pies/s y
el movimiento posterior toma lugar en un medio que ofrece una fuerza de amortiguamiento
igual a dos veces la velocidad instantánea.
Si a fuerza externa que actúa sobre la masa es igual a f (t) = 12cos2t + 3sen2t. Trace la
gráfica de las soluciones transitorias y de estado estable en los mismos ejes de coordenadas.

8. En el ejercicio 7 determine trace la solución x versus tiempo si la fuerza externa es


f (t) = e−t sen(4t). Analice el desplazamiento para t grandes.

9. Cuando una masa de 2 kilogramos se une a un resorte cuya constante es 32 N/m, este
llega al reposo en la posición de equilibrio. Comenzando en t = 0, una fuerza igual a
f (t) = 50e−2t cos(4t) se aplica al sistema. Trace x versus t, comente el comportamiento
del sistema.

10. Resuelva numéricamente los problemas con valores iniciales


a)
d2 x ′

2
+ 4x = −5sen(2t) + 3cos(2t), x(0) = −1, x (0) = 1
dt
b)
d2 x ′

2
+ 9x = 5sen(2t), x(0) = 2, x (0) = 0
dt
c)
d2 x ′

2
+ x = 0· 5cos(0· 8t), x(0) = 0, x (0) = 0
dt
d)
d2 x dx ′

2
+ 0· 125 + x = 3cos(2t), x(0) = 2, x (0) = 0
dt dt

24

También podría gustarte