利用matlab求解微分方程,谢谢!
展开全部
用matlab的dsolve命令求解失败,结果如下:
>> syms f;a=dsolve('Dx=(sqrt((f-x)^2+y^2)-f+x)/y')
Warning: Explicit solution could not be found.
> In dsolve at 120
a =
[ empty sym ]
我把f用数值代替,比如1,结果如下:
>> a=dsolve('Dx=(sqrt((1-x)^2+y^2)-1+x)/y')
Warning: Explicit solution could not be found.
> In dsolve at 120
a =
[ empty sym ]
warning的意思应该是matlab没能找到符号解。
我又尝试了一下将y换成t,因为matlab默认的求导是对t求导(不过按理说对y求导也是没有影响的),结果更诡异:
>> syms f;a=dsolve('Dx=(sqrt((f-x)^2+t^2)-f+x)/t')
a =
f - i*t
f
f + i*t
solve(t*(exp(C29 + log(f - x)) + 1)^(1/2) - (f^2 - 2*f*x + t^2 + x^2)^(1/2) - x = -f, x)
solve(- x - (f^2 - 2*f*x + t^2 + x^2)^(1/2) - t*(exp(C29 + log(f - x)) + 1)^(1/2) = -f, x)
warning倒是没了,但是出来的结果带有solve函数,显然是matlab没能解出来,于是显示了一些中间步骤。
这个方程是个比较简单的一阶微分方程,按理matlab应该很好解,你再看看有没写错
>> syms f;a=dsolve('Dx=(sqrt((f-x)^2+y^2)-f+x)/y')
Warning: Explicit solution could not be found.
> In dsolve at 120
a =
[ empty sym ]
我把f用数值代替,比如1,结果如下:
>> a=dsolve('Dx=(sqrt((1-x)^2+y^2)-1+x)/y')
Warning: Explicit solution could not be found.
> In dsolve at 120
a =
[ empty sym ]
warning的意思应该是matlab没能找到符号解。
我又尝试了一下将y换成t,因为matlab默认的求导是对t求导(不过按理说对y求导也是没有影响的),结果更诡异:
>> syms f;a=dsolve('Dx=(sqrt((f-x)^2+t^2)-f+x)/t')
a =
f - i*t
f
f + i*t
solve(t*(exp(C29 + log(f - x)) + 1)^(1/2) - (f^2 - 2*f*x + t^2 + x^2)^(1/2) - x = -f, x)
solve(- x - (f^2 - 2*f*x + t^2 + x^2)^(1/2) - t*(exp(C29 + log(f - x)) + 1)^(1/2) = -f, x)
warning倒是没了,但是出来的结果带有solve函数,显然是matlab没能解出来,于是显示了一些中间步骤。
这个方程是个比较简单的一阶微分方程,按理matlab应该很好解,你再看看有没写错
富港检测技术(东莞)有限公司_
2024-04-02 广告
2024-04-02 广告
正弦振动多用于找出产品设计或包装设计的脆弱点。看在哪一个具体频率点响应最大(共振点);正弦振动在任一瞬间只包含一种频率的振动,而随机振动在任一瞬间包含频谱范围内的各种频率的振动。由于随机振动包含频谱内所有的频率,所以样品上的共振点会同时激发...
点击进入详情页
本回答由富港检测技术(东莞)有限公司_提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询