Effacer les filtres
Effacer les filtres

Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

functional values and graphs are not matching with this code

2 vues (au cours des 30 derniers jours)
MINATI
MINATI le 6 Oct 2020
Clôturé : MATLAB Answer Bot le 20 Août 2021
Pr = 1;
ODE = @(x,y) [y(2); y(3); -(1/2)*y(3)*y(1); y(5); - (Pr/2)*y(1)*y(5);];
BC = @(ya,yb)[ya(1);ya(2);ya(4)-1;yb(2)-1; yb(4);];
xa = 0; xb = 5; xn = linspace(xa,xb,100); x = xn;
solinit = bvpinit(x,[0 1 0 1 0]); sol = bvp5c(ODE,BC,solinit); S = deval(sol,x);
f0 = deval(sol,0);
t = sym('t'); x = sym('x');f(x) = sym('f(x)'); g(x) = sym('g(x)'); %Pr = sym('Pr');
eqns = [diff(f,x,3) == 0, diff(g,x,2) == 0];
Df = diff(f,x); D2f = diff(Df,x); Dg = diff(g,x);
cond = [f(0) == 0, Df(0) == 0, Df(5) == 1,g(0) == 1, g(5) == 0];
F = dsolve(eqns,cond); f1 = F.f; g1 = F.g; % disp([f1,g1])
f = zeros(1,1,'sym');g = zeros(1,1,'sym');fa = zeros(1,1,'sym');ga = zeros(1,1,'sym');
f(1) = f1; g(1) = g1;
n = 5;
for i = 1:n
fa(i) = subs(f(i),x,t);dfa = diff(fa(i),t,1);d2fa = diff(dfa,t,1);ga(i) = subs(g(i),x,t);dga = diff(ga(i),t,1);
If1 = -(1/2)*int(fa(i)*d2fa,t,0,t);If2 = int(If1,t,0,t); Ig1 = -(Pr/2)*int(fa(i)*dga,t,0,t);
f(i+1) = int(If2,t,0,x); g(i+1) = int(Ig1,t,0,x);
end
f(2)
f = f(1) + f(2) + f(3) + f(4) + f(5); g = g(1) + g(2) + g(3) + g(4) + g(5);
figure(1)
plot(xn,S(2,:),'LineWidth',1.5); %for f'
axis([0 5 0 1])
xlabel('\bf\eta'); ylabel('\bff^{\prime}(\eta)');
hold on
fplot(diff(f),[0 5],'--','LineWidth',1.5)
%%% Please follow attached pdf, while running the code, Figs and Eqns (26) - (28) & (30) - (32) are not matching. Have a try
  1 commentaire
MINATI
MINATI le 7 Oct 2020
I think any modification is needed to get correct result. to solve Eqns (17) - (24) and to draw Figs.

Réponses (0)

Cette question est clôturée.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by