matlab:求解 dy/dx-x*sin(x+y)=0;y(1)=0

百度网友0ad8b4c21
2011-11-11 · TA获得超过3316个赞
知道小有建树答主
回答量:965
采纳率:100%
帮助的人:508万
展开全部
因为当你输入
dsolve('Dy=x*sin(x+y)','y(1)=0')时,注意,没有指明自变量,matlab默认自变量是t,因此x被看作了常数,此时y(1)=0可能是个有问题的初值,所以不行。这也就是楼上的结果为什么会出现t的原因。

本题正解:
>> syms x y;
>> dsolve('Dy=x*sin(x+y)','x')
Warning: Explicit solution could not be found.
> In dsolve at 330

ans =

[ empty sym ]
说明matlab解不出来,变一下形。

令z=x+y,则dy/dx=dz/dx-1,原方程化为dz/dx-1-xsinz=0, z(1)=1
>> dsolve('Dz=x*sinz+1','z(1)=1','x')

ans =

1/2*x^2*sinz+x-1/2*sinz

然后将z换回x+y就行了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
徐新妙
2011-11-11 · TA获得超过2591个赞
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:110万
展开全部
syms x y;
dsolve('Dy=x*sin(x+y)','y(1)=0')

ans=

2*atan(exp(log(tan(x/2)) - x + t*x)) - x
更多追问追答
追问
你的是怎么解出来的;为什么我的出现:
??? Error using ==> dsolve
Error, (in dsolve/IC) The 'implicit' option is not available when giving Initial Conditions.

还有那个t是什么呀
追答
应该就是这样解啊
t是一个常数吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式