TALLER Nº 3
Profesor Francisco Muñoz Paba M.Sc
Estudiante: Maria Paulina Martinez Arroyave
Grupo: 1
SOLUCIÓN DE ECUACIONES DIFERENCIALES CON VALORES EN LA FRONTERA
1. Considere el flujo de un fluido newtoniano en una tubería, expresado por la
ecuación diferencial de segundo grado:
SOLUCION
Solución para A. Método de diferencia finita:
En el editor de Matlab se ingresaron los comandos:
%Diferencias finitas ¿JD?:)
clear all clc Dp=2.8e5;
u=0.492; L=4.88;
R=0.0025;
VR=0; a=linspace(0,0.0025,6);
alfa=-2*(a(2)^2)*Dp/(u*L);
A=[-440000;1-43000;01-4300;001-430;0001-43;000
0 1 -4];
B=alfa*[1;1;1;1;1;(13*VR)];
C=A\B
Los resultados se muestran a continuación:
Solución para B. Método del disparo
Se reescribe la ecuación diferencial
Si y = y1
A través de Matlab se realiza el primer disparo:
function dy = Eq(z,y) P =
2800000; u = 0.492; L = 4.88;
R = 0.0025; dy = [y(2);(-
P/u*L)-(y(2)^2)/R];
end
Posteriormente y para finalizar suponemos dos valores de S (S1 y S2), a los que se les
halla su respectivo valor de R (R1 y R2) a partir de la función ode45 de MATLAB.
Se escribe un nuevo script el siguiente programa:
%Ecuaciones diferenciales con valores en la frontera
¿JD?:) clear all clc global Dp u L CI=0;
Dp=2.8e5;
u=0.492;
L=4.88;
R=0.0025;
S1=R/2;
[r,x]=ode45(@metodo_disparo,[R:-0.00025:0],[R S1])
R1=x(11,1)
S2=R/4;
[r,x]=ode45(@metodo_disparo,[R:-0.00025:0],[R S2])
R2=x(11,1)
S3=S2+(CI-R1)*(S1-S2)/(R1-R2);
[r,x]=ode45(@metodo_disparo,[R:-0.00025:0],[R S3])
Los resultados del disparo se muestran a continuación:
2. Considere un flujo radial en el dominio r 0 < r < 4r0 dentro del cual hay una
distribución asimétrica de fuentes cuya fuerza se incrementa linealmente con r.
Para este problema la ecuación adecuada sería :
𝑑2 1 𝑑 𝑟
(𝑑𝑟 2 + 𝑟 𝑑𝑟 ) ∅ = 𝑞0 𝑟 (1)
0
𝐷onde: q0 es la fuerza de la fuente en r = r0 . La velocidad radial se calcula de la
siguiente ecuación:
𝑑∅
𝑢𝑟 = 𝑑𝑟 (2)
Es conveniente trabajar en estos casos con variables adimensionales, así:
𝑟 ∅ 𝑢
𝑅=𝑟 𝜑=𝑟 𝑈 = 𝑢𝑟 (3)
0 0 𝑢0 0
Remplazando estas variables adimensionales en la ecuación (1), obtenemos
𝑑2 1 𝑑
(𝑑𝑅2 + 𝑅 𝑑𝑅 ) 𝜑 = 𝛼𝑅 (4)
La ecuación (4) se puede escribir también de la siguiente forma:
𝑑2 𝜑 1 𝑑𝜑 𝑞0 𝑟0
(𝑑𝑅2 + 𝑅 𝑑𝑅 ) = 9𝑅 Aquí 𝛼= =9 (5)
𝑢0
Las condiciones de frontera son:
Para R=1 𝜑= 1 es decir, 𝜑(1) = 1
Para R=4 𝜑= 29 es decir, 𝜑(4) = 29
La solución exacta de la ecuación diferencial es: 𝜑 = R3 - 24ln(R) (6)
Resuelva la ecuación diferencial con valores en la frontera, usando la función
bvp4c de Matlab.
SOLUCION
Reescribimos la ecuación como:
𝑑 2 𝜑 1 𝑑𝜑
+ − 9𝑅 = 0
𝑑𝑅2 𝑅 𝑑𝑅
O también:
1 ′
𝜑′′ + 𝜑 − 9𝑅 = 0
𝑅
Sea 𝑦1 = 𝜑
𝑦2 = 𝜑′
𝑦1′ = 𝑦2
1
𝑦2′ = 9𝑅 − 𝑦
𝑅 2
Esto lo convierte en un sistema de ecuaciones de primer orden, que resolverán usando la
función bvp4c de Matlab.
Creamos una función que evalue el sistema obtenido:
function [ dxdy] = bvpfcn(x,y)
dxdy=[y(2)
9*x-(1/x)*y(2)];
End
Luego creamos una función que nos permita evaluar los valores los valores inciales, los
cuales deben estar evaluados a cero:
Para R=1 𝜑= 1 es decir, 𝑉𝐴 : = 𝜑(1) − 1 = 0
Para R=4 𝜑= 29 es decir, 𝑉𝐵 = 𝜑(4) − 29 = 0
function res = bcfcn(ya,yb) % boundary conditions
res=[ya(1)-1 yb(1)-29];
end
Creamos una función que nos permita evaluar valores iniciales para la función, un buen
estimado puede incluir funciones trigonométricas, desde que hay una relación entre las
variables y’’ y y’.
function g = guess(x)
g = [sin(x)
cos(x)];
end
clc
clear
close all
Finalmente se resuelve la ecuación diferencial usando la función indicada.
xmesh = linspace(1,4,100); %generacion de valores R para valores
iniciales
solinit = bvpinit(xmesh, @guess); %generacion de valores
iniciales figure (1) %Solución numérica
solution = bvp4c(@bvpfcn, @bcfcn, solinit);
ysim=solution.y;
plot(solution.x, ysim(1,:), '-','linewidth',1.2)
hold on
%Cálculo de la solución exacta
R=linspace(1,4,100);
phi=zeros(1,numel(R));
for i=1:numel(phi)
phi(i)=(R(i)^3)-24*log(R(i));
end
plot(R,phi,'linewidth',1.2)
grid on
xlabel('R (adimensional)')
ylabel('\Phi (adimensional)')
legend('Solución numérica', 'Solución exacta')
Los resultados obtenidos son:
Bibliografía
1. Herald y Wheatley Análisis numérico con Aplicaciones, 7ª edición, 2004
2. Chapra S. Applied Numerical methods with Matlab for Engineers and
Scientists, 3ª edition, 2012.
3. Muñoz F, Notas de clases sobre Matemáticas Aplicadas a la Ingeniería
Quìmica, 2020