You are on page 1of 20

MODELACION EN

INGENIERIA


UNaM
Universidad Nacional de Misiones
Facultad de Ingeniera






Ctedra: Modelacin en ingeniera



Trabajo Prctico N4:



SOLUCI N NUMRI CA DE PROBLEMASD VALOR
I NI CI AL



Grupo C:
Ansin, Gastn
Cristaldo, Javier
Fedan, David
Gorina, Bruno
Jakimczuk, Esteban
Maydana, Gastn
Medina, Luis
Torczuk, Flavio
Urbani, Luis

21 de Noviembre de 2011


Algoritmos:
Diferentes versiones de MATLAB ofrecen distintos tipos o variantes de algoritmos.
Los que se describen a continuacin corresponden a la versin 6 Release 12, del ao
2000, (ya est en oferta la versin 6.1 de ao 2001). No obstante, los dos primeros
pueden utilizarse del modo que se explica ms adelante con versiones desde la 4 en
adelante.
ode45 se basa en el mtodo de Runge-Kutta en sus versiones de cuarto y quinto
rdenes. Entre los diferentes algoritmos que ofrece MATLAB es el que se
recomienda para un primer intento de solucin en la gran mayora de los
problemas.
ode23 es una implementacin del mtodo de Runge-Kutta en sus rdenes dos y
tres, puede ser ms eficiente que ode45 con tolerancias crudas y con la presencia
de rigidez moderada.
ode113 es un algoritmo de orden variable basado en las frmulas de Adams-
Bashforth y Adams-Moulton. Puede ser ms eficaz que ode45 con tolerancias
severas, especialmente cuando la funcin es difcil de evaluar. Los tres
algoritmos precedentes son tiles para resolver sistemas de ecuaciones que no
sean rgidos o presenten una rigidez moderada. Para ecuaciones con rigidez
importante se recomiendan los que se dan a continuacin.
ode15s es un esquema predictor-corrector de orden variable basado en las
frmulas de diferenciacin numrica. Opcionalmente tambin utiliza las
frmulas de diferenciacin hacia atrs conocidas como mtodo de Gear, aunque
en este caso es menos eficiente. Cuando ode45 falla (inestabilidad numrica, por
ejemplo) o es muy ineficiente, se sugiere emplear ode15s. Este esquema
funciona muy bien para resolver sistemas rgidos o problemas diferenciales-
algebraicos.
ode23s est basado en una modificacin de la frmula de Rosenbrock de orden
dos y constituye una alternativa al algoritmo anterior. Como se trata de un
mtodo de paso simple puede ser ms eficaz que el mismo con tolerancias
crudas y para algunos problemas rgidos en los que ode15s no es efectivo.
ode23t es una versin de la regla trapezoidal que recomienda para problemas
moderadamente rgidos y cuando se necesita una solucin sin amortiguamiento
numrico. Puede resolver tambin sistemas de ecuaciones diferenciales y
algebraicas.
ode23tb utiliza una frmula de Runge-Kutta con una primera fase que es un
paso de la regla trapezoidal y una segunda fase basada en la frmula de
diferenciacin numrica hacia atrs de segundo orden. Para tolerancias crudas
puede ser ms eficiente que ode15s.

1. Analizar el comportamiento de las distintas ODE para los valores dados.

El sistema que vamos analizar es:

Sistema masa-resorte-amortiguador.

Sistema masa-resorte-amortiguador:


M = Masa.
Kr = Constante del resorte.
Ka = Constante del amortiguador.
F = Fuerza Perturbadora.
Y = Eje en el cual se produce la oscilacin.

Ecuacin Diferencial:













Programa en Matlab:

clc
clear all
close all
global M F Kr Ka
M = 2 ;
Ka = 0.5 ;
Kr = 10 ;
F = 1 ;
T = [0 50] ;
yo = [0 ; 0] ;
[t,y] = ode45(@funcion_masa_resorte,T,yo) ;
plot(t,y(:,1),'-',t,y(:,2),'-.'), grid on

Funcin-masa-resorte

function dydt = funcion_masa_resorte(t,y)
global M F Kr Ka
if t <= 5
f = 0 ;
elseif t > 5 & t <= 10
f = 0.5*F ;
elseif t > 10
f = F ;
end
dydt = [y(2);
(1/M)*(f - Kr*y(1) - Ka*y(2))] ;

Condiciones iniciales:
M = 2 ; F = 1

Ka = 0.5 ; Kr = 10

T = 50 ; Y = 0

En primer lugar se analiza el comportamiento de las distintas ODE para los valores
dados:
ode45:

ode23:



ode113:


ode15s:



ode23s:



ode23t:



ode23tb:


El sistema que vamos analizar es:

Circuito RLC



EJEMPLO FUNCION CRL NO LINEAL.M
clc
clear all
close all
global R C U f UL IL k Lk tk
R=1;
C=2E-5;
U=10000;
f=50;

IL=[0.6 0.7 0.8 1 1.5 2 4 7.5 10];
UL=[135 155 175 195 220 235 265 290 300];

Io=[0;0]; T=[0 5]; k=1; tk=T(1);
[t,i]=ode45('funcion_CRL_no_lineal',T,Io);
plot(t,i(:,1))
plot(tk,Lk)

FUNCION CRL NO LINEAL
function didt=funcion_CRL_no_lineal(t,i)
global R C U UL IL f k Lk tk

if i(1)<=min(IL)
L=(1/(2*pi*f))*(min(UL))/(min(IL));
elseif i(1) > min(IL) && i(1)<=max(IL)
L=(1/(2*pi*f))*(spline(IL,UL,i(1)))/(i(1));
elseif i(1)>max(IL)
L=(1/(2*pi*f))*(max(UL))/(max(IL));
end

Lk(k)=L; %valores hallados por el script
tk(k)=t;
k=k + 1;

didt = [i(2);(1/L)*((sqrt(2))*U*(sin(2*pi*f*t)) - R*i(2) - 1/C*i(1))];











Los grficos obtenidos con los distintos ode son:

Ode45

El intervalo de tiempo es de 0 a 5 segundos, y la frecuencia es de 50 Hz.

Ode23s

El intervalo de tiempo es de 0 a 5 segundos, y la frecuencia es de 50 Hz.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8

Ode23

El intervalo de tiempo es de 0 a 5 segundos, y la frecuencia es de 50 Hz.

Ode15s

El intervalo de tiempo es de 0 a 5 segundos, y la frecuencia es de 50 Hz.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Ode113

El intervalo de tiempo es de 0 a 5 segundos, y la frecuencia es de 50 Hz.

Ode23t

El intervalo de tiempo es de 0 a 5 segundos, y la frecuencia es de 50 Hz.

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Para los distintos odes f=50 Hz i a un intervalo de 5 segundos, no podemos sacar
ninguna conclusin ya que las lneas estn muy prximas unas a otras, y se vuelve muy
denso los grficos, por lo tanto no podemos sacar ninguna conclusin. Tambin
podemos decir que puede haber un error en la funcin ya que el grafico aparece como
cortado por la mitad en todos los casos. Para poder analizar los distintos odes vamos a
achicar los intervalos de tiempos a 0.1 segundo.
Ode45

Aqu vemos un comportamiento anormal, ya que en el grafico es como que retrocede en
0.01 s aproximadamente. Este comportamiento fsicamente es imposible ya que el
tiempo no puede ser negativo.
Ode 23s



0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
0.35
0.4
0.45
0.5
0.55
0.6
0.65
0.7
0.75
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
0.4
0.45
0.5
0.55
0.6
0.65
0.7
0.75
Ode23


En este caso el grafico no vuelve hacia atrs como en el ode45, pero sucede lo
anteriormente dicho, presenta una como una asntota horizontal en 0.72
aproximadamente. Tambin se ve que un diente de cierra que es muy difcil que suceda
esto realmente.

2. Analizar comportamiento cambiando los valores para cada uno de las ODE
seleccionadas.
A continuacin se procede a cambiar la fuerza forzadora del sistema masa resorte y los
parmetros iniciales propuesto por la ctedra. La ley que sigue la fuerza forzadora es la
siguiente.
Valores de variables globales:



w=7;
M=10;
Ka=1.5;
Kr=5;
F=15;
T=[0 50]




0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
0.4
0.45
0.5
0.55
0.6
0.65
0.7
0.75
Script de la fuerza forzadora:
function dydt=funcion_masa_resorte(t,y)
global M F Kr Ka w

if t<=5
f=F*sin(w*t);
elseif t>5 & t<=10
f=2*F*sin(w*t);
elseif t>10
f=F;
end
dydt=[y(2);1/M*(f-Kr*y(1)-Ka*y(2))];


El sistema masa resorte amortiguado reacciono de la siguiente manera.


Utilizando ODE45:


0 5 10 15 20 25 30 35 40 45 50
-2
-1
0
1
2
3
4
5
6
Utilizando ODE15s:


Analizando las siguientes graficas no podemos encontrar diferencia en la utilizacin de
un ODE u otro, tampoco observamos anormalidades que no representen al sistema
fsico en cuestin, por lo que podemos decir que ambas funciones ODE obtienen la
solucin numrica del sistema fsico de manera satisfactoria. Debido a que la solucin
analtica del sistema fsico presentado se complica debido a la funcin por tramos que
representa a la fuerza forzadora, no se podr comparar dicha solucin con la solucin
numrica obtenida mediante la utilizacin de las ODE.















0 5 10 15 20 25 30 35 40 45 50
-2
-1
0
1
2
3
4
5
6
3. Utilizar diferentes tcnicas para representar las alinealidades (interpolacin,
ajuste de curvas, etc.) para cada una de las ODE seleccionadas.
Las tcnicas utilizadas para representar las alinealidades del circuito RLC fueron:
- Ajuste de Curva, para la cual se utilizo la ayuda del software Microsoft Office
Excel.
- Polinomio interpolador. Mediante el mtodo de LaGrange se busco el polinomio
que mejor se ajusta.
En este punto se utilizo la funcin ODE15s y ODE23tb.
Grafica con ajuste de curva mediante una funcin logartmica


Se procedi a tabular los datos de IL y UL en una planilla de Excel y se realizo la
grafica de UL (IL). Sobre la curva obtenida se busco una funcin que mejor se ajuste a
la seria de datos graficados. La funcin obtenida fue.



Esta funcin se utilizo en reemplazo de la funcin spline propuesta por la ctedra.
Tambin se procedi a cambiar las graficas mostradas por el programa, en nuestro caso
se grafican corrientes y inductancias en funcin del tiempo.

A continuacin se presentara la comparacin de los resultados obtenidos mediante un
ajuste logartmico y el ajuste utilizando la funcin spline.









y = 55,028ln(x) + 183,97
R = 0,9577
0
50
100
150
200
250
300
350
0 5 10 15
Series1
Logartmica (Series1)
Utilizando ODE15s:








Utilizando ODE23tb:









Una vez realizado los cambios en los programas propuestos por la ctedra se obtuvieron
las graficas anteriores. Analizando dichas graficas podemos observar que tanto
utilizando la funcin ODE15s u ODE23tb se observan anormalidades en las zonas
donde la inductancia vara de manera brusca.
Respecto a la diferencia observada en la utilizacin de un ajuste mediante una funcin
logartmica y la funcin spline, se puede mencionar que las graficas desarrolladas
cuando se utiliza un ajuste logartmico presentan picos anormales en la grafica de L (t).
No se pueden apreciar variaciones en la grafica I(t) con respecto a la utilizacin de uno
u otro.

Ajuste mediante la utilizacin de un polinomio interpolador. (Mtodo de LaGrange).

En el siguiente punto se busco representar la alinealidad producida por la saturacin del
nucleo de la bobina presente en el circuito RLC.
Se decidi representar la alinealidad mediante la utilizacin del mtodo de LaGrange el
cual al realizar la interpolacin del comportamiento de la bobina nos dio lo siguiente:




Para realizar dicho ajuste se procedi a realizar los siguientes cambios en el script
proporcionado por la ctedra.

Script funcin_CRL_no_lineal.m modificado.

function didt=funcion_CRL_no_lineal(t,i)
global R C U UL IL f k Lk tk Lo
x=IL;
y=UL;

n=length(x);
%GENERACION DE POLINOMIOS COEFICIENTES DE LAGRANGE
for h=1:n
v=1;
for j=1:n
if h~=j;
v=conv(v,poly(x(j)))/(x(h)-x(j));
end
end
Lo(h,:)=v;
end
0 1 2 3 4 5 6 7 8 9 10
120
140
160
180
200
220
240
260
280
300
Ca=y*Lo;

if i(2)<=min(IL)
L=(1/(2*pi*f))*(min(UL)/min(IL));
elseif i(2)>=min(IL) & i(2)<=max(IL)
L=(1/(2*pi*f))*((polyval(Ca,i(2)))/i(2));
elseif i(2)>max(IL)
L=(1/(2*pi*f))*(max(UL)/max(IL));
end

Lk(k)=L;
tk(k)=t;
k=k+1;

didt=[i(2);
(1/L)*((sqrt(2))*U*sin(2*pi*f*t)-R*i(2)-1/C*(i(1)))];



Una vez realizado los cambios se procedi a probar el programa. Lamentablemente se
obtuvieron los siguientes:

Warning: Failure at t=6.080499e-004. Unable to meet integration tolerances
without reducing the step size below the smallest value allowed (1.734723e-018) at
time t.
> In ode15s at 753
In EJEMPLO1_FUNCION_CRL_NO_LINEAL at 15
>>



Despus de realizar un detallado anlisis de las posibles causas, se pudo llegar a la
conclusin de que al ser el polinomio interpolador de grado muy elevado presenta alta
inestabilidad lo que podra producir errores en la funcin ode15s.
Conclusin:

Una vez realizadas todas las experiencias propuestas por la ctedra mediante la
utilizacin del software MATLAB se puede destacar la importancia que tiene dicho
software en la ingeniera, debido a las mltiples ventajas que el mismo presenta.
Algunas de las ventajas ms relevantes son el hecho de la rapidez con la cual se pueden
obtener resultados mediante la aplicacin de mtodos numricos que de otra manera
seria un proceso largo y complejo, tambin podemos decir que presenta una gran
facilidad para representar y obtener resultados confiables en la simulacin de
fenmenos fsicos sin la necesidad de realizar modelo fsico (ventaja econmica).
En lo que respecta a la utilizacin de las diferentes ODEs, se debe resaltar que no todas
obtienen resultados confiables, por lo que teniendo los conocimientos adquiridos en
otras materias debemos realizar un anlisis cuidadoso para determinar si los resultados
obtenidos pueden considerarse o solo representan anormalidades indeseadas.


Bibliografa:

-Apuntes de la ctedra MODELACION EN INGENIERIA.
SOLUCIN NUMRICA DE PROBLEMAS DE VALOR INICIAL. Dr. Ing. Aldo Luis
Caballero MSc. Ing. Corina Feltan.
SOLUCIN NUMRICA DE ECUACIONES. Dr. Ing. Aldo Luis Caballero MSc. Ing.
Corina Feltan.
INTERPOLACIN POR TRAMOS. Dr. Ing. Aldo Luis Caballero MSc. Ing. Corina Feltan.

-Los script utilizados fueron los propuestos por la catedra durante el cursado de la misma.

You might also like