How to solve nonlinear coupled ode by Shooting method .
이전 댓글 표시
Respected sir ,
I am getting problem to solve non linear coupled BVP by shooting method . Can you help me to solve that problem?
My problem is
F'''=(1/(1+epsilon1*(1-G)))*(A*F'+.5*t*A*F''+(F')^2-F*F''+epsilon1*G'*F''-lambda*G-delta*H+M*F'-(-1+epsilon1*G-epsilon1)*bita*F');
G''=(1/(1+epsilon2*G+Nr))*(Pr*(2*A*G+.5*A*t*G'+F'*G-F*G'-M*Ec*(F')^2-Ec*(1-epsilon1*G'+epsilon1)*(F'')^2)-epsilon2*(G')^2);
H''= Sc*(2*A*H+.5*A*t*H'+F'*H-F*H'+Rex*Zai*H);
where A=0 ; epsilon1= 0 ; epsilon2=1; lambda= 1; delta=1; bita=0; Nr=.1; Pr=5; M=.5;
Ec=.1 ; Sc=1; Rex= .3 ; Zai= .1 ;
and F(0)=0 , F'(0)=1 F'(infity)=0 G(0)=1 G(infity)=0 H(0)= 1 H(infity)=0
and F''(0) , G'(0) & H'(0) we have to guess
so tell me how to solve by shooting method with using rk -4 method .
댓글 수: 2
darova
2019년 10월 13일
What have you tried? What ideas do you have? Did you see examples in MATLAB help?
Chandan Kumawat
2019년 10월 14일
채택된 답변
추가 답변 (1개)
darova
2019년 10월 14일
Try bvp4c
Suggestion:
F0 = y(1);
%% ...
H1 = y(7);
% and use these variables to make your code more redable
dy(1) = F1;
%% ..
You can also use temporary variables to make your code simpler
dy(3) = 1/(1+e1*(1-G0))* ...
(A*F1 + 0.5*t*A*F2 + F1^2 - F0*F2 + e1*G1*F2 - lambda*G0 - delta*H0 + M*F1 - (-1+e1*G0-e1)*bita*F1);
%%
TEMP0 = 1/(1+e1*(1-G0));
TEMP1 = 0.5*t*A*F2;
TEMP2 = e1*G1*F2;
TEMP3 = (-1+e1*G0-e1)*bita*F1;
dy(3) = TEMP0 * (A*F1 + TEMP1 + F1^2 - F0*F2 + TEMP2 - lambda*G0 - delta*H0 + M*F1 - TEMP3);
See attached scripts
댓글 수: 10
Chandan Kumawat
2019년 10월 14일
darova
2019년 10월 14일
How do you think those points mean?

Chandan Kumawat
2019년 10월 15일
darova
2019년 10월 15일
Please see the picture

Chandan Kumawat
2019년 10월 15일
darova
2019년 10월 15일
Impossible. What is Untitled6 ? Why don't you run the script i attached Untitled21?
Chandan Kumawat
2019년 10월 15일
darova
2019년 10월 15일
constant value of M Ec Pr
Are you sure those values are correct? Maybe for something values diving by zero occurs?
Chandan Kumawat
2019년 10월 17일
darova
2019년 10월 17일
I just changed main code
init = [0 1 -0.58 1 -1.52 1 -1.12];
% solinit = bvpinit([0 2],zeros(1,7));
% sol = bvp4c(@new,@bvpf,solinit);
[t,y] = ode45(@new,[0 2], init);
% plot(sol.x,sol.y)
plot(t,y)
legend('F','dF','d2F','G','dG','H','dH')
I took initial conditions from last calc. There is no rule for F2(0) G1(0) & H1(0) values, only guessing or something like bvp4c

카테고리
도움말 센터 및 File Exchange에서 Boundary Value Problems에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
