How to get two solution of this single equation
1 次查看(过去 30 天)
显示 更早的评论
%The range for one solution 0-20 and for seconde 40-120.
function My
xa = 0; xb = 20;
solinit = bvpinit(linspace(xa,xb,1000),[1 0 0]);
sol = bvp4c(@rhs_bvp,@bc_bvp,solinit);
xint = linspace(xa,xb,1000);
Sxint = deval(sol,xint);
plot(x,Sxint(1,:));
function rhs=rhs_bvp(x,y)
rhs=[y(2); y(3) ; y(2)^2-y(1)*y(3)];
end
function bc=bc_bvp(ya,yb)
bc=[ya(1)-2; ya(2)+1-ya(3)+ya(4); yb(2)];
end
end
5 个评论
Torsten
2017-8-23
Then, instead of ya(4), you will have to use ya(2)^2-ya(1)*ya(3).
By the way: K is equal to 0 in your example code, not equal to 1.
Best wishes
Torsten.
回答(1 个)
MOSLI KARIM
2023-11-27
编辑:DGM
2024-1-24
My
%The range for one solution 0-20 and for seconde 40-120.
function My
xa = 0; xb = 20;
xint = linspace(xa,xb,1000);
solinit = bvpinit(linspace(xa,xb,1000),[1 0 0]);
sol = bvp4c(@rhs_bvp,@bc_bvp,solinit);
Sxint = deval(sol,xint);
plot(xint,Sxint(1,:));
function rhs=rhs_bvp(~,y)
rhs=[y(2)
y(3)
y(2)^2-y(1)*y(3)];
end
function bc=bc_bvp(ya,yb)
bc=[ya(1)-2; ya(2)+1-ya(3); yb(2)];
end
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Boundary Value Problems 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!