常微分问题,求详解

2025-04-28 19:58:49
推荐回答(2个)
回答1:

1.
dy/dx=(y²-2xy-3x²)/(x²-2xy)=[(y/x)²-2*(y/x)-3]/[1-2*(y/x)]
令u=y/x,y=ux,dy/dx=xdu/dx+u
xdu/dx+u=(u²-2u-3)/(1-2u)
xdu/dx=(3u²-3u-3)/(1-2u)
1/3*∫(1-2u)/(u²-u-1)du=∫dx/x
-1/3*∫(2u-1)/(u²-u-1)du=lnx+C1
-1/3*∫1/(u²-u-1) d(u²-u-1)=lnx+C1
-1/3*ln(u²-u-1)=lnx+C1
u²-u-1=Cx^(-3) (其中C=e^(-3C1))
(y/x)²-(y/x)-1=Cx^(-3)
y²-xy-x²=C/x
xy²-x²y-x^3=C

x^3+x²y-xy²=C'(C'=-C)

回答2:

改进欧拉
1.函数
function[x,y]=eulerpro(fun,x0,xfinal,y0,n)
if nargin<5
n=50;
end
h=(xfinal-x0)/n;%步
x(1)=x0;y(1)=y0;
for i=1:n
x(i+1)=x(i)+h;
y1=y(i)+h*feval(fun,x(i),y(i));
y2=y(i)+h*feval(fun,x(i+1),y1);
y(i+1)=(y1+y2)/2;
end
end
2.函数
function f=doty(x,y)
f=cos(x*y);
end
3.主函数调用
[x,y]=eulerpro('doty',0,1,1,10)