我正在实现一个非常简单的易感-感染-恢复模型,该模型针对一个稳定人口进行建模,这是一个相当琐碎的任务。但是,我在使用PysCeS或SciPy时遇到了求解器错误,它们都使用lsoda作为其基础求解器。这仅发生在特定参数值下,我对此感到困惑。我使用的代码如下: import numpy as n...
我正在尝试使用scipy中的odeint求解一个二阶ODE。我遇到的问题是函数隐式地与二阶项相耦合,如简化的代码片段所示(请忽略示例中的假物理内容): import numpy as np from scipy.integrate import odeint def integral(y,...
我正在学习Haskell,并尝试以与C相同的速度编写代码。对于这个练习,我正在为一个简单的一维物理系统编写欧拉积分器。 C代码使用GCC 4.5.4和-O3编译。它运行需要1.166秒。 Haskell代码使用GHC 7.4.1和-O3编译。它运行需要21.3秒。 如果我使用-O3 -fl...
我正在尝试实现分裂-傅里叶方法,以解决光学中的非线性薛定谔方程。基本上它将线性部分和非线性部分分开处理。它通过使用傅里叶变换解决线性部分,并在时间域中解决非线性部分。 以下代码来自一本书: alpha = 0 beta_2 = 1 gamma = 1 T = linspace(-5,5,...
在不使用质量矩阵的情况下,ODE求解器(如ode45)可以解决y'=f(t,y)。 但是,在涉及“质量”矩阵M(t,y)y'=f(t,y)的问题中,ODE求解器中有一个质量矩阵选项。 那么,“质量”矩阵到底是什么?这个术语来自于质量-弹簧系统振荡的质量吗?我在文档中找不到关于此的示例代码。...
scipy.integrate.ode 接口提供了一种方法,用于在任何步骤上违反约束条件时停止积分,称之为 set_solout。然而,即使在最简单的示例中,我也无法让此方法正常工作。以下是一个尝试: import numpy as np from scipy.integrate impo...
有人能给我一些建议吗,如何在Python中解决一个带有时间延迟的常微分方程(ODE)?使用scipy.integrate.odeint似乎无法实现。我正在寻找的应该类似于: # the constants in the equation b = 1/50 d = 1/75 a = 0.8 G...
可能是什么原因导致使用一个名为SUNDIALS/CVODE的库(一种数值ODE求解器)在Gentoo Linux集群上运行的C、MPI程序给我反复发出Signal 15 received.? 这个代码是由MPI、Sundials、Linux、C或其他谁发出的? 请注意,我对以下技术基本上是...
尝试使用solve_ivp的向量化选项,但出现了一个奇怪的错误,提示y0必须是一维的。 MWE: from scipy.integrate import solve_ivp import numpy as np import math def f(t, y): theta = m...