问题标签 [ode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 如何求解具有时间相关参数的常微分方程组
如何解决常微分方程系统..初始值问题....参数取决于时间或自变量?说出我的方程式
其中a(t)是一个向量,b(t) =c*a(t);其中 a 和 b 的值随时间变化,而不是以单调方式和每个时间步长变化。我试图用这篇文章解决这个问题......但是当我应用相同的原理时......我收到了错误消息
“使用 griddedInterpolant 出错点坐标未按严格单调顺序排序。”
有人可以帮我吗?
python - python中具有无限初始条件的ODE
我有一个二阶微分方程,我想在 python 中求解它。问题是对于其中一个变量,我没有初始条件,0
而只有无穷大的值。谁能告诉我应该提供哪些参数scipy.integrate.odeint
?能解决吗?
方程:
需要根据时间找到 Theta。它的一阶导数在 处等于 0 t=0
。theta 是未知的,t=0
但它会在足够长的时间变为零。其余的都是已知的。作为一个近似值I
可以设置为零,从而消除二阶导数,这应该会使问题更容易。
matlab - ode45 时间步短不工作
我正在使用 ode45,但我不知道在这种情况下该怎么做。我有一个微分方程,其中我的参数随时间变化非常快。理想情况下,我想选择 tspan 为 0:epsilon:10*epsilon ,其中考虑到我的 DE 因素中的任何内容,epsilon 的顺序很小。但是,这不起作用,MATLAB 只是给了我一个情节,其中我的初始条件没有任何变化。
我做了明显的事情来修复它,如下所示。假设我有 xdot(t)=10^9*x(t)。我将其重写为 xdot(t)=x(t) 并将我的时间轴标记为纳秒而不是秒。
只是好奇MATLAB是否可以自己做到这一点。
performance - 每次迭代中涉及 ODE 求解器的 Matlab 代码向量化
我想编写一个快速的 MATLAB 代码,我需要编写一个 for 循环,并且每次都需要求解一个常微分方程。有没有办法对代码进行矢量化?以下是部分代码:
在哪里
matlab - 如何在 Matlab 中求解常微分方程(ODE)系统
我必须求解以下形式的常微分方程组:
其中x和y是我需要找出的变量,s是自变量;其余的都是常数。到目前为止,我试图用 ode45 解决这个问题,但没有成功:
其中@yprime 具有方程组。我收到以下错误消息:
YPRIME 返回一个长度为 0 的向量,但初始条件向量的长度为 2。YPRIME 返回的向量和初始条件向量必须具有相同数量的元素。
有任何想法吗?谢谢
python - 使用完整矩阵模拟 scipy 中的 ode(对象对于所需数组而言太深)
我在 am*m 矩阵 S 中有一个 diff eqs 系统。 S[i,j] 是一个特定的物种浓度,受 S[i-1,j] 和 S[i,j-1] 的影响
我可以在每个步骤中获取每个条目的 dx/dt(由 update_matrix 返回),但随后我需要将其整合以更新我的初始浓度(x 与 x_counts 相同)。但是 scipy 的Integrate.odeint 不接受矩阵作为输入(或返回值并引发对象太深错误。
有什么办法可以调整它以使用矩阵上的积分器?我提供了一段代码:diffeq 为每个条目返回 dx/dt。update_matrix 返回矩阵 B,其中 B[ij]=dx[i,j]/dt
matlab - 通过 Crank-Nicolson 实现 Fitzhugh-Nagumo 模型
对于一个问题,我需要通过 Crank-Nicolson 方案实现具有空间扩散的 Fitzhugh-Nagumo 模型。现在问题在于空间扩散。
而 DV_{xx} 是空间扩散。
使用Matlab,可以给即ODE45求解器以下函数。但是它还没有实现空间扩散......
问题:如何实现 V_{xx} ?
此外,V 需要是什么矩阵形状?通常 V 仅取决于 t,因此是一个 [1 by t] 向量。现在 V 取决于 x 和 t,因此我希望它是一个 [x by y] 向量,对吗?
谢谢
matlab - 在 Matlab 中求解 ODE 时是否可以使用匿名函数作为事件函数
是否可以在 Matlab 中使用匿名函数作为事件函数。我想做的基本上是
但是,这会返回一个错误,抱怨要处理的输出数量必须完全匹配。还有其他方法可以使匿名函数返回多个参数吗?
matlab - 在 Matlab odeset() 中使用 NonNegative 设置
我正在尝试在 MatLab 中解决一些 ODE,并看到方程中的变量是需要限制为正的总体。所以我在调用方程求解器之前尝试使用 odeset() 使它们成为非负数,但在绘制这些值之后它们有时实际上是负数(在下面的代码中它是洋红色线)。我究竟做错了什么?
这是一些代码:
方程(...)的代码是: