Вы находитесь на странице: 1из 10

Prof. D. Rueda C.

Diferencias Finitas
0.1 Mtodo de diferencias nitas
Problema:
_

_
j
00
= ) (r, j, j
0
)
j (a) = c
j (/) = ,
, r [a, /] (1)
0.1.1 Expansin en series de Taylor
Es conveniente usar:
j (r + /) = j (r) + j
0
(r) / + j
00
(r)
/
2
2!
+ j
000
(r)
/
3
3!
+
j (r /) = j (r) j
0
(r) / + j
00
(r)
/
2
2!
j
000
(r)
/
3
3!
+
Si / es pequeo los trminos que involucran /
4
, /
5
, ... pueden ser despreciados de modo que
podemos obtener
j
0
(r) -
1
/
[j (r + /) j (r)] (2)
j
0
(r) -
1
/
[j (r) j (r /)] (3)
j
0
(r) -
1
2/
[j (r + /) j (r /)] (4)
j
00
(r) -
1
/
2
[j (r + /) 2j (r) + j (r /)] (5)
Terminologa a usar:
j (r + /) j (r) : diferencia progresiva, adelantada o posterior (forward dierence)
j (r) j (r /) : diferencia regresiva, atrasada o anterior (backward dierence)
j (r + /) j (r /) : diferencia central (central dierence)
j (r + /) 2j (r) + j (r /) : diferencia central (central dierence)
0.1.2 Mtodo
Dividimos el intervalo [a, /] en : subintervalos regulares:
a = r
0
< r
1
< r
2
< < r
n1
< r
n
= /
1
Prof. D. Rueda C. Diferencias Finitas
donde
r
0
= a
r
1
= a + /
r
2
= a + 2/
.
.
.
r
n1
= a + (: 1) /
r
n
= /
con / = (/ a) ,:.
Haciendo j
i
= j (r
i
) y usando j
0
y j
00
de (4) y (5) en (1) resulta el sistema con :1 variables
j
1
, j
2
, ..., j
n1
:
_

_
j
0
= c
j
i+1
2j
i
+ j
i1
/
2
= )
_
r
i
, j
i
,
j
i+1
j
i1
2/
_
, 1 _ i _ : 1
j
n
= ,
(6)
0.1.3 Caso lineal
Como se sabe esto ocurre si
)
_
r, j, j
0
_
= j (r) j
0
+ (r) j + r (r)
Hacemos
j
i
= j (r
i
)
j
i
= j (r
i
)

i
= (r
i
)
r
i
= r (r
i
)
con i = 0, 1, 2, ..., :.
No perdamos de vista que:
j
0
= j (r
0
) = j (a) = c
j
n
= j (r
n
) = j (/) = ,
Usando j
0
y j
00
de (4) y (5) y reemplazando en (1) se consigue
j
i+1
2j
i
+ j
i1
/
2
= j
i
_
j
i+1
j
i1
2/
_
+
i
j
i
+ r
i
2
Prof. D. Rueda C. Diferencias Finitas
Simplicando obtenemos

_
1 +
/
2
j
i
_
j
i1
+
_
2 + /
2

i
_
j
i

_
1
/
2
j
i
_
j
i+1
= /
2
r
i
(7)
Esta ecuacin ser llamada ecuacin en diferencias nitas y nos permitir aproximar la
solucin j (r) de (1) en los puntos interiores r
1
, r
2
, ..., r
n1
del intervalo [a, /] .
Para i = 0, 1, 2, ..., : hacemos
_

_
a
i
=
_
1 +
/
2
j
i
_
d
i
= 2 + /
2

i
c
i
=
_
1
/
2
j
i
_
/
i
= /
2
r
i
por lo que (5) resulta
a
i
j
i1
+ d
i
j
i
+ c
i
j
i+1
= /
i
(8)
Notemos que cuando i = 1 e i = : 1 se tiene
d
1
j
1
+ c
1
j
2
= /
1
a
1
c
a
n1
j
n2
+ d
n1
j
n1
= /
n1
c
n1
,
Matricialmente (8) resulta ser un sistema tridiagonal como se muestra a continuacin
_

_
d
1
c
1
a
2
d
2
c
2
a
3
d
3
c
3
.
.
.
.
.
.
.
.
.
a
n2
d
n2
c
n2
a
n1
d
n1
_

_
_

_
j
1
j
2
j
3
.
.
.
j
n2
j
n1
_

_
=
_

_
/
1
a
1
c
/
2
/
3
.
.
.
/
n2
/
n1
c
n1
,
_

_
0.1.4 Caso no lineal
De la ecuacin (7) se tiene que
j
0
= c
j
i+1
2j
i
+ j
i1
/
2
= )
_
r
i
, j
i
,
j
i+1
j
i1
2/
_
, 1 _ i _ : 1
j
n
= ,
3
Prof. D. Rueda C. Diferencias Finitas
o equivalentemente
2j
1
j
2
+ /
2
)
_
r
1
, j
1
,
j
2
c
2/
_
c = 0
j
1
+ 2j
2
j
3
+ /
2
)
_
r
2
, j
2
,
j
3
j
1
2/
_
= 0
j
2
+ 2j
3
j
4
+ /
2
)
_
r
3
, j
3
,
j
4
j
2
2/
_
= 0
.
.
.
j
n3
+ 2j
n2
j
n1
+ /
2
)
_
r
n2
, j
n2
,
j
n1
j
n3
2/
_
= 0
j
n2
+ 2j
n1
+ /
2
)
_
r
n1
, j
n1
,
, j
n2
2/
_
, = 0
que tiene solucin nica si / < 2,1 (Vase Keller, H. p,86) donde 1 = max
(x;y;y
0
)2D

)
y
0 (r, j, j
0
)

,
1 = [a, /] R
2
.
Como el sistema resulta no lineal, se usar el mtodo de Newton para determinar j
1
, j
2
, ..., para
ello hacemos
1 (j
1
, j
2
, , j
n1
) =
_

_
2j
1
j
2
+ /
2
)
_
r
1
, j
1
,
j
2
c
2/
_
c
j
1
+ 2j
2
j
3
+ /
2
)
_
r
2
, j
2
,
j
3
j
1
2/
_
j
2
+ 2j
3
j
4
+ /
2
)
_
r
3
, j
3
,
j
4
j
2
2/
_
.
.
.
j
n3
+ 2j
n2
j
n1
+ /
2
)
_
r
n2
, j
n2
,
j
n1
j
n3
2/
_
j
n2
+ 2j
n1
+ /
2
)
_
r
n1
, j
n1
,
, j
n2
2/
_
,
_

_
y calculamos su matriz jacobiana resultado una matriz tridiagonal
_

_
d
1
c
1
a
2
d
2
c
2
a
3
d
3
c
3
.
.
.
.
.
.
.
.
.
a
n2
d
n2
c
n2
a
n1
d
n1
_

_
4
Prof. D. Rueda C. Diferencias Finitas
0.1.5 Ejercicio
1. Resolver usando diferencias nitas
_

_
j
00
= t(j
0
)
2
j(0) = ,2
j(2) = ,4
y comparar con la solucin analtica j = cot(r,2)
Implementar: ) (t, j, j
0
) = t (j
0
)
2
, adems
0
0j
)
_
t, j, j
0
_
= 0
0
0j
0
)
_
t, j, j
0
_
= 2tj
0
0.2 Mtodo de Galerkin
Problema:
_

_
j
00
= ) (t, j, j
0
)
j (a) = j
a
j (/) = j
b
, t [a, /] (9)
Idea bsica:
Elegiremos una solucin aproximada j de modo que la funcin residual r = j
00
) sea tan
pequea como sea posible. En analoga al mtodo de los mnimos cuadrados, se trata de hacer que
r sea ortogonal al espacio de potenciales soluciones.
Denimos
1
2
[a, /] =
_
funciones j (t) denidas sobre [a, /] t.q.
_
b
a
[j (t)]
2
dt <
_
El espacio de funciones 1
2
tiene un producto interno denido por
j
1
, j
2
=
_
b
a
j
1
(t) j
2
(t) dt
as, dos funciones j
1
y j
2
son ortogonales si j
1
, j
2
= 0.
Como 1
2
tiene dimensin innita no es posible hacer que el residual r sea ortogonal a todo 1
2
mediante clculos nitos. Sin embargo, podemos elegir una base que genere 1
2
tanto como sea
posible segn los clculos computacionales nos permitan. Para ello, elegimos : + 2 funciones
bases: c
0
, c
1
, c
3
, ..., c
n+1
.
El mtodo de Galerkin consiste en usar dos ideas principales:
5
Prof. D. Rueda C. Diferencias Finitas
1. Minimizamos r forzando a que r sea ortogonal a las funciones bases, en el sentido del
producto interno en 1
2
. Esto signica que
_
b
a
_
j
00
)
_
c
i
dt = 0
o equivalentemente
_
b
a
j
00
(t) c
i
(t) dt =
_
b
a
)
_
t, j, j
0
_
c
i
(t) dt
para cada i = 0, 1, ..., : + 1.
2. Usamos integracin por partes para eliminar la segunda derivada. En efecto
_
b
a
j
00
(t) c
i
(t) dt = c
i
(/) j
0
(/) c
i
(a) j
0
(a)
_
b
a
j
0
(t) c
0
i
(t) dt
luego se tendra
_
b
a
)
_
t, j, j
0
_
c
i
(t) dt = c
i
(/) j
0
(/) c
i
(a) j
0
(a)
_
b
a
j
0
(t) c
0
i
(t) dt (10)
Candidatura para la funcin aproximacin!! Evidentemente, la funcin que aproxime a
la solucin es de la forma
j (t) =
n+1

i=0
c
i
c
i
(t)
la que queda determinada si conocemos las funciones base c
i
y las constantes c
i
.
Qu funciones c
i
podemos usar? . Los 1 :j|i:c:!! En este caso usaremos los 1 splines
lineales por tramos. En efecto, empezamos considerando t
0
< t
1
< t
2
< ... < t
n
< t
n+1:
Para
cada i denimos
c
i
(t) =
_

_
t t
i1
t
i
t
i1
si t
i1
< t _ t
i
t
i+1
t
t
i+1
t
i
si t
i
< t < t
i+1
0 otro ca:o
i = 1, 2, ..., :
Tambin denamos
c
0
(t) =
_
_
_
t
1
t
t
1
t
0
si t
0
_ t < t
1
0 otro ca:o
c
n+1
(t) =
_
_
_
t t
n
t
n+1
t
n
si t
n
< t _ t
n+1
0 otro ca:o
Por otro lado, las funciones anteriores cumplen:
6
Prof. D. Rueda C. Diferencias Finitas
1. c
i
(t
j
) =
_
1 si i = ,
0 i ,= ,
2. Si j (t) =
n+1

i=0
c
i
c
i
(t) , se sigue que j (t
j
) = c
j
, es decir
j (t
0
) = j (a) = j
a
= c
0
j (t
1
) = c
1
j (t
2
) = c
2
.
.
.
j (t
n
) = c
n
j (t
n+1
) = j (/) = j
b
= c
n+1
por lo que j interpola los puntos (t
i
, c
i
) = (t
i
, j (t
j
)) !!!!! Esto conrmara la tesis de que
j (t) =
n+1

i=0
c
i
c
i
(t) es la funcin que aproxima la solucin de la ecuacin diferencial.
Por tanto, la clave est en hallar c
1
, c
2
, .., c
n
!!!
Ecuaciones que permiten hallar los c
0
i
: :
Haciendo uso de los 1 :j|i:c: lineales, para i = 1, 2, 3, ..., : en (10) se tiene: c
i
(a) =
c
i
(/) = 0, por lo que tenemos
_
b
a
)
_
t, j, j
0
_
c
i
(t) dt +
_
b
a
j
0
(t) c
0
i
(t) dt = 0 (11)
donde debemos sustituir j (t) =
n+1

j=0
c
j
c
j
(t) resultando:
_
b
a
c
i
(t) )
_
_
t,
n+1

j=0
c
j
c
j
(t) ,
n+1

j=0
c
j
c
0
j
(t)
_
_
dt +
_
b
a
c
0
i
(t)
n+1

j=0
c
j
c
j
(t) dt = 0
!Aqu estn representadas : ecuaciones con las incgnitas c
1
, c
2
, .., c
n
!!!!!!!
Integrales tiles!!
Consideramos en este punto el tamao de paso /, es decir t
i
t
i1
= / : Se tienen las siguientes
7
Prof. D. Rueda C. Diferencias Finitas
integrales para i = 1, ..., :
_
b
a
c
i
(t) c
i+1
(t) dt =
_
h
0
t
/
_
1
t
/
_
=
/
6
_
b
a
[c
i
(t)]
2
dt = 2
_
h
0
_
t
/
_
2
dt =
2
3
/
_
b
a
c
0
i
(t) c
0
i+1
(t) dt =
_
h
0
1
/
_

1
/
_
dt =
1
/
_
b
a
_
c
0
i
(t)

2
dt = 2
_
h
0
_
1
/
_
2
dt =
2
/
!Recuerden que las otras integrales se anulan!!!
Para el clculo de las integrales anteriores usen la propiedad
_
t
i
+h
t
i
c(t) dt =
_
h
0
c(t + t
i
) dt
0.2.1 Ejecicio: Pizarra.
1. Resolver
_

_
j
00
= ) (t, j, j
0
) = 4j
j (0) = 1
j (1) = 3
, t [0, 1]
SOL:
Reemplazamos j (t) =
n+1

j=0
c
j
c
j
(t) en (11), teniendo en cuenta que ) (t, j, j
0
) = 4j. Se tendra
_
b=1
a=0
_
_
4
n+1

j=0
c
j
c
j
(t)
_
_
c
i
(t) dt +
_
b=1
a=0
_
_
n+1

j=0
c
j
c
0
j
(t)
_
_
c
0
i
(t) dt = 0
equivalente a
n+1

j=0
c
j
_
4
_
b=1
a=0
c
j
(t) c
i
(t) dt +
_
b=1
a=0
c
0
j
(t) c
0
i
(t) dt
_
= 0 (12)
Nota: Se ha usado la propiedad
_
b
a
_
N

k=1
)
k
(r)
_
dr =
_
b
a
[)
1
(r) + )
2
(r) + )
N
(r)] dr
=
_
b
a
)
1
(r) dr +
_
b
a
)
2
(r) dr +
_
b
a
)
N
(r) dr
=
N

k=1
_
b
a
)
k
(r) dr
8
Prof. D. Rueda C. Diferencias Finitas
Debemos tener en cuenta que como el tamao de paso es uniforme, es decir los subintervalos
tienen longitud /. Las funciones bases quedara as
c
0
(t) =
_
_
_
t
1
t
/
si t
0
_ t < t
1
0 otro ca:o
c
n+1
(t) =
_
_
_
t t
n
/
si t
n
< t _ t
n+1
0 otro ca:o
c
i
(t) =
_

_
t t
i1
/
si t
i1
< t _ t
i
t
i+1
t
/
si t
i
< t < t
i+1
0 otro ca:o
i = 1, 2, ..., :
Sus derivadas son
c
0
0
(t) =
_
_
_

1
/
si t
0
< t < t
1
0 si t
1
< t < /
c
0
n+1
(t) =
_
_
_
1
/
si t
n
< t _ t
n+1
0 si a < t < t
n
c
0
i
(t) =
_

_
1
/
si t
i1
< t < t
i

1
/
si t
i
< t < t
i+1
0 si a < t < t
i1
; t
i+1
< t < /
i = 1, 2, ..., :
Determinamos las ecuaciones:
Para obtener la primera ecuacin hacemos i = 1 en (12)
n+1

j=0
c
j
_
4
_
1
0
c
j
(t) c
1
(t) dt +
_
1
0
c
0
j
(t) c
0
1
(t) dt
_
= 0
desarrollando la suma
c
0
_
4
_
1
0
c
0
(t) c
1
(t) dt +
_
1
0
c
0
0
(t) c
0
1
(t) dt
_
+ c
1
_
4
_
1
0
c
1
(t) c
1
(t) dt +
_
1
0
c
0
1
(t) c
0
1
(t) dt
_
+
c
2
_
4
_
1
0
c
2
(t) c
1
(t) dt +
_
1
0
c
0
2
(t) c
0
1
(t) dt
_
+ c
3
_
4
_
1
0
c
3
(t) c
1
(t) dt +
_
1
0
c
0
3
(t) c
0
1
(t) dt
_
+ +
c
n+1
_
4
_
1
0
c
n+1
(t) c
1
(t) dt +
_
1
0
c
0
n+1
(t) c
0
1
(t) dt
_
= 0
slo quedara (los trminos restantes se anulan)
c
0
_
4
_
1
0
c
0
(t) c
1
(t) dt +
_
1
0
c
0
0
(t) c
0
1
(t) dt
_
+ c
1
_
4
_
1
0
c
1
(t) c
1
(t) dt +
_
1
0
c
0
1
(t) c
0
1
(t) dt
_
+
c
2
_
4
_
1
0
c
2
(t) c
1
(t) dt +
_
1
0
c
0
2
(t) c
0
1
(t) dt
_
= 0
9
Prof. D. Rueda C. Diferencias Finitas
Haciendo uso de las integrales tiles tendramos
c
0
_
4
_
/
6
_

1
/
_
+ c
1
_
4
_
2
3
/
_
+
2
/
_
+ c
2
_
4
_
/
6
_

1
/
_
= 0
as conseguimos la primera ecuacin
_
2
3
/
1
/
_
c
0
+
_
8
3
/ +
2
/
_
c
1
+
_
2
3
/
1
/
_
c
2
= 0
Anlogamente, conseguimos
_
2
3
/
1
/
_
c
1
+
_
8
3
/ +
2
/
_
c
2
+
_
2
3
/
1
/
_
c
3
= 0
.
.
.
_
2
3
/
1
/
_
c
n1
+
_
8
3
/ +
2
/
_
c
n
+
_
2
3
/
1
/
_
c
n+1
= 0
donde sabemos que c
0
= j
a
= 1 y c
n+1
= j
b
= 3.
Para hallar los c
j
, haciendo c =
8
3
/ +
2
/
y , =
2
3
/
1
/
resolvemos el sistema tridiagonal:
_

_
c ,
, c ,
, c ,
.
.
.
.
.
. ,
, c
_

_
_

_
c
1
c
2
c
3
.
.
.
c
n
_

_
=
_

_
j
a
,
0
0
.
.
.
j
b
,
_

_
10

Вам также может понравиться