Can it be possible to use a for loop to precise the code
Ältere Kommentare anzeigen
M = 0.2; k = 1; L = 0.1; Pr = 2; G = 2; S1 = 0.1; Ec = 0.1; fw = 1; R = 0.3; a5 = 2; a6 = 3; a7 = 4;
a8 = 10; a9 = 1.72; a10 = 8; a11 = 2; a12 = 3;
xb = 5; %%% xb = Inf;
syms x f0(x) g0(x) h0(x) f1(x) g1(x) h1(x) f2(x) g2(x) h2(x) f3(x) g3(x) h3(x) f4(x) g4(x) h4(x)
eqn0 = [ diff(f0,3) == 0, diff(g0,2) == 0, diff(h0,2) == 0 ];
cond0 = [ f0(0) == fw, subs(diff(f0),0) == 1, g0(0) == 0, h0(0) == 1, subs(diff(f0),xb) == 0, g0(xb) == 0, h0(xb) == 0 ];
F0 = dsolve(eqn0,cond0); f0 = F0.f0; g0 = F0.g0; h0 = F0.h0;
%%% The following lines need to be in squeezed so that it will save time (using for loop)
eqn1 = [ diff(f1,3) + a5*( f0*diff(f0,2) - diff(f0)^2 + k*diff(g0) ) - a6*M^2*diff(f0) + a7*L*h0 == 0, G*diff(g1,2) - 2*g0 - diff(f0,2) == 0, (a9+R)*diff(h1,2) + Pr*( a10*f0*diff(h0) + S1*h0 + Ec*( a11*diff(f0,2)^2 + a12*M^2*diff(f0)^2 ) ) == 0 ];
cond1 = [ f1(0) == 0, subs(diff(f1),0) == 0, g1(0) == 0, h1(0) == 0, subs(diff(f1),xb) == 0, g1(xb) == 0, h1(xb) == 0 ];
F1 = dsolve(eqn1,cond1); f1 = F1.f1; g1 = F1.g1; h1 = F1.h1;
eqn2 = [ diff(f2,3) + a5*( f1*diff(f1,2) - diff(f1)^2 + k*diff(g1) ) - a6*M^2*diff(f1) + a7*L*h1 == 0,G*diff(g2,2) - 2*g1 - diff(f1,2) == 0, (a9+R)*diff(h2,2) + Pr*( a10*f1*diff(h1) + S1*h1 + Ec*( a11*diff(f1,2)^2 + a12*M^2*diff(f1)^2 ) ) == 0 ];
cond2 = [ f2(0) == 0, subs(diff(f2),0) == 0, g2(0) == 0, h2(0) == 0, subs(diff(f2),xb) == 0, g2(xb) == 0, h2(xb) == 0 ];
F2 = dsolve(eqn2,cond2); f2 = F2.f2; g2 = F2.g2; h2 = F2.h2;
eqn3 = [ diff(f3,3) + a5*( f2*diff(f2,2) - diff(f2)^2 + k*diff(g2) ) - a6*M^2*diff(f2) + a7*L*h2 == 0,G*diff(g3,2) - 2*g2 - diff(f2,2) == 0, (a9+R)*diff(h3,2) + Pr*( a10*f2*diff(h2) + S1*h2 + Ec*( a11*diff(f2,2)^2 + a12*M^2*diff(f2)^2 ) ) == 0 ];
cond3 = [ f3(0) == 0, subs(diff(f3),0) == 0, g3(0) == 0, h3(0) == 0, subs(diff(f3),xb) == 0, g3(xb) == 0, h3(xb) == 0 ];
F3 = dsolve(eqn3,cond3); f3 = F3.f3; g3 = F3.g3; h3 = F3.h3;
eqn4 = [ diff(f4,3) + a5*( f3*diff(f3,2) - diff(f3)^2 + k*diff(g3) ) - a6*M^2*diff(f3) + a7*L*h3 == 0, G*diff(g4,2) - 2*g3 - diff(f3,2) == 0, (a9+R)*diff(h4,2) + Pr*( a10*f3*diff(h3) + S1*h3 + Ec*( a11*diff(f3,2)^2 + a12*M^2*diff(f3)^2 ) ) == 0 ];
cond4 = [ f4(0) == 0, subs(diff(f4),0) == 0, g4(0) == 0, h4(0) == 0, subs(diff(f4),xb) == 0, g4(xb) == 0, h4(xb) == 0 ];
F4 = dsolve(eqn4,cond4); f4 = F4.f4; g4 = F4.g4; h4 = F4.h4;
f = f0 + f1 + f2 + f3 + f4; g = g0 + g1 + g2 + g3 + g4; h = h0 + h1 + h2 + h3 +h4;
vpa(f)
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Conversion finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!







