Sie sind auf Seite 1von 14

Apellidos: Moreira Vlez

Nombres: Jos Gabriel


Asignatura: Mtodos Numricos Avanzados en Ingeniera

Fecha: 15-05-2017

Tema:
Mtodo de Runge- Kutta & Adams-Bashforth-Moulton de orden 4
Actividades

Laboratorio #1: Mtodos Runge-Kutta

Preparacin del laboratorio

Para la ejecucin del presente laboratorio es necesario que los alumnos tengan instalado
en sus ordenadores:

Usuarios Windows: Dev C++


Usuarios LINUX/MAC OS X: Cualquier editor de textos (por ejemplo, Sublime Text
2).

Revisa el apartado Recursos externos para obtener ms informacin sobre estas


herramientas.

Adems, los usuarios de Sistemas Operativos LINUX/MAC OS X deben conocer la forma


de compilar y ejecutar los archivos con la programacin en C++. Para ello, pueden seguir
el siguiente manual:

http://programa-me.com/documents/GuiaCompilacionCLI.pdf

Antes de realizar el laboratorio, es necesario recordar las frmulas de los mtodos de


Runge-Kutta de segundo y cuarto orden:

2 orden:
1 = ( , )
2 = (+1 , + 1 )
1 + 2
+1 = +
2
Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

4 orden:
1 = ( , )
1
2 = ( + , + )
2 2
2
3 = ( + , + )
2 2
4 = ( + , + 3 )
1 + 22 + 23 + 4
+1 = +
6

Descripcin del laboratorio

Objetivos: se trata de un ejercicio en el que debers programar en C++ las funciones


necesarias para la resolucin, por medio del mtodo de Runge-Kutta de segundo y cuarto
orden, un problema de valores iniciales.

Tiempo estimado: 4 horas:

2,5 horas -> programacin


0,5 horas -> ejecucin
1 hora -> elaboracin del informe

Descripcin: el trabajo consta de dos partes:

1. Debers programar en C++ una aplicacin de acuerdo a las siguientes caractersticas:

Presentars un men en el que el usuario pueda escoger por cul de los dos
mtodos quiere resolver el problema.
Una vez seleccionado el mtodo para la resolucin, la aplicacin pedir que sea
introducido el tamao de paso (utilizar = 0,2; 0,1; 0,05; 0,01).
Finalmente, el programa deber sugerir si se quiere analizar el mismo mtodo
cambiando el tamao de paso, volver al men para seleccionar el mtodo o salir de
la ejecucin.

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

2. Adems, generars un informe con los resultados obtenidos para cada uno de los
mtodos y cada uno de los tamaos de paso, hacer una comparativa y exponer las
conclusiones que estimes oportunas.

Se espera que el cdigo sea fcilmente interpretable, de modo que cualquier


aclaracin o explicacin sobre el cdigo deber ponerse en forma de
comentario.
Todos los archivos de cdigo debern tener la siguiente cabecera:

/*
++++++++++++++++++++++++++++++++++++++++++
LABORATORIO 1. RUNGE-KUTTA
Metodos Numericos Avanzados en Ingeniera
Alumno:
DNI:
++++++++++++++++++++++++++++++++++++++++++
*/

Entrega del laboratorio

La entrega de este laboratorio, ser un nico archivo comprimido (.zip, .rar). Su


nombre deber ser vuestro DNI.zip o vuestro DNI.rar. El contenido del archivo,
sern dos carpetas.

[CODE]

o Leame.txt. En este archivo tendr que aparecer la forma de ejecucin y todas las
notas que se consideren oportunas.
o RK.cpp + todos los archivos auxiliares que sean necesarios.

[REPORT]

o Informe.docx

Extensin mxima: 2 pginas (Georgia 11, interlineado 1,5).

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

Resolucin del Ejercicio.


Literal a)
Convertimos el sistema de orden 2 en uno de primer orden;
()
()= ; (0)= 0 ; (0)= 0

()
()= ; (0)= 0 ; (0)= 0

= 2 + 2
= 398598.309
Donde defino mis siguientes variables;
1 =
2 =
{
3 =
4 =
2 =
Donde {
4 =
Reemplazamos en las ecuaciones pertinentes t convertimos en primer orden
1
2 =
(12 + 32 )3
3
4 =
(12 + 32 )3
Literal b)
Con las siguientes condiciones iniciales;
(0) = 42167.911

(0) = 1.07168

(0) =
(0)

= 2.8827

Con tiempo de = 24
240
= = = 48
0.5 0.5

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

function RK4
fprintf('\n \tRESOLUCION DE ECUACIONES DIFERENCIALES POR MEDIO RUNGE-KUTTA
DE ORDEN 4\n')
fprintf('\n \tLABORATORIO 1. RUNGE-KUTTA\n')
fprintf('\n \tMtodos Numricos Avanzados en Ingeniera\n')
fprintf('\n \tAlumno: Moreira Vlez Jos Gabriel\n')
fprintf('\n \tDNI: 1311265852\n')
h=(b-a)/N;
x=a:h:b;
x=x(:);
y=zeros(N+1,4);
y(1,:)=y0;
for k=1:N
k1=feval(f,x(k),y(k,:))';
k2=feval(f,x(k)+h/2,y(k,:)+h*k1/2)';
k3=feval(f,x(k)+h/2,y(k,:)+h*k2/2)';
k4=feval(f,x(k+1),y(k,:)+h*k3)';
y(k+1,:)=y(k,:)+(h/6)*(k1+2*k2+2*k3+k4);
end

end

function w=satelite(x,y)
w=[y(2);-398598.309*y(1)/((sqrt((y(1))^2+(y(3))^2))^3);y(4);-
398598.309*y(3)/((sqrt((y(1))^2+(y(3))^2))^3)];
end

Ejecucin del Programa


>> [x,y] =RK4('satelite',0,24,48,[42167.911 -1.07168 0 2.8827])

RESOLUCION DE ECUACIONES DIFERENCIALES POR MEDIO RUNGE-


KUTTA DE ORDEN 4

LABORATORIO 1. RUNGE-KUTTA

Mtodos Numricos Avanzados en Ingeniera

Alumno: Moreira Vlez Jos Gabriel

DNI: 1311265852

x =0
0.5000
1.0000

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

1.5000
2.0000
2.5000
3.0000
3.5000
4.0000
4.5000
5.0000
5.5000
6.0000
6.5000
7.0000
7.5000
8.0000
8.5000
9.0000
9.5000
10.0000
10.5000
11.0000
11.5000
12.0000
12.5000
13.0000
13.5000
14.0000
14.5000
15.0000
15.5000
16.0000
16.5000
17.0000
17.5000
18.0000
18.5000

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

19.0000
19.5000
20.0000
20.5000
21.0000
21.5000
22.0000
22.5000
23.0000
23.5000
24.0000

y =1.0e+004 *

4.2168 -0.0001 0 0.0003


4.2167 -0.0001 0.0001 0.0003
4.2167 -0.0001 0.0003 0.0003
4.2166 -0.0001 0.0004 0.0003
4.2166 -0.0001 0.0006 0.0003
4.2165 -0.0001 0.0007 0.0003
4.2165 -0.0001 0.0009 0.0003
4.2164 -0.0001 0.0010 0.0003
4.2164 -0.0001 0.0012 0.0003
4.2163 -0.0001 0.0013 0.0003
4.2163 -0.0001 0.0014 0.0003
4.2162 -0.0001 0.0016 0.0003
4.2161 -0.0001 0.0017 0.0003
4.2161 -0.0001 0.0019 0.0003
4.2160 -0.0001 0.0020 0.0003
4.2160 -0.0001 0.0022 0.0003
4.2159 -0.0001 0.0023 0.0003
4.2159 -0.0001 0.0025 0.0003
4.2158 -0.0001 0.0026 0.0003
4.2158 -0.0001 0.0027 0.0003

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

4.2157 -0.0001 0.0029 0.0003


4.2157 -0.0001 0.0030 0.0003
4.2156 -0.0001 0.0032 0.0003
4.2156 -0.0001 0.0033 0.0003
4.2155 -0.0001 0.0035 0.0003
4.2154 -0.0001 0.0036 0.0003
4.2154 -0.0001 0.0037 0.0003
4.2153 -0.0001 0.0039 0.0003
4.2153 -0.0001 0.0040 0.0003
4.2152 -0.0001 0.0042 0.0003
4.2152 -0.0001 0.0043 0.0003
4.2151 -0.0001 0.0045 0.0003
4.2151 -0.0001 0.0046 0.0003
4.2150 -0.0001 0.0048 0.0003
4.2150 -0.0001 0.0049 0.0003
4.2149 -0.0001 0.0050 0.0003
4.2149 -0.0001 0.0052 0.0003
4.2148 -0.0001 0.0053 0.0003
4.2148 -0.0001 0.0055 0.0003
4.2147 -0.0001 0.0056 0.0003
4.2146 -0.0001 0.0058 0.0003
4.2146 -0.0001 0.0059 0.0003
4.2145 -0.0001 0.0061 0.0003
4.2145 -0.0001 0.0062 0.0003
4.2144 -0.0001 0.0063 0.0003
4.2144 -0.0001 0.0065 0.0003
4.2143 -0.0001 0.0066 0.0003
4.2143 -0.0001 0.0068 0.0003
4.2142 -0.0001 0.0069 0.0003

>>
En el tiempo = 24 horas la posicin es la siguiente;
X = 42142
Y = 691850

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

Y su grfico es el siguiente;
>> plot ([0:0.5:24],x);hold on; plot ([0:0.5:24],y);grid on
4
x 10
4.5

3.5

2.5

1.5

0.5

-0.5
0 5 10 15 20 25

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

Resolucin del mtodo de Adams-Bashforth-Moulton de orden 4


function [x,y] = ABM4s(f,a,b,N,y0)
h=(b-a)/N;
x=a:h:b;
y=zeros(N+1,4);
y(1,:)=y0;

for k=1:3
k1=feval(f,x(k),y(k,:))';
k2=feval(f,x(k)+h/2,y(k,:)+h*k1/2)';
k3=feval(f,x(k)+h/2,y(k,:)+h*k2/2)';
k4=feval(f,x(k+1),y(k,:)+h*k3)';
y(k+1,:)=y(k,:)+(h/6)*(k1+2*k2+2*k3+k4);

end
for k=4:N
y(k+1,:)=y(k,:)+(h/24)*(55*feval(f,x(k),y(k,:))'-59*feval(f,x(k-
1),y(k-1,:))'+37*feval(f,x(k-2),y(k-2,:))'-9*feval(f,x(k-3),y(k-
3,:))');

y(k+1,:)=y(k,:)+(h/24)*(9*feval(f,x(k+1),y(k+1,:))'+19*feval(f,x(k),y(
k,:))'-5*feval(f,x(k-1),y(k-1,:))'+feval(f,x(k-2),y(k-2,:))');
end
end
function z=satellite(x,y)
z=[y(2);-398598.309*y(1)/((sqrt((y(1))^2+(y(3))^2))^3);y(4);-
398598.309*y(3)/((sqrt((y(1))^2+(y(3))^2))^3)];
end

Ejecucin del Programa


>> [x,y] =ABM4('satelite',0,24,48,[42167.911 -1.07168 0 2.8827])

x=

Columns 1 through 9

0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000

Columns 10 through 18

4.5000 5.0000 5.5000 6.0000 6.5000 7.0000 7.5000 8.0000 8.5000

Columns 19 through 27

9.0000 9.5000 10.0000 10.5000 11.0000 11.5000 12.0000 12.5000 13.0000

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

Columns 28 through 36

13.5000 14.0000 14.5000 15.0000 15.5000 16.0000 16.5000 17.0000 17.5000

Columns 37 through 45

18.0000 18.5000 19.0000 19.5000 20.0000 20.5000 21.0000 21.5000


22.0000

Columns 46 through 49

22.5000 23.0000 23.5000 24.0000

y=

1.0e+004 *

4.2168 -0.0001 0 0.0003


4.2167 -0.0001 0.0001 0.0003
4.2167 -0.0001 0.0003 0.0003
4.2166 -0.0001 0.0004 0.0003
4.2166 -0.0001 0.0006 0.0003
4.2165 -0.0001 0.0007 0.0003
4.2165 -0.0001 0.0009 0.0003
4.2164 -0.0001 0.0010 0.0003
4.2164 -0.0001 0.0012 0.0003
4.2163 -0.0001 0.0013 0.0003
4.2163 -0.0001 0.0014 0.0003
4.2162 -0.0001 0.0016 0.0003
4.2161 -0.0001 0.0017 0.0003
4.2161 -0.0001 0.0019 0.0003
4.2160 -0.0001 0.0020 0.0003
4.2160 -0.0001 0.0022 0.0003

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Mtodos Numricos Apellidos: Moreira Vlez
Avanzados en 15-05-2017
Ingeniera Nombre: Jos Gabriel

4.2159 -0.0001 0.0023 0.0003


4.2159 -0.0001 0.0025 0.0003
4.2158 -0.0001 0.0026 0.0003
4.2158 -0.0001 0.0027 0.0003
4.2157 -0.0001 0.0029 0.0003
4.2157 -0.0001 0.0030 0.0003
4.2156 -0.0001 0.0032 0.0003
4.2156 -0.0001 0.0033 0.0003
4.2155 -0.0001 0.0035 0.0003
4.2154 -0.0001 0.0036 0.0003
4.2154 -0.0001 0.0037 0.0003
4.2153 -0.0001 0.0039 0.0003
4.2153 -0.0001 0.0040 0.0003
4.2152 -0.0001 0.0042 0.0003
4.2152 -0.0001 0.0043 0.0003
4.2151 -0.0001 0.0045 0.0003
4.2151 -0.0001 0.0046 0.0003
4.2150 -0.0001 0.0048 0.0003
4.2150 -0.0001 0.0049 0.0003
4.2149 -0.0001 0.0050 0.0003
4.2149 -0.0001 0.0052 0.0003
4.2148 -0.0001 0.0053 0.0003
4.2148 -0.0001 0.0055 0.0003
4.2147 -0.0001 0.0056 0.0003
4.2146 -0.0001 0.0058 0.0003
4.2146 -0.0001 0.0059 0.0003
4.2145 -0.0001 0.0061 0.0003
4.2145 -0.0001 0.0062 0.0003
4.2144 -0.0001 0.0063 0.0003
4.2144 -0.0001 0.0065 0.0003
4.2143 -0.0001 0.0066 0.0003
4.2143 -0.0001 0.0068 0.0003
4.2142 -0.0001 0.0069 0.0003

>>

TEMA 4 Actividades Universidad Internacional de La Rioja (UNIR)

Das könnte Ihnen auch gefallen