ode相关内容

量子谐振子/简谐振子模型

我需要帮助来找出为什么我的b)的基本状态图看起来是错误的,这里是完整的问题:(我认为完整地发布它会给我试图使用的方法提供上下文) (A)考虑两个无限高的壁之间的正方形势垒,𝑉(𝑥)=0,距离𝐿等于玻尔半径,即对于区间[0,𝐿]中的所有x。 编写一个接受参数Energy的函数solve(energy, func)和一个python函数𝑓𝑢𝑛𝑐。此函数应解决上述情况下的薛定 ..
发布时间:2022-08-15 12:43:38 Python

在tkinter图形用户界面中解决简单的ODE系统

我有一个用于SIR疾病模型的简单的ODE系统,它工作得很好,并产生了一个图形化的情节。但是,我正在尝试使用tkinter创建一个简单的弹出框,该框接受参数值,而不必通过脚本将参数值放入其中。 以下是原始代码。 import numpy as np from scipy.integrate import odeint import matplotlib.pyplot as plt #t ..
发布时间:2022-04-15 12:35:33 Python

从渐近性出发求解二阶微分方程组

我正在做一个多自由度动力学问题,使用的是二阶拉格朗日方程。我用渐近解出了运动方程。现在这些方程在计算导数后变得相当长,尽管符号简化不能进一步简化它。我的问题实际上是如何从这里解决这个三个二阶颂歌的系统。我不知道如何转换这些公式,这样它们才能与scipy.odeint()一起使用。我想到了替换,但有很多符号。所以我在搜索phi0,phi1和phi2,以及它们的一阶和二阶导数。初始条件都是phi[0] ..
发布时间:2022-04-06 16:03:35 其他开发

Julia DifferentialEquations.jl 速度

我正在尝试测试 Julia ODE 求解器的速度.我在教程中使用了洛伦兹方程: 使用微分方程使用绘图函数 lorenz(t,u,du)杜[1] = 10.0*(u[2]-u[1])杜[2] = u[1]*(28.0-u[3]) - u[2]杜[3] = u[1]*u[2] - (8/3)*u[3]结尾u0 = [1.0;1.0;1.0]tspan = (0.0,100.0)prob = ODEP ..
发布时间:2022-01-23 19:27:46 其他开发

求解具有读入外强迫的 ODE 系统

在 Julia 中,我想解决具有外部强迫的 ODE 系统 g1(t), g2(t) 像 dx1(t)/dt = f1(x1, t) + g1(t)dx2(t)/dt = f2(x1, x2, t) + g2(t) 从文件中读取强制. 我正在使用这项研究来学习 Julia 和包微分方程,但我很难找到正确的方法. 我可以想象使用 callback 可以工作,但这似乎很麻烦. 你知 ..
发布时间:2022-01-23 19:21:09 其他开发

odepack.error:额外的参数必须在一个元组中

我的 ode 求解器遇到了一些问题,我正在尝试解决 SEIR 问题,尽管我的代码基于非常相似的代码,但我不断收到相同的错误.我的代码是: 将 numpy 导入为 np从 scipy.integrate 导入 o​​deint导入 matplotlib.pyplot 作为 plt# 总人口,N.N1 = 55600# 感染和康复个体的初始数量,I0 和 R0.I10、R10、E10 = 1、0、0 ..
发布时间:2022-01-08 09:42:26 Python

如何在不使用嵌套函数的情况下求解 ODE?

我有一些微分方程需要使用 MATLAB 的 ODE 求解器来求解.虽然微分方程本身相当简单,但它们依赖于很多“常数".这些常量不是通用的,需要由调用者提供. 此类 ODE 示例如下: dx/dt = -j * (k + x) ./(l + x) 其中 j、k 和 l 是常数,x 是变量. 到目前为止,我一直在解决这些问题的方法是使用一个函数,该函数将所有初始值和常量的所有值(其中大 ..
发布时间:2022-01-07 13:56:47 其他开发

scipy.integrate.solve_ivp 向量化

尝试对solve_ivp 使用矢量化选项,奇怪的是它抛出了y0 必须是一维的错误.MWE: from scipy.integrate import solve_ivp将 numpy 导入为 np导入数学定义 f(t, y):θ = math.pi/4火腿 = np.array([[1,0],[1,np.exp(-1j*theta*t)]])return-1j * np.dot(ham,y)定义主 ..
发布时间:2021-12-31 12:18:15 Python

scipy.integrate.ode.set_solout 工作吗?

集成例程的 scipy.integrate.ode 接口提供了一种在任何步骤违反约束时停止集成的方法,set_solout.但是,即使在最简单的示例中,我也无法使用此方法.这是一次尝试: 将 numpy 导入为 np从 scipy.integrate 导入 o​​de定义 f(t, y):"""指数衰减."""返回 -ydef solout(t, y):如果 y[0] 当 t = log(2 ..
发布时间:2021-12-31 12:17:03 Python

奇怪的 SciPy ODE 集成错误

我正在为一个空闲的副项目实施一个非常简单的易感感染恢复模型,该模型具有稳定的人口 - 通常是一项非常微不足道的任务.但是我在使用 PysCeS 或 SciPy 时遇到了求解器错误,这两种方法都使用 lsoda 作为其底层求解器.这只发生在参数的特定值上,我不知道为什么.我使用的代码如下: 将 numpy 导入为 np从 pylab 导入 *导入 scipy.integrate 作为 spi#参数 ..
发布时间:2021-12-31 12:14:58 Python

在 Python 中优化微分方程中的常量

好的,那么我将如何编写代码来优化微分方程中的常量 a 和 b,例如 dy/dt = a*y^2 + b,使用curve_fit?我将使用 odeint 来求解 ODE,然后使用 curve_fit 来优化 a 和 b.如果您能就这种情况提供意见,我将不胜感激! 解决方案 你绝对可以这样做: 将 numpy 导入为 np从 scipy.integrate 导入 o​​deint从 scip ..
发布时间:2021-12-31 12:13:29 Python

在 scipy.integrate.ode 中使用自适应步长

scipy.integrate.ode 的(简要)文档说两种方法(dopri5 和 dop853)具有步长控制和密集输出.查看示例和代码本身,我只能看到一种从积分器获取输出的非常简单的方法.也就是说,看起来您只是将积分器向前推进某个固定的 dt,获取当时的函数值,然后重复. 我的问题有相当多的时间尺度,所以我想在它需要评估的任何时间步长获取值以达到所需的容差.也就是说,早期情况变化缓慢,因此 ..
发布时间:2021-12-31 12:11:20 Python

多个 scipy.integrate.ode 实例

我想在多线程(每个CPU核心一个)中使用scipy.integrate.ode(或scipy.integrate.odeint)实例来解决一次多个 IVP.但是文档说:“这个集成器不是可重入的.你不能有两个 ode 实例同时使用“vode"集成器." (虽然文档没有说明,但如果多次实例化,odeint 也会导致内部错误.) 知道可以做什么吗? 解决方案 一种选择是使用 mult ..
发布时间:2021-12-31 12:00:31 Python

如何求解具有瞬态参数的常微分方程组

如何求解常微分方程组...初值问题....参数依赖于时间或自变量?说我有的等式 Dy(1)/dt=a(t)*y(1)+b(t)*y(2);Dy(2)/dt=-a(t)*y(3)+b(t)*y(1);Dy(3)/dt=a(t)*y(2); 其中 a(t) 是一个向量,而 b(t) =c*a(t);其中 a 和 b 的值不以单调方式和每个时间步随时间变化.我尝试使用 这篇文章....但是当我应用 ..
发布时间:2021-12-29 19:53:04 其他开发

Matlab ode45.如何在调用时更改其中的参数?

我是 Matlab 的新手.我希望你能帮助我.我必须使用 ODE45 函数解决一个 ODE 系统.这是描述我的股票的函数. function dNdt = rateEquations(t, y)% 相应州的人口吴 = y(1);Ns = y(2);Nt = y(3);% 为了方便阅读,所有使用的常量都被删除了. 注意参数 F. %rate 方程dNs = s0 * Ng * F - Ns/ ..
发布时间:2021-12-08 15:25:00 其他开发

当函数作为离散值给出时求解 ODE -matlab-

我有以下 ODE: x_dot = 3*x.^0.5-2*x.^1.5 % (等式1) 我正在使用 ode45 来解决它.我的解决方案是作为一个dim(k x 1) 向量给出的(通常k = 41,由tspan 给出). 另一方面,我已经制作了一个近似于(1)中的模型的模型,但是为了比较第二个模型的准确度,我想通过ode45.我的问题是这第二个 ode 是离散的: x_dot = f(x ..
发布时间:2021-12-08 15:07:23 其他开发

ODE45 和 Runge-Kutta 方法与解析解相比的绝对误差

如果有人可以帮助解决以下问题,我将不胜感激.我有以下 ODE: dr/dt = 4*exp(0.8*t) - 0.5*r ,r(0)=2, t[0,1] (1) 我以两种不同的方式解决了 (1).通过Runge-Kutta 方法(四阶)和ode45 在Matlab 中.我将这两个结果与解析解进行了比较,解析解为: r(t) = 4/1.3 (exp(0.8*t) - exp(-0.5*t)) ..