python:使用scipy求解常微分方程
2017-05-06 23:01
1161 查看
遇到一个物理问题,要求解如下微分方程组:
d2xdt2=wdydt
d2ydt2=−wdxdt
经参考相关资料后得知,需要用到scipy包中的odeint函数。
odeint函数使用方法如下:
其中t是自变量,需要给出其取值范围;sol用来描述微分方程;得到的y是一个numpy矩阵,每一行对应一个因变量在自变量范围的值。
odeint所求解的方程必须是如下形式:
dydx=f(x,y)
因此,在求解上面的方程组中,实际上是求出了导数,还需要进行积分得到真实的值。
参考资料:
Scipy科学计算: http://blog.chinaunix.net/uid-21633169-id-4437868.html
scipy下载(win32 python2.7) http://download.csdn.net/download/u010156024/9302697
d2xdt2=wdydt
d2ydt2=−wdxdt
经参考相关资料后得知,需要用到scipy包中的odeint函数。
odeint函数使用方法如下:
def sol(y,t,v0,w0): return (w0*y[1]+v0,-w0*y[0]) y = odeint(sol,(0,0),t,args = (10,10))
其中t是自变量,需要给出其取值范围;sol用来描述微分方程;得到的y是一个numpy矩阵,每一行对应一个因变量在自变量范围的值。
odeint所求解的方程必须是如下形式:
dydx=f(x,y)
因此,在求解上面的方程组中,实际上是求出了导数,还需要进行积分得到真实的值。
参考资料:
Scipy科学计算: http://blog.chinaunix.net/uid-21633169-id-4437868.html
scipy下载(win32 python2.7) http://download.csdn.net/download/u010156024/9302697
相关文章推荐
- python中做层次聚类,使用scipy.cluster.hierarchy.fclusterdata方法
- 分享一个连接,python扩展包下载地址分享包括numpy,scipy等,解决了win8系统不能使用这些扩展包的问题!
- 详解Python使用模拟退火算法求解列表“最大值”
- 使用Python求解最小公倍数
- 使用Python求解最大公约数
- 使用python和numpy,scipy做FIR带通滤波实验
- Windows下使用命令安装Python的scipy库出错的解决
- Python使用tensorflow中梯度下降算法求解变量最优值
- Python scipy.sparse矩阵使用方法
- python numpy、scipy安装及numpy的初步使用
- Python使用scipy和numpy操作处理图像
- 使用Python求解最大公约数的实现方法
- 使用Python求解最大公约数的实现方法
- 使用MATLAB和Python迭代求解黄金分割
- 【编程语言】Python 使用包管理工具pip安装模块numpy、scipy、matplotlib以及scikit-learn CentOS 7
- python中做层次聚类,使用scipy.cluster.hierarchy.fclusterdata方法 - Waleking的专栏 - 博客频道 - CSDN.NET
- Python Matplotlib的安装使用及Scipy,numpy,dateutil,pyparsing的安装
- 使用Python scipy linprog 线性规划求最大值或最小值(使用Python学习数学建模笔记)
- Python使用matplotlib,numpy,scipy进行散点的平滑曲线化方法
- 使用Python求解数独