Está en la página 1de 7

Proyecto Final

La ecuación de onda de primer orden:


𝜕𝑢 𝜕𝑢
+𝑎 = 0; 𝑎 > 0
𝜕𝑡 𝜕𝑥
Donde 𝑎 = 250 m/s. Suponiendo que en el tiempo t=0se ha generado una perturbación de la mitad de
la onda sinusoidal.
La condición inicial es especificada como
𝑢(𝑥, 0) = 0 0 ≤ 𝑥 ≤ 50
𝑥−50
𝑢(𝑥, 0) = 100𝑠𝑒𝑛 [𝜋 ( )] 50 < 𝑥 ≤ 110
60

𝑢(𝑥, 0) = 0 110 < 𝑥 ≤ 400


Donde:
Suponiendo que la perturbación se produce en un tubo unidimensional con ambos extremos cerrados,
las condiciones contorno impuestas son:
𝑢(0, 𝑡) = 0, 𝑝𝑎𝑟𝑎 𝑥 = 0
𝑢(𝐿, 𝑡) = 0, 𝑝𝑎𝑟𝑎 𝑥 = 𝐿
Se pide:
Resolver numéricamente la ecuación, con las condiciones suplementarias, empleando el primer
esquema BTCS. Para analizar el efecto de la malla sobre la solución, emplear los siguientes valores del
número de Courant
1) ∆𝑥 = 5 ∆𝑡 = 0.02 𝑟𝑒𝑠𝑢𝑙𝑡𝑎𝑛𝑡𝑑𝑜 𝑒𝑛 𝐶𝑟 = 1
2) ∆𝑥 = 5 ∆𝑡 = 0.01 𝑟𝑒𝑠𝑢𝑙𝑡𝑎𝑛𝑡𝑑𝑜 𝑒𝑛 𝐶𝑟 = 0.5
3) ∆𝑥 = 5 ∆𝑡 = 0.005 𝑟𝑒𝑠𝑢𝑙𝑡𝑎𝑛𝑡𝑑𝑜 𝑒𝑛 𝐶𝑟 = 0.25
Solución:
El esquema de la ecuación viene dado por:
𝜕𝑢 𝜕𝑢
+𝑎 = 0; 𝑎 > 0
𝜕𝑡 𝜕𝑥
Reemplazando las derivadas con sus respectivas formar en diferencias finitas tenemos:
𝑗+1 𝑗
𝜕𝑢 𝑢𝑖 − 𝑢𝑖
=
𝜕𝑡 ∆𝑡
𝑗+1 𝑗+1
𝜕𝑢 𝑢𝑖+1 − 𝑢𝑖−1
=
𝜕𝑥 2∆𝑥
Entonces el esquema BTCS:

𝑢𝑖𝑗+1 − 𝑢𝑖𝑗 𝑗+1 𝑗+1


𝑢𝑖+1 − 𝑢𝑖−1
+𝑎( )=0
∆𝑡 2∆𝑥

Para desarrollar este esquema, tomaremos en cuenta el valor de 𝑢𝑖𝑗 , siendo este el valor a encontrarse;
así tenemos que:

𝑎∆𝑡 𝑗+1
𝑢𝑖𝑗+1 − 𝑢𝑖𝑗 + 𝑗+1
(𝑢𝑖+1 − 𝑢𝑖−1 )=0
2∆𝑥

𝑗+1 𝑎∆𝑡 𝑗+1 𝑗+1


𝑢𝑖 + (𝑢𝑖+1 − 𝑢𝑖−1 ) = 𝑢𝑖𝑗
2∆𝑥
Acomodando las ecuaciones tenemos:
𝐶𝑟 𝑗+1 𝐶𝑟 𝑗+1
𝑢𝑖+1 + 𝑢𝑖𝑗+1 − 𝑢𝑖−1 = 𝑢𝑖𝑗
2 2
𝑎∆𝑡
Donde: 𝐶𝑟 = ∆𝑥

Llegados a este punto es posible desarrollar este esquema basándonos en el desarrollo de una matriz
tridiagonal, o en su defecto continuar con su forma reducida

Para el desarrollo de este esquema podemos usar el método de la doble barredura, también conocido
como el algoritmo Thomas, entonces tenemos los siguientes valores para 𝐶𝑟 = 1:

𝐴𝑖 = 0.5; 𝐵 = 1; 𝐶 = −0.5; 𝐷 = 𝑢𝑖𝑗

Entonces la ecuación arriba mostrada tenemos:


𝑗+1
+ 𝑢𝑖𝑗+1 − 0.5𝑢𝑖−1
𝑗+1
0.5𝑢𝑖+1 = 𝑢𝑖𝑗

Llegados a este punto podemos utilizar el algoritmo de Thomas para lograr formar la matriz tridiagonal
a resolver

𝑢𝑖𝑗+1 = 𝐸𝑖 𝑢𝑖+1
𝑗+1
+ 𝐹𝑖

Calculando los valores de 𝐸 y 𝐹 tenemos la fórmula:


𝐴𝑖
𝐸𝑖 =
𝐵𝑖 − 𝐶𝑖 𝐸𝑖−1
𝐷𝑖 − 𝐶𝑖 𝐹𝑖−1
𝐹𝑖 =
𝐵𝑖 + 𝐶𝑖 𝐸𝑖−1
Para todo valor de 𝑖 ≥ 2
Veamos ahora el código Utilizado para el desarrollo de este ejercicio:
clc, clear
% Parametros
a=250;
dx=5;
dt=0.01;
nx=(400/dx); % or nx=[(400-0)/dx]+1 with L=400 m
nt=50; % to compute 10 time steps k=[1,11]
cr=a*dt/dx

% --- Coeficientges de la matriz tridiagonal


b = cr/2; % Super diagonal: coefficients of u(i+1)
c = -b; % Subdiagonal: coefficients of u(i-1)
a = 1; % Main Diagonal: coefficients of u(i)
%simplificacion para la malla
%m=nx/8
%n=nx/4+3
% Condiciones forntera y condiciones iniciales
Uo(1:nx/8)=0; Uo(nx/8+1:nx/4+3)=100*sin(pi*((nx/8+1:nx/4+3)-
10)/12); Uo(nx/4+4:nx)=0;
Un(1)=0; Un(nx)=0;

% Guardar resultados
UUU(1,:)=Uo;

% Bucle temporal
for k=2:nt

for ii=1:nx-2
if ii==1:nx/8
d(ii)=c*Uo(ii)+2*(1-c)*Uo(ii+1)+b*Uo(ii+2)+c*Un(1);
elseif ii==nx/8+1:nx/4+3
d(ii)=c*Uo(ii)+2*(1-c)*Uo(ii+1)+b*Uo(ii+2)+b*Un(nx);
else
d(ii)=c*Uo(ii)+2*(1-c)*Uo(ii+1)+b*Uo(ii+2);
end
end
% Transformando las constantes a,b,c en vectores columna
bb=b*ones(nx-3,1);
cc=bb;
aa=a*ones(nx-2,1);
% Usando los vectores columna para construir la matriz
tridiagonal
AA=diag(aa)+ diag(bb,1)+ diag(-cc,-1);
% Encontrando la solucion para los puntos interiores
UU=AA\d';
% Construyendo la solucion como vector fila
Un=[Un(1),UU',Un(nx)];
% Guardar los resultados de las soluciones de cada iteracion
UUU(k,:)=Un;
% reiniciar el bucle
Uo=Un;
end

1. Veamos las gráficas obtenidas para los diferentes números de Courant


a) Para ∆𝑡 = 0,02 y ∆𝑥 = 5 con el número de Courant 𝐶𝑟 = 1

b) Para ∆𝑡 = 0,01 y ∆𝑥 = 5 con el número de Courant 𝐶𝑟 = 0.5


c) Para ∆𝑡 = 0,005 y ∆𝑥 = 5 con el número de Courant 𝐶𝑟 = 0.25
2. Veamos ahora los diferentes perfiles de la onda con los diferentes números de Courant
a) Con 𝐶𝑟 = 1

Perfil de la ecuacion de adveccion con Cr=1


900

800

700

600

500

400

300

200

100

0
0 10 20 30 40 50 60 70 80 90
-100

b) Con 𝐶𝑟 = 0.5

Perfil de la ecuacion de adveccion con Cr=0.5


700

600

500

400

300

200

100

0
0 10 20 30 40 50 60 70 80 90
-100

-200

c) Con 𝐶𝑟 = 0.025
Perfil de la ecuacion de adveccion con Cr=0.025
600

500

400

300

200

100

0
0 10 20 30 40 50 60 70 80 90

-100

-200

También podría gustarte