如何使用 scipy.integrate 设置固定步长?

2023-12-08

我正在寻找一种方法来设置固定步长,以通过 Python 中的 Runge-Kutta 方法解决我的初始值问题。因此,我如何才能告诉scipy.integrate.RK45保持其积分过程的不断更新(步长)?

非常感谢。


Scipy.integrate 通常与可变步长方法一起使用,通过在数值积分时控制 TOL(一步误差)。 TOL 通常是通过使用另一种数值方法进行检查来计算的。例如RK45使用5阶龙格-库塔法检查4阶龙格-库塔法的TOL来确定积分步长。

因此,如果必须对固定步长的 ODE 进行积分,只需通过将 atol、rtol 设置为相当大的常数来关闭 TOL 检查即可。例如,像这样的形式:

solve_ivp(your function, t_span=[0, 10], y0=..., method="RK45", max_step=0.01, atol = 1, rtol = 1)

TOL 检查设置得很大,以致于积分步长将是您选择的 max_step。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 scipy.integrate 设置固定步长? 的相关文章

随机推荐

  • 如何在 MvxSpinner 中设置所选项目

    我有一个 MvxSpinner 绑定到List
  • 如何删除 df 命令中的标头?

    我正在尝试编写一个 bash 命令 该命令将按所有卷已使用和尝试使用的数据量对所有卷进行排序 df awk print 1 sort r k3 n Output map devfs Filesystem dev disk1s5 dev di
  • 整数序列的最佳压缩算法

    我有一个大数组 其中的整数范围大多是连续的 例如 1 100 110 160 等 所有整数都是正数 压缩这个的最佳算法是什么 我尝试了 deflate 算法 但只提供了 50 的压缩率 请注意 该算法不能是有损的 所有数字都是唯一的并且逐渐
  • 如何清除查询消息?

    如何清除查询中的消息缓冲区 实际上 我不想在查询完成后看到任何消息 考虑到这一点 我正在使用PRINT我的查询中的声明 我的查询也可能会打印一些带有 不带有的错误消息RAISEERROR 不 实际上没有办法隐藏自定义打印消息 你只能隐藏 受
  • 使用 http.Client 和 http.Transport 设置请求标头

    我有多个IP可以上网 我正在请求选择界面 在这种情况下我应该如何设置标题 tcpAddr net TCPAddr IP addrs 3 net IPNet IP Choosing ip address number 3 d net Dial
  • 返回一个Type,或者如何保存一个对象指针的类型?

    我有一个非常复杂的代码结构 但重要的部分是 典型设置 我有一个基类和两个从该基类派生的类 每个类都有自己的成员 并且没有标准构造函数 class BaseSolver class SolverA BaseSolver public std
  • 具有多值查询的 Spring 缓存抽象

    Spring Cache抽象是否支持多值查询 代替 Cacheable 书籍 公共图书 findBook ISBN isbn 想象一下这样的查询 Cacheable 书籍 公共列表 findBook 列表 isbns 支持吗 它会单独缓存集
  • 如何在异步回调中调用事件处理程序,以便在调用线程中运行

    我正在开发一个由不同应用程序使用的 VS 项目 解决方案 我的工作是重构项目并将其从使用 xxxAsync 方法更改为使用 BeginInvoke 我想出了类似于以下代码的内容 public class AsyncTestModel pri
  • 如何在 TFS 2015 的脚本中访问构建的自定义变量?

    在 Team Foundation Server 2015 的构建定义中 我使用在 变量 选项卡上定义的自定义变量 有没有什么方法可以在 PowerShell 构建步骤中访问它们 例如可以访问预定义变量 env BUILD DEFINITI
  • OpenCV 不适用于 Visual Studio

    我刚刚安装了 openCV 版本 我的计算机上有 3 00 beta 我正在尝试使用 VS2013 对其进行测试 我遵循快速入门指南 1 Windows 安装 使用预构建库 2 微软VS中的OpenCV 使用本地方法和x64 vc12库目录
  • git svn 在非标准 svn 存储库布局上指定分支和标签

    布局是 Branches Project1 Branch11 Branch1N Project2 Branch21 ProjectX not anywhere else Excluded1 Excluded2 Excluded3 Exclu
  • 为什么即使从未调用 TransactionScope.Complete() 也会提交嵌套事务?

    我正在测试嵌套事务如何工作 并发现了这种令人不安和意外的行为 using TransactionScope otx new TransactionScope using SqlConnection conn1 new SqlConnecti
  • 如何更新 Ionic Framework 中 Angular 的版本?

    我在使用 Angular 过滤器时遇到一些问题 每个人都说 是因为您没有使用 Angular 1 3 8 或更高版本 我只是通过执行以下操作来实现我的版本angular version在控制台上并且 Object full 1 3 6 ma
  • 将现有的 Android Studio 项目添加到 VSTS

    我有一个使用 Kotlin 在 Android Studio 中开发的现有 Android 项目 它尚未受到版本控制 我想将其添加到 Visual Studio Team Services 的新经典 TFVC 项目中 而不是 Git 项目中
  • 我可以通过 SQL Server 触发器调用 C# 函数吗?

    外部应用程序进入我的数据库以在 Sql 服务器表中插入行 我自己有一个网络应用程序 我想在这个表中的每个插入中 在服务器端进行一些处理 我的想法是在表上插入时创建一个触发器 然后调用适当的函数 做这个的最好方式是什么 我使用带有 LINQ
  • 允许读、写: if request.auth != null;

    我有这个警告 除非您更新安全规则 否则您的 Cloud Firestore 数据库将开始拒绝客户端请求 它说我有一天要改变它们 我对此不太了解 我尝试观看一些视频 但我无法理解 看到我可以更改日期 但更喜欢有适当的规则 到目前为止 我对我的
  • 错误:无法读取服务器:远程使用 ltk 时没有此类变量

    我正在摆弄ltk因为它提供了运行远程 GUI 的选项 但是 当尝试使用远程 GUI 时 我遇到了在本地运行 ltk 时不会遇到的问题 in package ltk user defun add current investigation f
  • 如何在dynamodb中使用自动递增主键id

    我是 dynamodb 的新手 我想在使用时自动增加 id 值putitem与 dynamodb 可以这样做吗 Answer recommended by AWS Collective 这是 DynamoDB 中的反模式 DynamoDB
  • 怎么知道是iphone还是ipad?

    我想知道用户使用iphone还是ipad 如果用户使用iphone我想打开相机 如果他使用ipad或在模拟器中运行我想打开库 怎么可能 如何查找设备的详细信息 如何通过xcode知道用户当前使用的设备 NSString deviceType
  • 如何使用 scipy.integrate 设置固定步长?

    我正在寻找一种方法来设置固定步长 以通过 Python 中的 Runge Kutta 方法解决我的初始值问题 因此 我如何才能告诉scipy integrate RK45保持其积分过程的不断更新 步长 非常感谢 Scipy integrat