III. Resoluci´on num´erica de Problemas de Contorno en E.D.O.:
El m´etodo de los elementos finitos
1) Se considera el siguiente problema de contorno:
½y00(x) − xy(x) = x , 0 < x < 1 , y(0) = y(1) = 0 .
a) Escribir el problema variacional asociado.
b) A partir del elemento finito de Lagrange unidimensional, hallar las funciones de base del espacio de elementos finitos construido sobre la partici´on uniforme del intervalo [0, 1] de paso h = 1/4.
c) Obtener la soluci´on del problema variacional discreto asociado al problema de partida, sobre el espacio de elementos finitos considerado en el apartado anterior.
2) Se considera el siguiente problema de contorno :
½−y00(x) + cy(x) = 1 , 0 < x < 1 , y0(0) = y0(1) = 0 ,
con c ∈ R .
a) Escribir el problema variacional asociado al problema dado.
b) Considerando una partici´on uniforme del intervalo [0, 1] con h = 1/2 , obtener el sistema lineal a que da lugar la aplicaci´on del m´etodo de los elementos finitos.
c) Estudiar para qu´e valores del par´ametro c el sistema anterior tiene soluci´on ´unica.
3) Considera el siguiente problema de contorno en el intervalo (0, 1),
½−((1 + x)u0)0 = 0 , 0 < x < 1 , u0(0) = 1, u(1) = 0 ,
a) Escribe la formulaci´on variacional del problema.
b) Considera la partici´on {x0 = 0, x1 = 0.5, x2 = 1}, y el elemento finito unidimen- sional de Lagrange. Escribe el problema variacional discreto asociado sobre el espacio de elementos finitos considerado y halla la soluci´on del mismo.
c) Indica la soluci´on que se obtiene en el punto x = 0.25.
4) Se considera el problema de contorno:
y00(x) − y(x) = 0, x ∈ (0, 1), y0(0) = −1,
y(1) = e.
1
a) Escribe el problema variacional asociado al problema anterior.
b) Dado el elemento finito de Lagrange unidimensional:
u u
halla las funciones de base del espacio de elementos finitos construido sobre la partici´on del intervalo [0, 1]: x0 = 0, x1 = 3/4, x2 = 1.
c) Escribe el problema variacional discreto asociado al problema de partida, sobre el espacio de elementos finitos considerado en el apartado anterior y calcula la soluci´on del mismo.
5) Se considera el problema de contorno
( x2y00− 6y = 6x, 1 < x < 2, y(1) = y(2) = 0.
a) Deduce la formulaci´on variacional del problema.
b) Usando elementos finitos de Lagrange, encuentra la soluci´on del problema discreto en el mallado x0 = 1, x1 = 3/2, x2 = 7/4, x3 = 2.
6) Se considera el PC:
(P )
( u00(x) = 3, x ∈ (0, 1),
u(0) = 1, αu(1) + βu0(1) = −1, donde α, β ∈ R, |α| + |β| 6= 0 y αβ ≥ 0.
a) Halla la formulaci´on variacional del problema dado en los casos: α = 1, β = 0 y α = 0, β = 1.
b) Para α = 1 y β = 0:
i) Dada la partici´on del intervalo [0, 1] en tres subintervalos iguales, determina el problema discreto asociado a (P), en el espacio de elementos finitos construido sobre esa partici´on, a partir del elemento finito de Lagrange.
ii) Resuelve el problema discreto y compara los resultados obtenidos con los de la soluci´on exacta: u(x) = 1 − 7x/2 + 3x2/2. ¿Cu´al es el error que se obtiene en los nodos y en x = 1/4?
7) Se considera el problema de contorno:
− d dx
Ã
a(x)du dx(x)
!
= 1, 1 < x < 2, u0(1) = 1, u(2) = −1.
a) Deducir la formulaci´on variacional del problema dado.
b) Hallar la formulaci´on discreta del problema utilizando el espacio de elementos finitos de grado uno, construido a partir de una partici´on uniforme del dominio [1, 2] en 2 subintervalos.
c) Para a(x) = 1/2, calcular la soluci´on num´erica del problema discreto obtenido en el apartado anterior.
8) Se considera el problema
(P )
−(xu0(x))0 = x, x ∈ (1, 2), u(1) − u0(1) = 1,
u(2) = 1.
a) Estudia la existencia y unicidad de soluci´on del problema (P).
b) Halla la formulaci´on variacional del problema.
c) Considera el mallado de nodos {x0 = 1, x1 = 5/4, x2 = 2} y los elementos finitos de Lagrange de tipo P1. Escribe la formulaci´on variacional discreta del problema (P).
d) Calcula la soluci´on num´erica uh del problema discreto.
e) Calcula u0h(1), uh(3/2), u0h(3/2), u0h(2).
9) Considera el siguiente problema de contorno en el intervalo Ω = (0, 1),
(P )
−εu00+ u = f, x ∈ (0, 1), u(0) = 0,
u(1) = 0,
donde ε > 0 es un par´ametro dado, f es una funci´on conocida y la inc´ognita u es una funci´on escalar sobre Ω, es decir, u : Ω −→ R.
a) Escribe la formulaci´on variacional del problema (P).
b) Escribe el problema discreto asociado utilizando el elemento finito de Lagrange con una partici´on uniforme Th de Ω, es decir, cada elemento finito tiene longitud h = 1/N, siendo N el n´umero de elementos o subintervalos de nuestra partici´on.
c) ¿Cu´antas inc´ognitas tenemos? Calcula el sistema Aξ = b para un elemento cualquiera de nuestra partici´on cuando f = 1 en Ω.
d) A partir del apartado anterior, determina el sistema global Ax = b, considerando una numeraci´on secuencial en el intervalo.
3
10) Se considera el problema
−u00(x) + u(x) = 1, x ∈ (0, 1), u0(0) = 0,
u(1) + u0(1) = 1.
a) Hallar la formulaci´on variacional.
b) Deducir la formulaci´on variacional discreta del problema en el espacio de elementos finitos de Lagrange de tipo P2, a partir del mallado formado por los elementos e1 = [0, 0.25] y e2 = [0.25, 1].
c) Calcular las funciones base asociadas a los nodos N = 0.25 y N = 0.125.
d) Hallar la matriz local Ae y el vector local be correspondientes al primer elemento.
e) Plantea el sistema de ecuaciones a resolver.
f) ¿C´omo calcular´ıas la derivada de la soluci´on en el nodo N = 0.125?
11) Se considera el problema:
ut= uxx− u, 0 < x < 1, t > 0, u(x, 0) = x2, 0 ≤ x ≤ 1,
u(0, t) = 0, u(1, t) = t + 1, t ≥ 0.
a) Utiliza una discretizaci´on en tiempo ´unicamente, empleando la siguiente aproxi- maci´on:
ut(x, tj) ≈ u(x, tj) − u(x, tj−1)
k ,
con j > 0, y comprueba que, en cada nivel de tiempo tj, se obtiene el siguiente
PC: (
y00(x) − (1 + 1/k)y(x) + (1/k)f (x) = 0, x ∈ (0, 1), y(0) = 0, y(1) = tj+ 1,
donde y(x) ≡ u(x, tj) y f (x) ≡ u(x, tj−1).
b) Se considera el m´etodo de los elementos finitos para resolver el PC obtenido en el apartado anterior.
i) Deduce la formulaci´on variacional del problema en tj (j > 0).
ii) Para k = 1/8 y tj = 1/8, resuelve el problema discreto asociado utilizando el elemento finito de Lagrange y h = 1/2.
12) Dado el problema:
(y00(x) − (x + 1)y(x) = −e−x(x2− x + 2) , 2 < x < 4 , y0(2) = 0, y0(4) = −0.036631 .
a) Escribir el problema variacional asociado al problema dado.
b) Dado el elemento finito de Lagrange unidimensional, hallar las funciones de base del espacio de elementos finitos construido sobre la partici´on del intervalo [2, 4]:
x0 = 2 , x1 = 3 , x2 = 4 .
c) Obtener la soluci´on del problema variacional discreto asociado, sobre el espacio de elementos finitos considerado en el apartado anterior, utilizando la f´ormula de Simpson para aproximar las integrales correspondientes al segundo miembro.
Comparar la soluci´on obtenida con la soluci´on exacta: y(x) = e−x(x − 1) .
13) Se considera el problema:
(P )
y(4)(x) = 1 , 0 < x < 2 , y(0) = y(2) = 0 ,
y0(0) = y0(2) = 0 .
a) Escribir el problema variacional asociado al problema dado.
b) Dada la partici´on uniforme del intervalo [0, 2] en 2 subintervalos iguales, determinar el problema variacional discreto asociado a (P) sobre el espacio de elementos finitos construido sobre esta partici´on, a partir del elemento finito de Hermite.
c) Resolver el problema discreto.
14) Consideramos el siguiente problema de contorno unidimensional
−u00(x) + a(x)u(x) = 2x − 1, 0 < x < 1, u(0) = 1, u(1) = 0,
en el que la funci´on a(x) : [0, 1] → R verifica que es una funci´on continua en el intervalo [0, 1], a(x) > 0 ∀x ∈ [0, 1] y de la que conocemos, adem´as, los siguientes valores a(0) = 2, a(0025) = 0025, a(005) = 1, a(0075) = 1025 y a(1) = 3.
a) ¿Puedes afirmar la existencia y unicidad de soluci´on de este problema de contorno?
En caso afirmativo compru´ebalo y plantea la formulaci´on variacional asociada al problema anterior.
b) Se divide en dos subintervalos iguales el intervalo [0, 1]. Definir sobre estos subin- tervalos un m´etodo de elementos finitos de Lagrange de orden uno y hallar la aproximaci´on del problema de contorno anterior que nos proporciona.
c) Sin modificar el mallado anteriormente empleado y suponiendo que conocemos completamente la funci´on a(x), ¿puedes definir otro m´etodo de elementos finitos que d´e una mejor aproximaci´on a la soluci´on que la obtenida en el apartado ante- rior? En caso afirmativo define dicho m´etodo dando la formulaci´on discreta y la definici´on del espacio de elementos finitos.
5
15) Se considera el problema
−u00+ u = 2, x ∈ (0, 1), u(0) = 0,
u(1) + u0(1) = 2.
a) Estudia la existencia y unicidad del problema.
b) Escribe la formulaci´on variacional del problema.
c) Sea el espacio de elementos finitos definido a partir del elemento finito de Lagrange de tipo P2. Escribe la formulaci´on discreta del problema anterior.
d) Se considera un mallado uniforme de 2 elementos. Calcula y dibuja las funciones base asociadas a los nodos de coordenadas x = 0.25 y x = 0.5. Indica el soporte de cada una de ellas.
e) Construye la matriz local asociada al segundo elemento indicando en qu´e parte de la matriz global contribuye.
f) Plantea y resuelve el sistema de ecuaciones que resulta.
g) ¿C´omo calcular´ıas la soluci´on en el punto x = 0.6?
16) Se considera la ecuaci´on diferencial:
−u00(x) − cu + x2 = 0, 0 < x < 1 (c ∈ R), y las siguientes condiciones de contorno:
(1) u(0) = u(1) = 0.
(2) u(0) = 0, u0(1) = 1.
(3) u0(0) = 1, u0(1) = 4/3.
a) Halla la formulaci´on variacional del problema para cada una de las condiciones de contorno.
b) Considera la partici´on {x0 = 0, x1 = 0.5, x2 = 1}, y el elemento finito unidimen- sional de Lagrange. Plantea el sistema de ecuaciones que resulta en el caso (3) y estudia para qu´e valores de c dicho sistema tiene soluci´on ´unica.
Cuestiones Pr´acticas 1) Se desea resolver num´ericamente el problema de contorno:
( −u00(x) + u(x) = 0, 0 < x < π/2, u(0) = 1, u(π/2) = −3.
por medio de elementos finitos de grado 2, considerando una subdivisi´on del dominio en 3 subintervalos iguales.
a) Definir el correspondiente espacio Vh de elementos finitos de grado 2 y dar una base del mismo.
b) Calcular y dibujar las funciones de base asociadas a los nodos x = π/4 y x = π/3.
2) En el siguiente programa, realizar los cambios adecuados para resolver el problema n´umero 10.
[m0,mxx,l0]=matriz5;
ns1 = 2; % Numero de subdivisiones
d = 3; % Grados de libertad por elemento.
nt = (2*ns1+1); % Numero de nodos
[globales,x,nel]=gen5(ns1); coord=zeros(nt,2); a=zeros(nt,nt);
b=zeros(nt,1); nodos=zeros(1,3); c=zeros(2,2); mk=zeros(d,d);
lk=zeros(d,1); sol=zeros(nt,1);
%Ensamblado for k=1:nel
nodos=globales(k,:);
h = x(nodos(3))-x(nodos(1));
mk=mxx/h+m0*h;
a(nodos,nodos)=a(nodos,nodos)+mk;
lk(1)=h*r5(x(nodos(1)))/6;
lk(2)=2*h*r5(x(nodos(2)))/3;
lk(3)=h*r5(x(nodos(3)))/6;
b(nodos)=b(nodos)+lk;
end
%Resolvemos sistema sol=a\b;
3) En el siguiente programa, realiza los cambios adecuados para resolver el problema n´umero 8.
% programa principal [m0,mxx,l0]=matriz1;
ns1 = 4; % Numero de subdivisiones
d = 2; % Grados de libertad por elemento.
nt = (ns1+1); % Numero de nodos
7
[globales,x,nel]=gen1(ns1);
coord=zeros(nt,2); a=zeros(nt,nt); b=zeros(nt,1); nodos=zeros(1,2);
%c=zeros(2,2);
mk=zeros(d,d); lk=zeros(d,1); sol=zeros(nt,1);
%Ensamblado for k=1:nel
nodos=globales(k,:);
h = x(nodos(2))-x(nodos(1));
mk=h*m0+mxx/h;
a(nodos,nodos)=a(nodos,nodos)+mk;
lk=pf(x(nodos))*h*l0;
b(nodos)=b(nodos)+lk;
end
%Resolvemos sistema sol=a\b