Está en la página 1de 23

Universidad de Santiago de Chile

Facultad de Ingeniería

Tarea 3
Departamento de Ingeniería Mecánica

Aplicaciones
Computacionales
Profesor:

Alumno:
INDICE
Pag.
1. Resumen del Informe 3

2. Problema Planteado 4

3. Presentación de Resultados 5

4. Observaciones personales, análisis y conclusión 17

5. Apéndice 18

a) Método de Euler 18
b) Método del Punto Medio 21

6. Bibliografía 22

1
1. Resumen del Informe

En el presente informe se realiza un script en Matlab que permita resolver la ecuación diferencial
que gobierna el movimiento de un péndulo simple usando el método de Euler y el método del punto
medio. En el programa el operador deberá ingresar los datos que le pidan para luego visualizar en
pantalla los distintos gráficos que piden en el problema de este ejercicio. La estructura del informe
consiste en el objetivo del ejercicio con todas las características que debe tener el programa, el
respectivo script del programa y una presentación de resultados en donde luego se analizará y
concluirá.

2. Problema Planteado
2
3
3. Presentación de los resultados
4
 Script Programado:

El desarrollo del problema se hace mediante los métodos de Euler y del punto medio, cuya base
teórica podrá encontrarse en el Apéndice del informe. El Script programado es el siguiente:

clear; %Se borran las variables de la memoria


clc; %Se limpia la ventana de comandos

L=input('Ingrese el valor del largo del péndulo (L): ');


%Se ingresa el largo del péndulo
m=input('Ingrese el valor de la masa del péndulo (m): ');
%Se ingresa la masa del péndulo
tetha0=input('Ingrese el valor de la posición angular inicial (tetha): ');
%Se ingresa el angulo de posición inicial del péndulo
omega0=input('Ingrese el valor de la velocidad angular inicial (va): ');
%Se ingresa la velocidad angular inicial del péndulo
mt=input('Ingrese el método de integracion a utilizar, para metodo de Euler
ingrese "1", para metodo del punto medio ingrese "2": ');
%Se ingresa el método de integración a utilizar.
tf=input('Ingrese el tiempo total de integración (tt): ');
%Se ingresa el valor del tiempo total de integración.
h=input('Ingrese el paso de tiempo (h): ');
%Se ingresa el valor del paso de tiempo a utilizar.

t(1)=0; %Se define el tiempo inicial


g=9.81; %Se define el valor de la constante de gravedad.
N=(tf-t(1))/h; %Se define el número de iteraciones.

if mt==1 %Se trabaja con el Método de Euler

tetha(1)=tetha0; %Se le asigna el valor del ángulo inicial a la variable


omega(1)=omega0; %Se le asigna el valor de la velocidad inicial a la variable
Ec(1)=0.5*m*(omega(1)^2)*(L^2);
Ep(1)=m*g*L;
E(1)=Ec(1)+Ep(1);
px(1)=L*sin(tetha(1));
py(1)=-L*cos(tetha(1));
for i=1:N
t(i+1)=t(i)+h; %Se calcula el tiempo en cada iteración
tetha(i+1)=tetha(i)+h*omega(i); %Se predice un valor del ángulo de posición
omega(i+1)=omega(i)-h*((g/L)*sin(tetha(i))); %Se itera la velocidad angular
evaluada en el angulo anteriormente calculado
Ec(i+1)=0.5*m*(omega(i)^2)*(L^2); %Se calcula la energía cinética
Ep(i+1)=m*g*L*(1-cos(tetha(i))); %Se calcula la energía potencial
E(i+1)=Ec(i)+Ep(i); %Se calcula la energía total
px(i+1)=L*sin(omega(i)); %Se calcula la posición en el eje X
py(i+1)=-L*cos(tetha(i)); %Se calcula la posición en el eje Y
end
subplot(3,2,1); %El comando subplot sirve para ubicar y ordenar los gráficos a
continuación en una misma ventana
plot(t,tetha,'k') %Se grafica el ángulo posición vs el tiempo
xlabel('Tiempo [s]'); %Se le asigna un título al eje X
ylabel('Ángulo [rad]'); %Se le asigna un título al eje Y
title('Ángulo vs Tiempo'); %Se le asigna el título al gráfico
subplot(3,2,2);

5
plot(t,E,t,Ep,t,Ec)
xlabel('Tiempo [s]');
ylabel('Energía [J]');
legend('Energía Total','Energía Potencial','Energía Cinética',2);
title('Energia vs Tiempo');
subplot(3,2,3);
plot(t,px)
xlabel('Tiempo [s]');
ylabel('Posición en X [m]');
title('Posición en X vs Tiempo');
subplot(3,2,4);
plot(t,py)
xlabel('Tiempo [s]');
ylabel('Posición en Y [m]');
title('Posición en Y vs Tiempo');
end

if mt==2 %Se trabaja con el Método del Punto Medio

teta(1)=tetha0; %Se le asigna el valor del ángulo inicial a la variable


omegha(1)=omega0; %Se le asigna el valor de la velocidad inicial a la
variable
Eci(1)=0.5*m*(omegha(1)^2)*(L^2);
Epo(1)=m*g*L;
Et(1)=Eci(1)+Epo(1);
pox(1)=L*sin(teta(1));
poy(1)=-L*cos(teta(1));
for j=1:N
t(j+1)=t(j)+h; %Se calcula el tiempo en cada iteración
tetamed=teta(j)+omegha(j)*(h/2); %Se predice el punto medio del intervalo
omeghamed=omegha(j)-((g/L)*sin(tetamed)*h); %Se calcula el valor de la
pendiente en el punto medio
teta(j+1)=teta(j)+omeghamed*h; %Se itera el Angulo posición evaluado en
la pendiente del punto medio.
omegha(j+1)=omegha(j)-((g/L)*sin(teta(j))*h); %Se itera la velocidad
angular en funcion del angulo anteriormente calculado
Eci(j+1)=0.5*m*(omegha(j)^2)*(L^2); %Se calcula la energía cinética
Epo(j+1)=m*g*L*(1-cos(teta(j))); %Se calcula la energía potencial
Et(j+1)=Eci(j)+Epo(j); %Se calcula la energía total
pox(j+1)=L*sin(omegha(j)); %Se calcula la posición en el eje X
poy(j+1)=-L*cos(teta(j)); %Se calcula la posición en el eje Y
end
subplot(2,2,1); %El comando subplot sirve para ubicar y ordenar los gráficos a
continuación en una misma ventana
plot(t,teta,'b') %Se grafica el ángulo posición vs el tiempo
xlabel('Tiempo [s]'); %Se le asigna un título al eje X
ylabel('Ángulo [rad]'); %Se le asigna un título al eje Y
title('Ángulo vs Tiempo'); %Se le asigna el título al gráfico
subplot(2,2,2);
plot(t,Et,t,Epo,t,Eci)
xlabel('Tiempo [s]');
ylabel('Energía [J]');
legend('Energía Total','Energía Potencial','Energía Cinética',2);
title('Energia vs Tiempo');
subplot(2,2,3);
plot(t,pox)
xlabel('Tiempo [s]');
ylabel('Posición en X [m]');
title('Posición en X vs Tiempo');
subplot(2,2,4);
plot(t,poy)

6
xlabel('Tiempo [s]');
ylabel('Posición en Y [m]');
title('Posición en Y vs Tiempo');
end

 Gráficos Obtenidos:

a) Método de Euler
Primer Caso: h= 0.001 ; θ = π/2 velocidad inicial = 0.

h= 0.001 ; θ = π/6 velocidad inicial = 0.

7
h= 0.001 ; θ = π/10 velocidad inicial = 0.

Conclusión del caso:


Se utilizo un h=0.001 y se aprecia que las oscilaciones aumentan pero no considerablemente, y la
divergencia no aparece. Mientras menor sea el ángulo de inicio, menor es el aumento de la amplitud
en el transcurso del tiempo lo que significa un menor error acumulado.

Segundo Caso: h= 0.01 ; θ = π/2 velocidad inicial = 0.

8
h= 0.01 ; θ = π/6 velocidad inicial = 0.

h= 0.01 ; θ = π/10 velocidad inicial = 0.

Conclusión del Caso:


Se utilizo un h=0.01 en este grafico en el seg 19 aprox. El error alcanzado es tan grande que
diverge. Y como se observa en los siguientes 2 gráficos el error acumulado se va incrementando
con el transcurso del tiempo y se observa la tendencia que a menor ángulo de lanzamiento el error
acumulado es menor

9
Tercero Caso: h= 0.1 ; θ = π/2 velocidad inicial = 0.

h= 0.1 ; θ = π/6 velocidad inicial = 0.

10
h= 0.1 ; θ = π/10 velocidad inicial = 0.

Conclusión del caso:


Se utilizó h = 0.1, a menor ángulo de lanzamiento la curva oscila un poco más antes de divergir tal
como se observa en las figuras

b) Método del punto medio o Euler modificado:

Primer Caso: h= 0.001 ; θ = π/2 velocidad inicial = 0.

h= 0.001 ; θ = π/6 velocidad inicial = 0.

11
h= 0.001 ; θ = π/10 velocidad inicial = 0.

Conclusiones del caso:


Para este caso se observa que la amplitud se mantiene constante, lo que indica un error acumulado
nulo o imperceptible.

Segundo Caso: h= 0.01 ; θ = π/2 velocidad inicial = 0.

12
h= 0.01 ; θ = π/6 velocidad inicial = 0.

h= 0.01 ; θ = π/10 velocidad inicial = 0.

13
Conclusión del Caso:
En este caso ocurre lo mismo que en el caso anterior, los gráficos son muy parecidos y se observan
las mismas tendencias por lo que podemos concluir que al aumentar el paso de tiempo a 0.01, el
valor predicho mantiene un error nulo o muy bajo con respecto al valor verdadero.

Tercer Caso: h= 0.1 ; θ = π/2 velocidad inicial = 0.

14
h= 0.1 ; θ = π/6 velocidad inicial = 0.

h= 0.1 ; θ = π/10 velocidad inicial = 0.

15
Conclusión del caso:
Se observa que con el transcurso del tiempo la amplitud comienza a disminuir, y también que a
menor ángulo de lanzamiento mayor será la disminución de la amplitud con el transcurso del
tiempo.

4. Observaciones personales, análisis y conclusiones

16
El método de Euler no es un método exacto o por lo menos que se acerque al valor verdadero.
Además el error que se produce en cada cálculo se acumula para los siguientes como se pueden
observar en todas las curvas.
El tamaño del paso del tiempo es muy relevante, ya que menor sea este el error generado sera
menor. También este influye en la frecuencia de la oscilación, ya que mientras mayor sea el paso
del tiempo mayor será la frecuencia. No hay que olvidar que el ángulo de lanzamiento también es
un factor que influye en los parámetros antes mencionados.
Finalmente una de las cosas que deja en evidencia la poca exactitud del método es la divergencia de
las curvas cuando el error acumulado se hace insostenible.
Se observa que para el primer y segundo caso del método de punto medio, que a pesar de la
variación del paso de tiempo y del ángulo de lanzamiento, la respuesta en el tiempo del ángulo no
presenta mayores variaciones en su frecuencia ni variaciones en su amplitud lo que indica que
existe una gran cercanía al valor real independiente de los factores antes mencionados.
En el tercer caso se observa que esta tendencia cambia debido a que existe una disminución de la
amplitud de la oscilación a través del tiempo. Además se observa que esta disminución se acentúa
mientras más pequeño es el ángulo de lanzamiento. De acuerdo a lo leído en la bibliografía esto se
debe a que en este método el error global está definido como O( h2 ¿, por lo que para valores altos de
paso de tiempo tendera a ocurrir este fenómeno. Pero para valores extremadamente altos de h, la
curva diverge.

5. Apéndice
17
Teoría de los métodos:

A. Método de Euler:

Un péndulo simple es un sistema idealizado de un solo grado de libertad. Un objeto puntual de masa


m y sostenido de un hilo de masa despreciable que puede describirse, expresándola en función del
tiempo, su distancia angular con respecto a un sistema de coordenadas. Al considerar este sistema
como idealizado se elimina toda fricción presente. Para un péndulo simple es más conveniente
describir la posición en términos del desplazamiento angular, θ(t). Luego,  su ecuación del
movimiento es:

Donde g es la aceleración de la gravedad, la cual la consideraremos una constante, y es igual


a 9.8mseg2 y l es la longitud de la cuerda en metros. Esta ecuación, es una ecuación diferencial no
lineal de segundo orden. Además, como conocemos el Angulo inicial con cual es largado el
péndulo (θ(0)=θ0) y su velocidad inicial (ω(0)=ω0) es un problema de valores iniciales (PVI). Para
la solución del problema, en primer lugar se reduce la ecuación de segundo orden a un sistema de
dos ecuaciones de primer orden, aprovechando el hecho de que no está la variable dependiente (ω).
Esto lo hacemos con el siguiente cambio de variable:

Entonces, nuestro sistema nos queda

Energía del péndulo

18
En el péndulo vamos a tener una energía cinética (Ec) y una potencial (Ep)

Métodos de resolución
Supongamos que queremos resolver la siguiente EDO con un determinado valor inicial

El más ancestral de todos los métodos numéricos usados hoy en día fue formulado por Leonhard
Euler en 1768. Este método consiste en expandir por serie de Taylor con centro en el punto
inicial t0:

Teniendo en cuenta la EDO de la que partimos

Reemplazando esto en la serie de Taylor, truncándola en el segundo término obtenemos

19
Si llamamos ti−ti−1=h donde ti es el instante siguiente donde se evalúa la función, entonces la
solución numérica para t=t1 es:

Luego, tomando y1 como la condición inicial para el siguiente paso, que la podemos aproximar a la
solución como

Es decir, lo podemos generalizar al paso (n+1)  como:

Y, después de un número suficiente de pasos llegaremos al tiempo final T. El costo computacional


de este método está en la evaluación de la función f y en usar valores de h muy pequeños, ya que de
estos depende la precisión del método. Este método es conocido como el método Explicito Euler, y
es el primero con el cual vamos a aproximar la solución de la ecuación del péndulo. Para nuestro
caso, la forma general de este método es

Gráficamente, el método es el siguiente:

20
B. Método del Punto medio:

El método del punto medio es una modificación simple del método de Euler que consiste en
predecir un valor de “y” en el punto medio del intervalo:

( x i , y i )∗h
y i+1 /2 = y i+ f
2

Después, este valor predicho se usa para calcular una pendiente en el punto medio:

y ' i+1 /2 =f (x 1 ,y 1 )
i+ i+
2 2

El cual se toma para representar una aproximación válida de la pendiente promedio para todo el
intervalo. Dicha pendiente es usada después para extrapolar linealmente desde x i hasta x i+1:

y i+1 = y i+ f ( x ' 1 , y' 1 )


i+ i+
2 2

Se observa que como y i+1 no está en los dos lados, el corrector no puede aplicarse de manera
iterativa para mejorar la solución.

Gráficamente el método funciona de la siguiente manera:

21
6. Bibliografía

 Métodos Numéricos para Ingenieros, Steven C. Chapra & Raymond P. Canale. 5ta
Edición, Editorial Mc Graw Hill.
 Matlab para Ingenieros, Holly Moore, 1era Edición, Editorial Prentice Hall.
 Matlab: Una introducción con ejemplos Prácticos, Amos Gilat, 2da Edición,
Editorial Reverté.

22

También podría gustarte