位置: IT常识 - 正文

如何用Python求解微分方程组(如何用python求解航天器追逃博弈)

发布时间:2024-01-16
如何用Python求解微分方程组 文章目录odeint简介示例odeint简介

推荐整理分享如何用Python求解微分方程组(如何用python求解航天器追逃博弈),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何用python求解一元二次方程程序,如何用python求解有约束条件的方程组,如何用python求解一元二次方程,如何用python求解一元二次方程,如何用python求解航天器追逃博弈,如何用python求解一元二次方程,如何用python求解微分,如何用python求解一元二次方程,内容如对您有帮助,希望把文章链接给更多的朋友!

scipy文档中将odeint函数和ode, comples_ode这两个类称为旧API,是scipy早期使用的微分方程求解器,但由于是Fortran实现的,尽管使用起来并不方便,但速度没得说,所以有的时候还挺推荐使用的。

其中,odeint的参数如下

scipy.integrate.odeint(func, y0, t, args=(), Dfun=None, col_deriv=0, full_output=0, ml=None, mu=None, rtol=None, atol=None, tcrit=None, h0=0.0, hmax=0.0, hmin=0.0, ixpr=0, mxstep=0, mxhnil=0, mxordn=12, mxords=5, printmessg=0, tfirst=False)

其中func为待求解函数;y0为初值;t为自变量列表,其他参数都有默认选项,可以不填,而且这些参数非常多,其中常用的有

args func中除了t之外的其他变量Dfun func的梯度函数,当此参数不为None时,若将col_deriv设为True,则可提升效率。full_output 如果为True,则额外返回一个参数字典ml=None, mu=None, rtol=None, atol=None, tcrit=None, h0=0.0, hmax=0.0, hmin=0.0, ixpr=0, mxstep=0, mxhnil=0, mxordn=12, mxords=5,printmessg 为True时打印信息。tfirst 当为False时,func的格式为func(y,t...),否则格式为func(t, y...)示例

对于常微分方程

如何用Python求解微分方程组(如何用python求解航天器追逃博弈)

θ′′(t)+bθ′(t)+csin⁡θ(t)=b=0.25;c=5θ()=π−0.1;θ′()=\theta''(t)+b\theta'(t)+c\sin\theta(t)=0\\ b=0.25;\quad c=5\\ \theta(0)=\pi-0.1;\quad \theta'(0)=0θ′′(t)+bθ′(t)+csinθ(t)=0b=0.25;c=5θ(0)=π−0.1;θ′(0)=0

将其中的二阶导数项用一个新变量替代,ω(t)=θ′(t)\omega(t)=\theta'(t)ω(t)=θ′(t),则常微分方程可拆分成微分方程组

θ′(t)=ω(t)ω′(t)=−bω(t)−csin⁡θ(t)\begin{aligned} \theta'(t)&=\omega(t)\\ \omega'(t)&=-b\omega(t)-c\sin\theta(t) \end{aligned}θ′(t)ω′(t)​=ω(t)=−bω(t)−csinθ(t)​

令y=[θ,ω]y=[\theta, \omega]y=[θ,ω],则y′=[θ′,ω′]y'=[\theta', \omega']y′=[θ′,ω′],据此可设计函数func

import numpy as npdef pend(y, t, b, c): th, om = y dydt = [om, -b*om - c*np.sin(th)] return dydt

然后调用并求解

from scipy.integrate import odeinty0 = [np.pi-0.1, 0]t = np.linspace(0, 10, 101)sol = odeint(pend, y0, t, args=(0.25, 5))

然后绘制一下结果

import matplotlib.pyplot as pltplt.plot(t, sol[:,0], label="theta")plt.plot(t, sol[:,1], label="omega")plt.legend()plt.show()

这个形状还是比较离奇的。

本文链接地址:https://www.jiuchutong.com/zhishi/297854.html 转载请保留说明!

上一篇:vue 项目中刷新当前路由(vue页面刷新时原有的数据还在吗)

下一篇:[JavaScript你真的以为这么简单吗]JavaScript高级

  • 有目标的人,就会有路(有目标的人就是不一样)

    有目标的人,就会有路(有目标的人就是不一样)

  • 哈罗单车怎么结束用车(哈罗单车怎么结束订单)

    哈罗单车怎么结束用车(哈罗单车怎么结束订单)

  • 指纹识别是通过什么物理传感器

    指纹识别是通过什么物理传感器

  • 怎样删除c盘上的微信文件夹(怎样删除c盘上的微信)

    怎样删除c盘上的微信文件夹(怎样删除c盘上的微信)

  • 网店基础数据指什么(网店数据分析报告怎么写)

    网店基础数据指什么(网店数据分析报告怎么写)

  • 小米手机浏览器下载的文件在哪个文件夹(小米手机浏览器下载的软件无法安装)

    小米手机浏览器下载的文件在哪个文件夹(小米手机浏览器下载的软件无法安装)

  • vadr是什么软件(vadr能卸载吗)

    vadr是什么软件(vadr能卸载吗)

  • 小红书为什么换不了头像(小红书为什么换绑不了)

    小红书为什么换不了头像(小红书为什么换绑不了)

  • 微博被限流怎么解除(微博被限流怎么办 如何解决微博限流_游戏狗手机版)

    微博被限流怎么解除(微博被限流怎么办 如何解决微博限流_游戏狗手机版)

  • ipad的pages文稿打不开(ipad page文稿使用教程)

    ipad的pages文稿打不开(ipad page文稿使用教程)

  • QQ情侣空间邀请多久失效(qq情侣空间邀请多久过期)

    QQ情侣空间邀请多久失效(qq情侣空间邀请多久过期)

  • 健康码添加到桌面不成功(健康码添加到桌面怎么找不到)

    健康码添加到桌面不成功(健康码添加到桌面怎么找不到)

  • bose降噪耳机怎么连接蓝牙(Bose降噪耳机怎么充电)

    bose降噪耳机怎么连接蓝牙(Bose降噪耳机怎么充电)

  • 苹果怎样才给换官换机(iphone如何换)

    苹果怎样才给换官换机(iphone如何换)

  • 爱奇艺学生会员可以在电视上用吗(爱奇艺学生会员和普通会员有什么区别)

    爱奇艺学生会员可以在电视上用吗(爱奇艺学生会员和普通会员有什么区别)

  • iphone个人热点连上后上不了网(iphone个人热点连接不上什么原因)

    iphone个人热点连上后上不了网(iphone个人热点连接不上什么原因)

  • word文档打开不能编辑(word文档打开不是a4)

    word文档打开不能编辑(word文档打开不是a4)

  • wps文字间距怎么调(wps文字间距怎么紧缩)

    wps文字间距怎么调(wps文字间距怎么紧缩)

  • p30微信视频怎么美颜(p30微信视频声音小怎么解决)

    p30微信视频怎么美颜(p30微信视频声音小怎么解决)

  • 搜狗怎么取消回车发送(搜狗取消回车键发消息)

    搜狗怎么取消回车发送(搜狗取消回车键发消息)

  • u盘无法读取什么情况(u盘无法读取怎么办)

    u盘无法读取什么情况(u盘无法读取怎么办)

  • 电话下面有hd什么意思(电话上面hd标志是啥)

    电话下面有hd什么意思(电话上面hd标志是啥)

  • 怎么检测手机有没有病毒(怎么检测手机有没有维修过)

    怎么检测手机有没有病毒(怎么检测手机有没有维修过)

  • 怎么对Word进行加密(怎么对word进行批注)

    怎么对Word进行加密(怎么对word进行批注)

  • 手机腾讯视频怎么保存本地(手机腾讯视频怎么微信扫码登录)

    手机腾讯视频怎么保存本地(手机腾讯视频怎么微信扫码登录)

  • 8g运行和6g运行的区别(8g运行和6g运行差距大吗)

    8g运行和6g运行的区别(8g运行和6g运行差距大吗)

  • 个体工商户可以开发票吗
  • 补充登记法怎么写
  • 预计产品质量保证损失是什么意思
  • 预收款方式销售货物
  • 销售货物分期付款怎么确认收入
  • 代理缴费业务主要包括
  • 临时工工资能否用公户支付
  • 在建工程转什么
  • 微信手续费发票可以抵扣吗?
  • 收购公司固定资产注意事项
  • 两所工资所得怎么扣税
  • 工业企业成本结构
  • 如何处理没有录音的人
  • 没有签字的支出凭证怎么处理?
  • 工资个税合理避税
  • 待认证进项税额转出会计分录
  • 销售营改增之后取得的固定资产
  • 房产税实施城市
  • 领款凭证可以当收据吗
  • 忘了结转成本怎么办
  • 增值税总分机构可以汇总纳税吗
  • 注册资本多少钱算大公司
  • 发票未到的费用怎么处理
  • 过期商品报损账务处理?
  • 期末增值税如何结转
  • 坏账减值准备账务处理
  • windows 10 bug
  • 母子公司吸收合并优劣势
  • php随机ua
  • Windows10开始菜单透明
  • 重置edge浏览器设置
  • mac系统怎么添加网络映射
  • linux中loop的含义
  • 境外汇款犯法吗
  • php add
  • 公司租房子 房东让我们代缴税
  • php连接mysql数据库步骤正确的是
  • 后端三件套
  • 购买的商品作为赠品怎么入账
  • 让客户抽奖赠送什么礼物
  • 应收账款计提坏账准备方法
  • mysql乱码产生原因
  • 未使用固定资产有哪些
  • 劳务公司账务处理实操
  • 红字发票什么意思怎么做账
  • 其他应收款审计说明怎么写
  • 上个月结转的流量下个月能用吗
  • 合同负债属于什么账户
  • 运输服务和运输费有什么区别
  • 纳税人销售免税产品开具专票
  • 成本核算方法有哪几种
  • 工资是先做后拿还是先拿后做
  • windows7的内存基本要求
  • win10 Realtek HD Audio更新失败怎么办 win10关闭UAC解决Realtek HD Audio更新失败
  • 组策略win7
  • win8怎么玩帝国时代2
  • winxp怎么改壁纸
  • ubuntu20关机卡在logo
  • linux模块的概念
  • onenotewindows10
  • 无法打开opencv2
  • linux双网卡绑定原理
  • w1020h2更新失败
  • win7系统屏幕保护设置禁用如何开启
  • android app 源码
  • js canvas压缩图片
  • Extjs4中的分页应用结合前后台
  • javascript模块化规范有哪些
  • shell编程入门
  • Unity WWW网络动态加载和储存在本地
  • JavaScript html5 canvas绘制时钟效果
  • linux中的shell命令
  • unity设置update间隔
  • 简单谈谈你对中国国防建设的认识
  • Android屏幕适配分屏
  • 北京市网上税务局(自然人版)
  • 法人变更税务登记表怎么填
  • 青岛市税务管理局
  • 山东发票认证勾选平台网址
  • 委托贷款的手续费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号