微分方程求解:y'=a*y^m + b,(a,b 均为常数)谁知道这个微分方程怎么解啊dy/dx = a*y^m +b,a 和 b 均为常数.目的是想对dx 和 dy 分别积分的,但是首先要把这个方程变成 d[g(y)] = d[f(x)] 的形式才可以.所以

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/13 09:57:13

微分方程求解:y'=a*y^m + b,(a,b 均为常数)谁知道这个微分方程怎么解啊dy/dx = a*y^m +b,a 和 b 均为常数.目的是想对dx 和 dy 分别积分的,但是首先要把这个方程变成 d[g(y)] = d[f(x)] 的形式才可以.所以
微分方程求解:y'=a*y^m + b,(a,b 均为常数)
谁知道这个微分方程怎么解啊
dy/dx = a*y^m +b,a 和 b 均为常数.
目的是想对dx 和 dy 分别积分的,但是首先要把这个方程变成 d[g(y)] = d[f(x)] 的形式才可以.所以要解如题的那个微分方程.
1楼:请问 LerchPhi 你应该是用matlab做的吧
2楼:m 是个大于0的数
请问怎么分别做积分啊
先用把它变成 dy/(y^m+b/a)=a*dx的形式,再把1/(y^m+b/a) 展开,把这个方程线性化。
但是我用泰勒展开式,却发现都是不管展开成多少次项,结果都是0.

微分方程求解:y'=a*y^m + b,(a,b 均为常数)谁知道这个微分方程怎么解啊dy/dx = a*y^m +b,a 和 b 均为常数.目的是想对dx 和 dy 分别积分的,但是首先要把这个方程变成 d[g(y)] = d[f(x)] 的形式才可以.所以
左右两边取倒数得dx/dy=1/(a*y^m+b)
所以dx=dy/(a*y^m+b)
>> syms a b m x y
>> y=dsolve('Dy=a*y^m+b','x')
Warning: Explicit solution could not be found; implicit solution returned.
> In dsolve at 312

y =

x-1/b/m*y*LerchPhi(-y^m*a/b,1,1/m)+C1 = 0

你的目的就是分离变量
dy/(ay^m+b)=dx
然后你在做积分好了m不一样结果也不一样,你得给个具体的m~
可能我昨天说的不太清楚.我觉得是这样的.
因为你的问题是在求解一个非线性的微分方程,而且次数m也不定,所以我觉得可能整个问题本身在这条路上是走不通的.因为我也不太懂你那个领域的东西.但我知道一个大概处理非线性问题的办法.
1.非线性线性化,然后再...

全部展开

你的目的就是分离变量
dy/(ay^m+b)=dx
然后你在做积分好了m不一样结果也不一样,你得给个具体的m~
可能我昨天说的不太清楚.我觉得是这样的.
因为你的问题是在求解一个非线性的微分方程,而且次数m也不定,所以我觉得可能整个问题本身在这条路上是走不通的.因为我也不太懂你那个领域的东西.但我知道一个大概处理非线性问题的办法.
1.非线性线性化,然后再列为微分方程,求解.这里可能线性化后你要用的公式也好方法也好就和你原来的可能不一样了.
2.非线性的处理方法,因为非线性没有通用的的处理方法,所以有很多种,我才疏学浅,知道的不多,提供一种吧,把y和y'画在图上,用图分析.这个叫相平面法.
总之我觉得你现在遇到的问题不是解方程的问题.而是处理非线性的问题.这是一个难题.整个的思路都要换一下.因为我不是很懂你的专业.所以只能提供这些.

收起

左右两边取倒数得dx/dy=1/(a*y^m+b)
所以dx=dy/(a*y^m+b)
>> syms a b m x y
>> y=dsolve('Dy=a*y^m+b','x')
Warning: Explicit solution could not be found; implicit solution returned.
> In dsolve a...

全部展开

左右两边取倒数得dx/dy=1/(a*y^m+b)
所以dx=dy/(a*y^m+b)
>> syms a b m x y
>> y=dsolve('Dy=a*y^m+b','x')
Warning: Explicit solution could not be found; implicit solution returned.
> In dsolve at 312

y =

x-1/b/m*y*LerchPhi(-y^m*a/b,1,1/m)+C1 = 0
你的目的就是分离变量
dy/(ay^m+b)=dx
然后你在做积分好了m不一样结果也不一样,你得给个具体的m~

收起