condicionesdecontornoofrontera³n_problemas_contorno... · o,w i1c 24h 2 w icw ic1d0:...

34
1/34 Universidad Politécnica de Madrid–Escuela Técnica Superior de Ingenieros Industriales Grado en Ingeniería en Tecnologías Industriales. Curso 2015-2016-3º Matemáticas de Especialidad–Ingeniería Eléctrica Integración de ecuaciones diferenciales ordinarias con Condiciones de Contorno o Frontera José Luis de la Fuente O’Connor [email protected] [email protected] Clase_integración_problemas_contorno_2016.pdf

Upload: nguyenphuc

Post on 01-Oct-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

1/34Universidad Politécnica de Madrid–Escuela Técnica Superior de Ingenieros IndustrialesGrado en Ingeniería en Tecnologías Industriales. Curso 2015-2016-3º

Matemáticas de Especialidad–Ingeniería Eléctrica

Integración de ecuaciones diferenciales ordinarias con

Condiciones de Contorno o Frontera

José Luis de la Fuente O’[email protected]@upm.es

Clase_integración_problemas_contorno_2016.pdf

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

2/34

Índice

� Introducción

� El método del disparo

� El método de las diferencias finitas

� Métodos de colocación y de elementos finitos

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

3/34Introducción

� En este tema analizamos los problemas que se pueden modelizar mediante unaecuación diferencial de segundo orden con condiciones en dos puntos dados,extremos de un intervalo de estudio Œa; b�.

� Son los denominados problemas de ecuaciones diferenciales con valores en lafrontera, o problemas de contorno. Se formulan así:

y 00 D f .t; y; y 0/; y.a/ D ˛; y.b/ D ˇ:

� Para definir la solución se necesitan dos condiciones de contorno:

� Si se dan para un mismo punto, se tiene un problema de valor inicial comolos que hemos estudiado.

� Si se dan para dos puntos, se tiene un problema de valores en la frontera.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

4/34El método del disparo

� Se basa en encontrar la ecuación diferencial que tiene la misma solución del decontorno que se estudia.

� Con tal fin se genera una sucesión de problemas de valor inicial que converja aldado.

Chemical Engineering Dep.

ChE-401: Computational Methods in Chem. Eng.

King Saud University ٢٥Prof. Ibrahim S. Al-Mutaz

Shooting method

Chemical Engineering Dep.

ChE-401: Computational Methods in Chem. Eng.

King Saud University ٢٦Prof. Ibrahim S. Al-Mutaz

1. Guess a values for the auxiliary conditions at one point of time.

2. Solve the initial value problem using Euler,Runge-Kutta, …

3. Check if the boundary conditions is satisfied otherwise modify

the guess and resolve the problem.

� Use interpolation in updating the guess.

� It is an iterative procedure and can be efficient in solving the

BVP

Shooting method for Boundary-Value Problems

Solution of Boundary-Value Problems

Chemical Engineering Dep.

ChE-401: Computational Methods in Chem. Eng.

King Saud University ٢٧Prof. Ibrahim S. Al-Mutaz

8.0)1(,2.0)0(

2

)(

2

==

=++

yy

xyyy

BVPsolvetoxyFind

���

Boundary-Value

Problem

Initial-value problemconvert

1. Convert the ODE to a system of

first order ODE

2. guess the initial conditions that are not available.

3. Solve the Initial-value problem

4. Check if the known boundary conditions are satisfied

5. If needed modify the guess and resolve the problem again

Solution of Boundary-Value Problems - Shooting method

Chemical Engineering Dep.

ChE-401: Computational Methods in Chem. Eng.

King Saud University ٢٨Prof. Ibrahim S. Al-Mutaz

2)1(,0)0(

044

==

=+−

yy

xyy��

0 1 x

Shooting method - Example

Original BVP

� En cada uno se estima y 0.a/, la derivada –pendiente– de y en el extremoizquierdo del intervalo.Luego se resuelve (se dispara) hacia y.b/ y se obtiene el valor real yb en b.

� Se itera hasta que yb esté tan cerca de y.b/ como sea necesario.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

5/34

� De forma más estructurada, si se define la función

F.s/ D

8̂̂<̂:̂Diferencia entre yb e y.b/; donde

y.t/ es la solución del problema de valor inicial,

con y.a/ D ya y y 0.a/ D s;

el problema con valores de frontera se reduce a resolver la ecuación

F.s/ D 0:

� Para resolver esta ecuación se puede utilizar el método de la bisección, porejemplo, informando al programa correspondiente de qué dos valores s0 y s1hacen que F.s0/F.s1/ < 0.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

6/34

� Ejemplo Resolvamos mediante el método del disparo este problema:8̂̂<̂:̂y 00 D 4y

y.0/ D 1

y.1/ D 3:

� Escribamos la ecuación diferencial como un sistema de dos ecuaciones de ordenuno:

y 0 D v

v0 D 4y:

� En Matlab podría escribirse así:

function z=F(s)a=0; b=1; yb=3;ydot = @(t,y) [y(2); 4*y(1)];[t,y]= ode45(ydot,[a,b],[1,s]); % Solver de Matlabz = y(end,1)-yb

end

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

7/34� Comprobamos que para s D �1, F.�1/ � �1;0512 y que F.0/ � 0;7622por lo que podemos invocar el programa Bisec_y.m en el intervalo Œ�1; 0�:

>> [ss,t,y]=Bisec_y(@F,[-1,0]);>> ssss =

-0.4203>> plot(t,y)>> xlabel(’Tiempo’); ylabel(’y’)>> legend(’y(t)’, ’y’’(t)’,’Location’,’NorthWest’)

� El resultado de la evolución en el tiempo de y e y 0 es este.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Tiempo

-1

0

1

2

3

4

5

6

y

y(t)y'(t)

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

8/34Método de las diferencias finitas

� Su intención es reemplazar las derivadas de la ecuación diferencial por suaproximación por diferencias fintas en una malla de puntos del intervalo deestudio.

� Se consigue un sistema de ecuaciones más o menos grande según lo “tupida”que sea esa malla. Luego se resuelve.

� Si y.t/ es una función con derivadas continuas al menos hasta cuarto orden,sabemos que

y 0.t/ Dy.t C h/ � y.t � h/

2h�h2

6y 000.�/

y que

y 00.t/ Dy.t C h/ � 2y.t/C y.t � h/

h2Ch2

12y 000.�/:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

9/34

358 | CHAPTER 7 Boundary Value Problems

and for the second derivative

y′′(t) = y(t + h) − 2y(t) + y(t − h)

h2+ h2

12f ′′′′(c). (7.12)

Both are accurate up to an error proportional to h2.The Finite Difference Method consists of replacing the derivatives in the differential

equation with the discrete versions, and solving the resulting simpler, algebraic equationsfor approximations wi to the correct values yi , as shown in Figure 7.6. The boundaryconditions are substituted in the system of equations where they are needed.

1

...t0

ya

t1

y1

w1w2

wn–1wn

yn yb

yn–1

y2

t2 tn–1 tn tn+1

y

t

Figure 7.6 The Finite Difference Method for BVPs. Approximations wi , i = 1, . . . ,n for

the correct values yi at discrete points ti are calculated by solving a linear system of

equations.

After the substitutions, there are two possible situations. If the original boundary valueproblem was linear, then the resulting system of equations is linear and can be solved byGaussian elimination or iterative methods. If the original problem was nonlinear, thenthe algebraic system is a system of nonlinear equations, requiring more sophisticatedapproaches. We begin with a linear example.

� EXAMPLE 7.8 Solve the BVP (7.7) ⎧⎨⎩

y′′ = 4y

y(0) = 1,

y(1) = 3

using finite differences.Consider the discrete form of the differential equation y′′ = 4y, using the centered-

difference form for the second derivative. The finite difference version at ti is

wi+1 − 2wi + wi−1

h2− 4wi = 0

or equivalently

wi−1 + (−4h2 − 2)wi + wi+1 = 0.

For n = 3, the interval size is h = 1/(n + 1) = 1/4 and there are three equations. Insertingthe boundary conditions w0 = 1 and w4 = 3, we are left with the following system to solvefor w1,w2,w3:

1 + (−4h2 − 2)w1 + w2 = 0

w1 + (−4h2 − 2)w2 + w3 = 0

w2 + (−4h2 − 2)w3 + 3 = 0.

� El objetivo es reemplazar los y1, y2; : : : ; yn reales de la trayectoria por susaproximaciones por diferencias finitas, wi .

� Si el problema de contorno original es lineal el problema se convierte entoncesen resolver un sistema de ecuaciones lineales; si no es lineal, en lo propio.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

10/34

� Ejemplo Resolvamos mediante diferencias finitas este problema:8̂̂<̂:̂y 00 D 4y

y.0/ D 1

y.1/ D 3:

� La aproximación de la ecuación diferencial y 00 D 4y por diferencias finitas en ties

wiC1 � 2wi C wi�1

h2� 4wi D 0;

o, wi�1 C�� 4h2 � 2

�wi C wiC1 D 0:

� Si se divide el intervalo de estudio en tres tramos, n D 3, el parámetroh D 1=.nC 1/ D 1=4, por lo que habrá tres ecuaciones.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

11/34� Introduciendo que w0 D 1 y que w4 D 3 se llega al sistema

1C�� 4h2 � 2

�w1 C w2 D 0

w1 C�� 4h2 � 2

�w2 C w3 D 0

w2 C�� 4h2 � 2

�w3 C 3 D 0:

� Sustituyendo el valor de h a este sistema con matriz tridiagonal24�94 1 0

1 �94

1

0 1 �94

35"w1w2w3

#D

24�10�3

35 :� Resolviendo este sistema se obtiene la solución de esta tabla.

i ti wi yi0 0;00 1;0000 1;0000

1 0;25 1;0249 1;0181

2 0;50 1;3061 1;2961

3 0;75 1;9138 1;9049

4 1;05 3;0000 3;0000

Las diferencias son O.10�2/. Para obtener más precisión habría que aumentar n.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

12/34

� En general, si h D .b � a/=.nC 1/ D 1.nC 1/ el sistema de matriz tridiagonalque se obtiene en este ejemplo es de la forma26666664

�4h2 � 2 1 0 � � � 0 0 0

1 �4h2 � 2 1 � � � 0 0 0

0 1 �4h2 � 2 � � � 0 0 0:::

: : : : : : : : : 0:::

0 0 0: : : : : : 1 0

0 0 0 � � �: : : �4h2 � 2 1

0 0 0 � � � 0 1 �4h2 � 2

3777777526664

w1w2w3:::

wn�1wn

37775 D266664�100:::00�3

377775 :

� Los errores en este método vienen de la aproximación de las derivadas y de laresolución del sistema de ecuaciones.

� Para valores de h mayores que la raíz cuadrada de la precisión de la máquina, �,prevalecen los de la aproximación, O.h2/.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

13/34� Ejemplo Resolvamos ahora mediante diferencias finitas este otro problema:8̂̂<̂:̂y 00 D y � y2

y.0/ D 1

y.1/ D 4:

� La discretización de la ecuación diferencial en ti lleva a

wiC1 � 2wi C wi�1

h2� wi C w

2i D 0

owi�1 �

�2C h2

�wi C h

2w2i C wiC1 D 0;

para 2 � i � n � 1.

� Las condiciones de contorno añaden

ya ��2C h2

�w1 C h

2w21 C w2 D 0

wn�1 ��2C h2

�w1 C h

2w2n C yb D 0:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

14/34� En este caso tenemos un sistema de ecuaciones no lineales que podemosresolver mediante Newton-Raphson con esta fórmula de recurrencia:

wkC1 D wk � J .wk/�1f .wk/:

� La función vectorial es

f .wk/ D

2666664ya �

�2C h2

�w1 C h

2w21 C w2

w1 ��2C h2

�w2 C h

2w22 C w3:::

wn�2 ��2C h2

�wn�1 C h

2w2n�1 C wnwn�1 �

�2C h2

�wn C h

2w2n C yb

3777775 ;

donde ya D 1 y yb D 4.

� La Jacobiana:

26642h2w1 �

�2C h2

�1 0 � � � 0

1 2h2w1 ��2C h2

� : : :: : :

:::

0 1: : : 1 0

:::: : :

: : : 2h2w1 ��2C h2

�1

0 � � � 0 1 2h2wn ��2C h2

3775 :Cada fila i es la derivada parcial de la ecuación i de f con respecto a cada wj .

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

15/34

� Si organizamos todo el procedimiento en un fichero .m de Matlab:

function w1=nlbvpfd(inter,bv,n)% Diferencias finitas no lineal para resolver BVP% inter, intervalo de integración; bv, valores de contorno;% n, número de pasos.a=inter(1); b=inter(2); ya=bv(1); yb=bv(2);h=(b-a)/(n+1); w=zeros(n,1); w1=w+0.01;while abs(w1-w)>sqrt(eps) % Iteraciones de Newton-Raphson

w=w1;w1=w-jac(w,h,n)\f7(w,h,bv,n);

endclose all, plot ([a a+(1:n)*h b],[ya w1’ yb]);

end

function y=f7(w,h,bv,n)y=zeros(n,1);y(1)=bv(1)-(2+h^2)*w(1)+h^2*w(1)^2+w(2);y(n)=w(n-1)-(2+h^2)*w(n)+h^2*w(n)^2+bv(2);for i=2:n-1

y(i)=w(i-1)-(2+h^2)*w(i)+h^2*w(i)^2+w(i+1);end

end

function a=jac(w,h,n)a=zeros(n,n);for i=1:n

a(i,i)=2*h^2*w(i)-2-h^2;endfor i=1:n-1

a(i,i+1)=1;a(i+1,i)=1;

endend

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 11

1.5

2

2.5

3

3.5

4

4.5

� La respuesta se consigue con >> w=nlbvpfd([0 1],[1 4],40);

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

16/34

Métodos de colocación y de elementos finitos

� La idea que comparten estos dos métodos es la de convertir el problema en el deresolver un conjunto de ecuaciones algebraicas mediante la aproximación de laecuación diferencial por

y.t/ D c1�1.t/C � � � C cn�n.t/;

donde las �i son funciones base definidas en el intervalo Œa; b� y los ciparámetros que hay determinar.

� Las funciones base pueden ser polinomios, funciones trigonométricas, splines uotras funciones simples.

� La determinación de una solución aproximada de la ecuación diferencial sereduce a encontrar los valores de los ci .

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

17/34

� El enfoque de la colocación consiste en usar la aproximación de y.t/ en unconjunto de n puntos a D t1 < � � � < tn D b, denominados puntos decolocación, en los que se fuerza a que la solución aproximada y.t/ satisfaga laecuación diferencial.

� Esto lleva a un sistema de ecuaciones lineales, o no lineales, en los que secalculan los ci . La idea es parecida a la de la interpolación.

� El método de los elementos finitos aproxima mediante mínimos cuadrados los cide tal forma que se minimice la suma al cuadrado de las desviaciones entre losvalores exactos en unos puntos de la ecuación diferencial y los aproximados.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

18/34

Método de colocación

� Resolvamos la ecuación

8̂̂<̂:̂y 00 D 4y

y.0/ D 1

y.1/ D 3:

� Se eligen como funciones base monomios �j .t/ D t j�1, para 1 � j � n.

� La solución será de la forma y.t/ DPnjD1 cj�j .t/ D

PnjD1 cj t

j�1.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

19/34� Se formularán n ecuaciones con las n incógnitas c1; : : : ; cn. La primera y laúltima son las condiciones en la frontera:

c1 D

nXjD1

cj�j .0/D y.0/D 1

c1 C � � � C cn D

nXjD1

cj�j .1/D y.1/D 3:

� Las otras n � 2 ecuaciones resultan de evaluar la ecuación diferencialy 00 D f .t; y; y 0/ en ti , 2 � i � n � 1, siendo y.t/ D

PnjD1 cj t

j�1. Es decir

nXjD1

�j � 1

��j � 2

�cj t

j�3D f

0@t; nXjD1

cj tj�1;

nXjD1

cj�j � 1

�t j�2

1A :� En el ejemplo,

nXjD1

h�j � 1

��j � 2

�tj�3i � 4t

j�1i

icj D 0; i D 2; : : : ; n � 1:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

20/34� Las n ecuaciones forman un sistema Ac D b, donde la matriz de coeficientes

A está definida así,

Aij D

8̂̂̂̂<̂ˆ̂̂:1 0 0 � � � 0 fila i D 1�j � 1

��j � 2

�tj�3i � 4t

j�1i filas i D 2; : : : ; n � 1

1 1 1 � � � 1 fila i D n

y b D Œ1 0 0 � � � 0 3�T .

� Los ti de la malla que se usan son los uniformemente espaciados

ti D aCi � 1

n � 1.b � a/ D (en el caso del ejemplo a)

i � 1

n � 1:

� Para n D 2 el sistema queda �1 0

1 1

� �c1c2

�D

�1

3

�;

y la solución es c D Œ1 2�T . Es decir y.t/ D c1 C c2t D 1C 2t .

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

21/34� Para n D 4 el sistema es24 1 0 0 0

�4 �4 � 1=3 2 � 4 � .1=3/2 6 � 1=3 � 4 � .1=3/3

�4 �4 � 2=3 2 � 4 � .2=3/2 6 � 2=3 � 4 � .2=3/3

1 1 1 1

3524c1c2c3c4

35 D 241003

35 ;cuya solución es c D Œ1;0000 � 0;1886 1;0273 1;1613�T . Es decir,

y.t/ � 1 � 0;1886t C 1;0273t2 C 1;161t3:

� El gráfico-resultado para el ejemplo:

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10.5

1

1.5

2

2.5

3

Tiempo

y

Exactay(t)=1+2t

y(t)=1-0.1886t+1.0273t2+1.1613t3

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

22/34

� El ejemplo que hemos utilizado para introducir el método era lineal, pues así loera la ecuación diferencial. Si fuese no lineal, habría que utilizar el método deNewton-Raphson para resolver el sistema de ecuaciones no lineales que resultase.

� Igual que hemos utilizado monomios como funciones base para aplicar elmétodo, se puede recurrir a cualesquiera otras: polinomios de Chebyshev,funciones trigonométricas, etc.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

23/34

Método de los elementos finitos de Galerkin

� El método de los elementos finitos, formulado por Boris Grigoryevich Galerkin,Rusia 1871-1945, minimiza el cuadrado del error de la aproximación de laecuación diferencial a lo largo de la solución. Aboca a un sistema de ecuacioneslineales diferente del anterior.

� Si en el procedimiento general anterior se usan como funciones base unos splinesnos referimos al método de los elementos finitos. Las splines son distintas decero en un corto espacio de t .

� En el caso de la colocación, los ci se obtenían forzando a que la soluciónaproximada satisficiese exactamente las condiciones de contorno y los puntos decolocación.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

24/34� El método de los elementos finitos para resolver8̂̂<̂

:̂y 00 D f .t; y; y 0/

y.a/ D ya

y.b/ D yb;

escoge una solución aproximada y de tal forma que el residuo r D y 00 � f sealo más pequeño posible.

� Análogamente a como vimos para mínimos cuadrados, esto se consigueeligiendo y de tal forma que el vector de residuos sea ortogonal al espaciovectorial del conjunto de las soluciones de la ecuación diferencial.

� Para un intervalo Œa; b� se define el espacio vectorial de las funciones integrablescuadradas

L2Œa; b�D

(funciones y.t/ en Œa; b�

ˇ̌̌̌ Z b

a

y.t/2dt existe y es finita

):

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

25/34

� En este espacio se define el producto interior

hy1; y2i D

Z b

a

y1.t/y2.t/dt;

con las propiedades habituales:

1. hy1; y2i � 0;

2. h˛y1 C ˇy2; zi D ˛hy1; zi C ˇhy2; zi, siendo ˛ y ˇ escalares;

3. hy1; y2i D hy2; y1i.

Dos funciones y1 e y2 son ortogonales en L2Œa; b� si hy1; y2i D 0.

� Como este espacio es de dimensión infinita, no podemos hacer r D y 00 � fortogonal al mismo en sentido estricto, pero si escoger una base que comprendalo más posible del mismo en el sentido finito de lo cálculos.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

26/34� Hay dos ideas principales detrás del método de Galerkin:

1º- Minimizar el vector residuo r forzando a que sea ortogonal, en el sentido delproducto interior anterior, a un conjunto de nC 2 funciones base �0.t/,�1.t/; : : :, �nC1.t/. Es decir forzar a que

R ba

�y 00 � f

��i dt D 0, o queZ b

a

y 00.t/�i.t/ dt D

Z b

a

f .t; y; y 0/�i.t/ dt forma débil

para cada 0 � i � nC 1.

2º- Utilizar integración por partes para eliminar las segundas derivadas.Teniendo en cuenta queZ b

a

y 00.t/�i.t/ dt D �i.t/y0.t/ˇ̌ba�

Z b

a

y 0.t/� 0i.t/ dt

D �i.b/y0.b/ � �i.a/y

0.a/ �

Z b

a

y 0.t/� 0i.t/ dt:

Utilizando la forma débil y esta expresión resulta un conjunto de ecuacionesl b

a

f .t; y; y 0/�i.t/ dt D �i.b/y0.b/ � �i.a/y

0.a/ �

l b

a

y 0.t/� 0i.t/ dt:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

27/34

� Resolviéndolas se determinan los ci de

y.t/ D

nC1XiD0

ci�i.t/:

� Esas dos ideas hacen conveniente usar funciones base �i.t/ —elementosfinitos— muy simples, como lo son los B-splines.

� Para ello, en los puntos t0 < t1 < � � � < tn < tnC1 sobre el eje t , parai D 1; : : : ; n, se define

�i.t/ D

8̂̂̂̂<̂ˆ̂̂:

t�ti�1ti�ti�1

para ti�1 < t � titiC1�t

tiC1�tipara ti < t < tiC1

0 en otros casos.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

28/34

� Y, también,

�0.t/D

8<:t1�t

ti�t0para t0 � t < t1

0 en otros casosy �nC1.t/D

8<:t�tn

tnC1�tnpara tn < t � tnC1

0 en otros casos.7.3 Collocation and the Finite Element Method | 369

1

y

t...t1t0

�0 �1 �2 �n–1 �n+1�n

t2 t3 tn–1 tn tn+1

Figure 7.10 Piecewise-linear B-splines used as finite elements. Each φi(t), for

1 ≤ i ≤ n, has support on the interval from ti−1 to ti+1.

for each i that can be solved for the ci in the functional form

y(t) =n+1∑i=0

ciφi(t). (7.23)

The two ideas of Galerkin make it convenient to use extremely simple functions asthe finite elements φi(t). We will introduce piecewise-linear B-splines only and direct thereader to the literature for more elaborate choices.

Start with a grid t0 < t1 < · · · < tn < tn+1 of points on the t axis. For i = 1, . . . ,n define

φi(t) =

⎧⎪⎪⎪⎨⎪⎪⎪⎩

t − ti−1

ti − ti−1for ti−1 < t ≤ ti

ti+1 − t

ti+1 − tifor ti < t < ti+1.

0 otherwise

Also define

φ0(t) =⎧⎨⎩

t1 − t

t1 − t0for t0 ≤ t < t1

0 otherwiseand φn+1(t) =

⎧⎨⎩

t − tn

tn+1 − tnfor tn < t ≤ tn+1

0 otherwise.

The piecewise-linear “tent’’ functions φi , shown in Figure 7.10, satisfy the following inter-esting property:

φi(tj ) ={

1 if i = j

0 if i �= j. (7.24)

For a set of data points (ti ,ci), define the piecewise-linear B-spline

S(t) =n+1∑i=0

ciφi(t).

It follows immediately from (7.24) that S(tj ) =∑n+1i=0 ciφi(tj ) = cj . Therefore, S(t)

is a piecewise-linear function that interpolates the data points (ti ,ci). In other words,the y-coordinates are the coefficients! This will simplify the interpretation of the solu-tion (7.23). The ci are not only the coefficients, but also the solution values at the gridpoints ti .

Estas funciones satisfacen que �i.tj / D�1 si i D j0 si i ¤ j:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

29/34

� Para un conjunto de datos .ti ; ci/, se define la B-spline lineal por tramos

S.t/ D

nC1XiD0

ci�i.t/:

Se puede comprobar que S.tj / DPnC1

iD0 ci�i.tj / D cj .

� S.t/ es una función lineal por tramos que interpola los puntos .ti ; ci/. Además,los ci son las soluciones en los puntos ti de la aproximación de la ecuacióndiferencial.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

30/34

� Para calcular los ci : el primero y el último se obtienen por colocación:

y.a/ D

nC1XiD0

ci�i.a/ D c0�0.a/ D c0

y.b/ D

nC1XiD0

ci�i.b/ D cnC1�nC1.b/ D cnC1:

Los demás, usando las ecuaciones de los elementos finitos:Z b

a

f .t; y; y 0/�i.t/ dt C

Z b

a

y 0.t/� 0i.t/ dt D 0;

sustituyendo y.t/ porPci�i.t/,Z b

a

�i.t/f�t;X

cj�j .t/;X

cj�0

j .t/�dt C

Z b

a

� 0i.t/X

cj�0

j .t/ dt D 0:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

31/34

� Suponiendo que los puntos en t están uniformemente espaciados un paso h, hayque calcular todas estas integrales para cada i D 1; : : : ; n:Z b

a

�i.t/�iC1.t/ dt D

Z b

a

t

h

�1 �

t

h

�dt D

Z b

a

�t

h�t2

h2

�dt

Dt2

2h�

ˇ̌̌t3

3h2

ˇ̌̌h0D

h6Z b

a

��i.t/

�2dt D 2

Z h

0

�t

h

�2dt D

2

3h

Z b

a

� 0i.t/�0

iC1.t/ dt D

Z h

0

1

h

��1

h

�dt D �

1

hZ b

a

��i.t/

0�2dt D 2

Z h

0

�1

h

�2dt D

2

h:

� Si la ecuación diferencial es lineal, las ecuaciones de los ci también.

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

32/34

� Ejemplo Mediante elementos finitos, resolvamos

8̂̂<̂:̂y 00 D 4y

y.0/ D 1

y.1/ D 3:

� Sustituyendo la ecuación diferencial en las expresiones de los ci se tiene paracada i

0 D

l 1

0

4�i.t/

nC1XjD0

cj�j .t/C

nC1XjD0

cj�0

j .t/�0

i.t/

!dt

D

nC1ijD0

cj

�4

Z 1

0

�i.t/�j .t/ dt C

Z 1

0

� 0j .t/�0

i.t/ dt

�:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

33/34� Usando las expresiones de las B-splines para i D 1; : : : ; n y teniendo en cuentaque c0 D f .a/ y cnC1 D f .b/, las ecuaciones que resultan son estas:�

23h � 1

h

�c0 C

�83hC 2

h

�c1 C

�23h � 1

h

�c2 D 0�

23h � 1

h

�c1 C

�83hC 2

h

�c1 C

�23h � 1

h

�c1 D 0

::: 0�23h � 1

h

�cn�1 C

�83hC 2

h

�cn C

�23h � 1

h

�cnC1 D 0:

� Como c0 D ya D 1 y cnC1 D yb D 3 el sistema resultante es este2666664˛ ˇ 0 � � � 0

ˇ ˛: : : : : :

:::

0 ˇ: : : ˇ 0

:::: : : : : : ˛ ˇ

0 � � � 0 ˇ ˛

37777752666664c1

c2:::

cn�1

cn

3777775 D2666664�yaˇ

0

:::

0

�ybˇ

3777775 ;donde

˛ D8

3hC

2

hy ˇ D

2

3h �

1

h:

h i j

d e f g

a b c

10 8 7

9 4 6 5

1 2 3

34/34� Si recopilamos todo lo necesario en un fichero .m de Matlab para este caso:

function c=Galerkin_ef_1(inter,bv,n)% Elementos finitos de ejemplo clase% inter, intervalo de integración; bv, valores de contorno;% n, número de pasos.a=inter(1); b=inter(2); ya=bv(1); yb=bv(2);h=(b-a)/(n+1);alfa=(8/3)*h+2/h; beta=(2/3)*h-1/h;e=ones(n,1);M=spdiags([beta*e alfa*e beta*e],-1:1,n,n);d=zeros(n,1); d(1)=-ya*beta; d(n)=-yb*beta;c=M\d;

end

� Resolviendo con la ordenc=Galerkin_ef_1([0 1],[1 3],3)

se llega a la solución de la tabla que sigue.

i ti ci yi0 0;00 1;0000 1;00001 0;25 1;0109 1;01812 0;50 1;2855 1;29613 0;75 1;8955 1;90494 1;05 3;0000 3;0000

Las diferencias son O.10�2/. Para obtener más precisión habría que aumentar n.