待解方程为:y=f(x), y''=y^2,即y的二阶导等于y的平方
边界条件:y(0)=1, y'(100)=0
用matlab函数ode45求解
function dy=test(x,y)
dy=zeros(2,1);
dy(1)=y(2);
dy(2)=[y(1)]^1;
end
[X,Y]=ode45('test',[0 100],[1 ?]); 这个地方就不会写了
看教程这个‘?’地方应该是填y'(0)的值,由于不知道y'(0)的值,只知道y'(100)=0
求大神指点迷津,谢谢。
分析
这是个边值问题(BVP),不是初值问题。求解边值问题不能用ode系列函数,需要用专门的求解器。下面给你参考代码,涉及到的函数主要有bvpinit、bvp4c、deval,请自行参阅相关函数的说明。
参考代码
dydx = inline('[y(2); y(1)^2]', 'x', 'y');
结果