matlab数值求解边界条件微分方程组解一个方程组,文献上给出了如下的形式:du/dx+dv/dx=0u=dn/dxv=-dm/dxdu/dx=-exp(-x)+n*m/(m+n)边界条件和初值条件u(p)=0,u(0)=v(p),v(0)=0n(0)=q其中函数自变量为x,边界条件和
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 10:00:03
matlab数值求解边界条件微分方程组解一个方程组,文献上给出了如下的形式:du/dx+dv/dx=0u=dn/dxv=-dm/dxdu/dx=-exp(-x)+n*m/(m+n)边界条件和初值条件u(p)=0,u(0)=v(p),v(0)=0n(0)=q其中函数自变量为x,边界条件和
matlab数值求解边界条件微分方程组
解一个方程组,文献上给出了如下的形式:
du/dx+dv/dx=0
u=dn/dx
v=-dm/dx
du/dx=-exp(-x)+n*m/(m+n)
边界条件和初值条件
u(p)=0,u(0)=v(p),v(0)=0
n(0)=q
其中函数自变量为x,边界条件和初值条件中p为常量,q为变量
按照matlab求解边界条件微分方程bvp4c方法,我进行了如下处理:
y(1)=n,y(2)=m,y(3)=u,y(4)=v
y'(1)=y(3),y'(2)=-y(4),y'(3)=-exp(-x)+y(1)*y(2)/(y(1)+y(2)),y'(4)=exp(-x)-y(1)*y(2)/(y(1)+y(2))
方程M文件
function dydx=ivode(x,y)
dydx=[y(3);-y(4);-exp(-x)+2*y(1)*y(2)/(2*y(2)+y(1));exp(-x)-2*y(1)*y(2)/(2*y(2)+y(1))];
边界条件M文件
function res=ivbc(ya,yb)
res=[ya(1)-q;ya(4);yb(3);ya(3)-yb(4)];
command:
solinit=bvpinit(linspace(0,1,10),[1 1 0 0]);
sol=bvp4c(@ivode,@ivbc,solinit);
Error using ==> bvp4c
Unable to solve the collocation equations -- a singular Jacobian encountered
请问这个问题怎么解决呢?还有边界条件中u(0)=v(p)是否必须需要等于一个常量,方程组才能给出数值解.手工处理du/dx=-exp(-x)+n*m/(m+n)方程,分离变量也没弄明白
matlab数值求解边界条件微分方程组解一个方程组,文献上给出了如下的形式:du/dx+dv/dx=0u=dn/dxv=-dm/dxdu/dx=-exp(-x)+n*m/(m+n)边界条件和初值条件u(p)=0,u(0)=v(p),v(0)=0n(0)=q其中函数自变量为x,边界条件和
问题补充:谢谢啊,这回行了,再问一下,1.怎样设置曲线终止时的边界条件(函数中必须显式给出 dy(1)= dy(2)= dy(3)= ————