Professional Documents
Culture Documents
PARCIALES METODO
DIFERENCIA FINITA
Laura Alejandra Gutierrez Tovar
Cristian David Hernandez Bobon
Cod: 20132121285 - 20131119566
MATEMATICA
APLICADA
15 de septiembre de 2015
Introducci
on
Las ecuaciones diferenciales parciales son una forma de solucionar problemas de la vida real desde el punto de vista matematico en el que se haga
intervenir dos o mas variables independientes, por medio de derivadas parciales de aquellas variables, problemas que se refire algunos fenomenos de
la naturaleza como vibraciones de cuerda, membranas, oscilaciones, conductibilidad termica y difusion; problemas que aparecen al estudiar procesos
estacionarios (que no cambian con el tiempo). En este artculo estudiaremos
el metodo de diferencias finitas, como es de saber es un metodo numerico
utilizado para calcular de manera aproximada las soluciones de ecuaciones
diferenciales ordinarias y parciales, usando las ecuaciones de diferencias finitas.
1.
Aproximaci
on Num
erica de Diferencias Finitas
Si deseamos determinar la funcion f (x) que satisface una ecuacion diferencial en un dominio determinado, junto a condiciones iniciales del problema.
Se empieza por diferenciar la variable independiente x, para despues contruir una grilla o malla, con puntos discretos igualmente espaciados sobre
su dominio. Se reemplazan los terminos en la ecuacion diferencial que involucren diferenciacion por terminos que contengan operaciones algebraicas.
As su aproximacion se halla mediante diferencias finitas con las siguientes
tres ecuaciones
0
f (x) '
f (x + h f (x))
h
(1)
f (x) f (x h)
h
(2)
Ahora,
0
f (x) '
Finalmente,
0
f (x) '
f (x + h) f (x h)
2h
(3)
ba
;
n+1
(4)
ademas la funcion evaluada en; f (xi+1 ) = f (x + h) dado este punto maya las
ecuaciones en diferencias seran:
0
f (xi ) '
f (xi+1 ) f (xi )
h
(5)
f (xi ) f (xi1 )
h
f (xi+1 ) f (xi1 )
0
f (xi ) '
2h
0
f (xi ) '
(6)
(7)
(x x0 )(x x1 ) 00
f ((x))
2
(8)
Al derivar se obtiene:
0
f =
(x x0 )(x x0 h) 00
f (x0 + h) f (x0 )
+ Dx [
f ((x))]
h
2
(9)
f (x0 + h) f (x0 ) (x x0 ) h 00
(x x0 )(x x0 h)
00
+2
f ((x))+
Dx (f ((x))
h
2
2
0
verdaderamente se desconoce el valor de Dx f ((x)) por la cual no se puede estimar un error de truncamiento, pero cuando x es x0 el coeficiente
00
Dx f ((x)) = 0 y la formula se simplifica:
0
f (x0 ) =
f (x0 + h) f (x0 ) h 00
f ()
h
2
h2 00
h3 000
h4 0000
f (xi ) + f (xi ) + f (i+1 )
2
6
24
(10)
para alg
un i en (xi , xi + h).
0
h2 00
h3 000
h4 0000
f (xi ) f (xi ) + f (i1 )
2
6
24
(11)
Donde xi h < i1 < xi < i+1 < xi + h ahora a las anteriores ecuaciones
0
se le agrega el termino f (xi )h se cancela y sumandolas se obtiene
00
h4 0000
0000
[f (i1 ) + f (i+1 )]
24
(12)
00
f (xi ) =
1
h4 0000
0000
[f (i1 ) + f (i+1 )] (13)
[f
(x
)
2f
(x
)
+
f
((x
))]
i+1
i
i1
2
h
24
0000
0000
0000
suponemos que f es continua en [xi1 , xi+1 ], dado que 12 [f (i1 )+f (i+1 )]
0000
0000
se encuentra entre f (i1 ) + f (i+1 ) , el teorema de valor intermedio implica que existe un que pertenece al intervalo (xi1 ,xi+1 ), por tanto, esto
nos permite reescribir la ecuacion (12) como:
00
f (xi ) =
h2 0000
1
[f
(x
)
2f
(x
)
+
f
((x
)]
[f ()]
i1
i
i+1
h2
12
(14)
2.
h2
h3
h4
(Uxx )ij (Uxxx )ij + (Uxxxx )ij
2
6
24
(15)
k2
k3
k4
(Uyy )ij (Uyyy )ij + (Uyyyy )ij
2
6
24
(16)
Ux =
1
1
[U (x, y)U (xh, y)] ' [(Ui,j Ui1,j )+O(h)] Dif. F inita Atrazada
h
h
(18)
1
1
[U (x+h, y)U (xh, y)] '
[(Ui+1,j Ui1,j )+O(h2 )] Dif. F in Centrada
2h
2h
(19)
La cantidad O(h) y O(h2 ) es conocido como el error de truncamiento en el
proceso de discretizacion.
Una aproximacion similar para Uxx en el vertice pi ,j es:
Ux =
Uxx =
1
1
[U (x+h, y)2U (x, y)+U (xh, y)] ' 2 [Ui+1,j 2Ui,j +Ui1,j +O(h2 )]
2
h
h
(20)
1
1
[U (x, y+k)U (x, y)] ' [(Ui,j+1 Ui,j )+O(k)] Dif F inita Adelantada.
k
k
(21)
Uy =
1
1
[U (x, y)U (x, yk)] ' [(Ui,j Ui,j1 )+O(k)] Dif erencia F inita Atrazada.
k
k
(22)
Uy =
1
1
[U (x, y+k)U (x, yk)] '
[(Ui,j+1 Ui,j1 )+O(k 2 )] Dif F in Centrada.
2k
2k
(23)
1
1
[U
(x,
y+k)+2U
(x,
y)+U
(x,
yk)]
'
[Ui,j+1 2Ui,j +Ui,j1 +O(k 2 )]
k2
k2
(24)
Dadas estas formulas de diferencias finitas se reconoce su utilidad para encontrar soluciones numericas de ecuaciones diferenciales de primer y segundo
orden.
Suponga que M (x, y) representa una solucion exacta de una ecuacion diferencial parcial L(M ) = 0 con variables independientes x e y, ademas Ui,j es
la solucion exacta correspondiente a la ecuacion de diferencias finitas.
F (Ui,j ) = 0. El esquema de diferencias finitas es llamado convergente si Ui,j
tiende a M cuando h y k tienden a 0 y Di,j = (Mi,j Ui,j ) es llamado error
de truncamiento acomulado o discretizacion.
Uyy =
(25)
2.1.
M
etodo Explcito de Lax-Wendroff
k2
k3
(utt )i,j + (uttt )i,j +
2!
3!
c2 k 2
(uxx )i,j +
2!
ck
2h
(ui+1,j
1
ui1,j ) +
2
ck
2h
2
(ui+1,j 2ui,j + ui1,j ) o
(1)
ck
Donde = . Esto
es llamado esquema de diferencia finita de segundo orden
h
de Lax-Wendroff.
Note que la funcion de error er,s dada por:
er,s = exp (irh + su) = exp (irh)P s
Donde P = exp (k). es una constante compleja y |P | 6 1. Esta ecuacion
satisface obteniendo:
P = (1 2 ) + (1 + )eih (1 )eih
2
h
h
h
2
2
P = 1 2 sin
2i sin
cos
2
2
2
h
P 2 = 1 42 (1 2 ) sin4
2
La ecuacion (1) es estable cuando t si |P | 6 1 el cual esta dada por
42 (1 2 ) > 0 para 0 6 6 1. El error de truncamiento de la ecuacion (1)
de Lax-Wendroff en Pi,j es:
1
Ti,j = (ui,j+1 ui1,j )
k
Ti,j = (ut + c ux ) +
k
k2
utt c2 uxxx i,j +
uttt + c3 uxxx i,j + 0 (ck)3
2
6
1 2
k uttt + ch2 uxxx i,j
6
3.
M
etodo Explcito de Diferencias Finitas
2u
+
u
)
=
(ui+1,j 2ui,j + ui1,j )
i,j+1
i,j
i,j1
k2
h2
c2 k 2
ui,j+1 = 2 (ui+1,j 2ui,j + ui1,j ) + 2ui,j ui,j1
h
ck
ui,j+1 = 2 (ui+1,j + ui1,j ) + 2(1 2 )ui,j ui,j1 ; =
h
Esta formula explcita determina los valores aproximados en la red de puntos
sobre la lnea t = 2k, 3k, 4k, , cuando los valores de la red en t = k tienen
que ser obtenidas.
Valores de la condicion inicial en t = 0 son:
ui,0 = fi
1
(ui,1 ui,1 ) = gi,0
2k
ui,0 = fi
ui+1,0 = fi+1
Cuando j = 0
ui,1 = 2 (ui+1,0 + ui1,0 ) + 2 1 2 (ui,0 ) ui,1
Reemplazando valores
ui,1 = 2 (fi+1 + fi1 ) + 2 1 2 fi ui,1 + 2k gi,0
Paso el ui,1 a sumar al otro lado de la ecuacion:
2ui,1 = 2 (fi+1 + fi1 ) + 2 1 2 fi + 2k gi,0
Paso el 2 a dividir
ui,1 =
2
(fi+1 + fi1 ) + 1 2 fi + k gi,0
2
4.
EJEMPLOS
12
4.1.
Ecuaci
on Kdv
xj
;
j
0j2
ht =
tm
;
m
0m3
Uj,m+1 Uj,m
ht
Ux (x, t)
Uj+1,m Uj,m
hx
Uxx (x, t)
Uxxx (x, t)
Ut U Ux + Uxxx = 0
Tenemos,
Uj,m+1 Uj,m
ht
U (Uj+1,m
ht j,m
Uj,m ) +
(2Uj,m
2h3x
Uj+1,m Uj1,m ) = 0
Desarrollando,
ht
ht
Uj,m+1 Uj,m hhxt Uj,m Uj+1,m + hhxt Uj,m + hh3t Uj,m 2h
3 Uj+1,m 2h3 Uj1,m =
x
x
x
0
Sacando factor com
un:
ht
ht
Uj,m (1 hhxt Uj,m+1 + hhxt + hh3t ) Uj,m+1 2h
3 Uj,m+1 + 2h3 Uj1,m = 0
x
Reemplazando tenemos:
1
+(1Uj+1,m )1
Uj,m =
Uj,m+1 + 2 Uj+1,m + 2 Uj1,m
Donde:
hx = 2 ; ht = 1
=
;=
4
3
Por u
ltimo
Uj,m =
1
4 3
+ 2
3
Uj,m+1 +
2
U
3 j+1,m
14
2
U
3 j1,m
4.2.
C
odigo Ecuaci
on KDV
clear;
L=1.;
T=1;
a=1
b=0.5
maxk=2500;
dt=T/maxk;
n=50;
dx=L/n;
cond=1/4;
y=a*cond*dt/(dx*dx)
for j=(1):n+1
x(j)=(j-1)*dx;
u(j,1)=sin(pi*x(j));
end
for m=1:maxk+1
u(1,m)=0.;
u(n+1,m)=0.;
time(m)=(m-1)*dt;
end
for m=1:maxk
for j=2:n;
u(j,m)= (1/(y+y*(1-u(j+1,m))-1))*(u(j,m+1)+(y/2)*
(u(j+1,m))+(y/2)*(u(j-1,m)));
end
end
figure(1)
plot(x,u(:,1),-,x,u(:,100),-,x,u(:,300),-,x,u(:,600),-)
title(Ecuacion Kdv)
xlabel(X)
ylabel(T)
figure(2)
mesh(x,time,u)
title(Ecuacion kdv)
xlabel(X)
ylabel(T)
15
4.3.
Ecuaci
on de Fisher
; ht=
3
=1
3
ht
(uj+1,m 2uj,m + uj1,m )
hx2
ht
ht
) + 2 uj+1,m
2
hx
hx
17
4.4.
C
odigo Matlab Ecuaci
on Fisher
18
figure(1)
plot(x,u(:,1),-,x,u(:,100),-,x,u(:,300),-,x,u(:,600),-)
title(FLuido)
xlabel(X)
ylabel(T)
figure(2)
mesh(x,time,u)
title(Fluido)
xlabel(X)
ylabel(Temperatura)
19
Referencias
[1] Tyn, Myint. y Lokenath,Debnath, Linear Partial Differential
Equations for Scientists and Engineers, Fourth Edition, Birkhauser, Boston,Basel, Berlin, 2007.
20