Diferencias finitas para la ecuaci´on de ondas Vamos a resolver por diferencias finitas el problema
utt−uxx = 4e
−t
1+x2, x∈(0,1), t >0, ux(0, t) = 2te−t
2
, u(1, t) = 1+tt2, t >0, u(x,0) =x2(1−x), ut(x,0) = x, x∈(0,1).
(1)
Vamos a resolver en (a, b)×(c, d) = (0,1)×(0,3). Tomamos N = 5, de tal manera que dx = b−Na = 51. Consideramos los puntos xi = a+idx, i =
0,1,2,3,4,5.
Empezamos discretizando en el espacio.
utt(xi, t)−uxx(xi, t) =
4e−t
1 +x2
i
, i= 1,2,3,4.
Reemplazamos −uxx(xi, t) por
−u(xi−1, t) + 2u(xi, t)−u(xi+1t)
dx2 ,
aproximando onteniendo entonces una aproximaci´on de la ecuaci´on en derivadas patciales de (1)
utt(xi, t) +
−u(xi−1,t+ 2u(xi, t)−u(xi+1t)
dx2 =
4e−t
1 +x2
i
, i= 1,2,3,4. (2)
Si llamamos ui(t) = u(xi, t), i = 0,1,2,3,4,5 el sistema (2) lo podemos
escribir en la forma
u001(t) + −u0(t)+2u1(t)−u2(t)
dx2 = 1+4x2 1
e−t
u002(t) + −u1(t)+2u2(t)−u3(t)
dx2 =
4 1+x2
2e −t
u003(t) + −u2(t)+2u3(t)−u4(t)
dx2 =
4 1+x2
3 e−t
u004(t) + −u3(t)+2u4(t)−u5(t)
dx2 =
4 1+x2
1 e−t
(3)
No conocemos el valor de u(0, t), solo el valor de la dericvada con respecto a x.
ux(0, t) = lim
∆x→0
u(0 + ∆x, t)−u(0, t)
∆x = 2te
Tomamos ∆x = dx y aproximamos lim∆x→0 u(0+∆x,t∆x)−u(0,t) por u(dx,tdx)−u(0,t), por lo que
2te−t2 = u(dx, t)−u(0, t)
dx =
u(x1, t)−u(0, t)
dx =
u1(t)−u0(t) dx
⇒u0(t) = U u1(t)−2te−t 2
dx,
y el sistema (3) podemos escribirlo en la forma
u001(t) + −u1(t)+2te−t 2
dx+2u1(t)−u2(t)
dx2 =
4 1+x21e
−t
u002(t) + −u1(t)+2u2(t)−u3(t)
dx2 =
4 1+x2
2 e−t
u003(t) + −u2(t)+2u3(t)−u4(t)
dx2 =
4 1+x2
3e −t
u004(t) + −u3(t)+2u4(t)−
t
1+t2
dx2 =
4 1+x2
1e −t
(4)
o en forma equivalente
u001(t) + −u1(t)+2u1(t)−u2(t)
dx2 =
4 1+x2
1
e−t− 2te−t2 dx
u002(t) + −u1(t)+2u2(t)−u3(t)
dx2 =
4 1+x2
2 e−t
u003(t) + −u2(t)+2u3(t)−u4(t)
dx2 =
4 1+x2
3e −t
u004(t) + −u3(t)+2u4(t)
dx2 =
4 1+x2
1e
−t+ t
1+t2 1
dx2
(5)
Si llamamos
U(t) =
u1(t) u2(t) u3(t) u4(t)
, K =
1 -1 0 0
-1 2 -1 0
0 -1 2 -1
0 0 -1 2
, F(t) = 4 1+x2
1
e−t− 2te−t2 dx
4 1+x2
2e −t
4 1+x2
3 e−t
4 1+x2
4e
−t+ t
1+t2 1 dx2 ,
el sistema (5), junto con la condici´on inicial, puede escribirse en la forma
U00(t) =−KU(t) +F(t)
U(0) =
x21(1−x1) x2
2(1−x2) x2
3(1−x3) x24(1−x4)
El siguente paso es resolver estew sistema de 4 ecuaciones diferenciales de segundo orden.
Empezamos primeramente utilizando el m´etodo de Euler. Esto implica pasar de este sistema de 4 ecuaciones diferenciales de segundo orden a un sistema de 8 ecuaciones diferenciales de primer orden . Introduvcimos las funcionesu01(t) = v1(t), u02(t) =v2(t), u03(t) =v3(t), u04(t) =v(t),, las nuevas icognitas son 8 funciones que las designamos por u1(t), u2(t), u3(t), u4(t), v1(t),v2(t),v3(t),v4(t) que satisfacen el sistema de 8 ecuaciones diferenciales de primer orden
u01(t) = v1(t) u02(t) = v2(t) u03(t) = v3(t) u04(t) = v4(t)
v01(t) =−−u1(t)+2u1(t)−u2(t)
dx2 +1+4x2 1
e−t− 2te−t2 dx
v02(t) =−−u1(t)+2u2(t)−u3(t)
dx2 +
4 1+x2
2e −t
v03(t) =−−u2(t)+2u3(t)−u4(t)
dx2 +
4 1+x2
3 e−t
v04(t) = −u3(t)+2u4(t)
dx2 + 1+4x2 1
e−t+ t
1+t2dx12
(7)
LLamando V(t) =
v1(t) v2(t) v3(t) v4(t)
, (6) es equivalente a
U0(t) = V(t)
V0(t) =−KU(t) +F(t)
U(0) =
x21(1−x1) x22(1−x2) x2
3(1−x3) x24(1−x4)
, V(0) =
x1 x2 x3 x4
(8)
Si tomamos un paso temporal dt, definimos tj = 0 +jdt,Un y Vn designa la
soluci´on aproximada de U(tn) y V(tn) respectivamente, el m´etodo de Euler
aplicado a (8) queda en la forma
Un+1 Vn+1
=
Un
Vn
+dt
Un0(tn)
Vn0(tn)
=
Un
Vn
+dt
Vn
−KUn+F(t)
o escrito en otra forma
Un+1 =Un+dtVn
Vn+1 =Vn+dt(−KUn+F(tn))
U0 =
x2
1(1−x1) x22(1−x2) x23(1−x3) x2
4(1−x4)
, V0 =
x1 x2 x3 x4
(9)
Incluimos el programa matlab
% D i f e r e n c i a s f i n i t a s p a r a r e s o l v e r l a e c u a c i o n de ondas c l e a r a l l
L1=0; L2=1; % e x t r e m o s d e l i n t e r v a l o
% D i s c r e t i z a c i o n e s p a c i a l
dx=(L2−L1 ) /N; x=L1+dx : dx : L2−dx ;
U=(x . ˆ 2 .∗( 1−x ) ) ’ ; % p o s i c i o n i n i c i a l
V=x ’ ; % v e l o c i d a d i n i c i a l
TF=3; % t i e m p o f i n a l
% d i s c r e t i z a c i n en t i e m p o
dt=dx / 1 0 ; t =0: dt : TF ;
% m a t r i z que aproxima −u x x
K=(1/( dx ˆ 2 ) )∗( 2∗diag( o n e s ( 1 ,N−1) ) −diag( o n e s ( 1 ,N−2) , 1 )−diag
( o n e s ( 1 ,N−2) ,−1) ) ;
k ( 1 , 1 ) =1/dx ˆ 2 ;
g =4./(1+ x . ˆ 2 ) ’ ; % s e g u n d o miembro
s o l ( 1 , : ) =[U( 1 ) ,U ’ , 0 ] ; % m a t r i z que c o n t i e n e l a s o l u c i o n p a r a d i b u j a r l a
f=zeros(N−1 ,1) ; % v e c t o r con l a a p o r t a c i o n de l a f r o n t e r a
f o r k =1:length( t )−1
f ( 1 ) =−(2∗t ( k )∗exp(−t ( k ) ˆ 2 ) / dx ) ; % c o n d i c i o n neumann en
x=L1
f (N−1)=( t ( k ) /((1+ t ( k ) ˆ 2 )∗dx ˆ 2 ) ) ; % c o n d i c i o n d i r i c h l e t en x=L2
U=U+dt∗V; % metodo e x p l i c i t o
V=V+dt∗(−K∗U+g∗exp(−t ( k ) )+f ) ;
s o l ( k + 1 , : ) =[U( 1 )−2∗t ( k )∗exp(−t ( k ) )∗dx , U’ , t ( k ) /(1+ t ( k ) ˆ 2 ) ] ;
end
%D i b u j o de l a s o l u c i o n
x1=L1 : dx : L2 ;
[ X, T]=meshgrid( x1 , t )