问题标签 [differentialequations.jl]
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.
julia - DifferentialEquations.jl 无法使用 Julia 1.5?
这是来自DifferentialEquations.jl文档的示例代码,每当我尝试运行它时,我都会得到UndefVarError: plot! 没有定义的
仅执行更简单的版本时会出现类似的错误
UndefVarError: ODEProblem 未定义
我运行了 status,这些是我在 Windows 10 上运行 Julia 1.5.1(今天首次安装)的当前版本:
julia - 状态间二元混合动力学的 Julia 微分方程
我对 Julia 很陌生,我正在考虑以下问题。我想解决(可能是刚性的)ODE 系统,它根据状态到状态的方法描述冲击波后面的流动松弛,这意味着分子物种的每个振动水平都被认为是伪物种及其连续性方程。在这里,我考虑了 N2/N 的二元混合物(实际上是 N=0 的浓度)。
我已将 julia 代码拆分为几个 .jl 文件。总的来说,我将 ODE 求解器称为如下:
其中 Y0_bar 和 xspan 已在前面定义,在 rpart.jl 文件中我定义了系统:
问题是,当我运行模拟并绘制解决方案时,它看起来好像什么也没发生,并且所有配置文件都相等且平坦。事实上,每个时间步的解都等于它自己。所以,我认为我在更新 u 和 du 时犯了一些错误,但我无法修复它。在 Matlab 版本中,我获得了正确的演变。
亲切的问候,洛伦佐
julia - 为什么 Julia (DifferentialEquations.jl) JumpProblem 在以后停止跳跃?
我正在尝试使用来自 DifferentialEquations.jl 的工具来实现离散随机模拟。它在早期的时间点上效果很好,但后来却莫名其妙地没有任何跳跃。
我尝试保存所有位置,而不是仅保存每个整数。我尝试使用 Direct 而不是 DirectFW。我尝试使用默认而不是 SSAStepper。我检查了 ODESolution 对象,它确实只是在稍后的每个时间步重复相同的值;这不仅仅是情节。
非常感谢任何建议!
julia - 减少DifferentialEquations.jl 中的内存分配
我正在使用 DifferentialEquations.jl 来求解 ODE 系统,如下所示。结果并不真正相关,因为p
仅包含用于生成 MWE 的测试参数,但关键是尽管使用了就地 ODE 函数,但我看到了很多内存分配。
由于我需要反复解决这个 ODE 系统,我想尽可能地减少分配,并且想知道是否可以对它们做任何事情。我一直想知道问题是否出在X
并且Y
已经尝试在 ODE 函数之外预分配这些,但不幸的是没有成功地以这种方式减少分配。
callback - 是否可以使用回调来访问 Julia 的微分方程集合问题中的单个轨迹?
我是 Julia 的新手,并尝试使用 Julia 包 DifferentialEquations 同时求解同一组耦合 ODE 的多个条件。我的系统是一个实验模型,在其中一种情况下,我在过程的中途增加了一个因变量的数量。
我希望能够调整这个单一轨迹的条件,但是到目前为止我只能一次调整所有轨迹。是否可以使用回调访问单个?如果没有,有没有更好的方法来做到这一点?
这是一个使用洛伦兹方程的简化示例,用于我想做的事情:
我想制作这样的东西:
但是这段代码会产生:
谢谢您的帮助!
julia - 使用Julia中的DifferentialEquations包的具有离散强制函数的非齐次ODE
在Julia中,我想使用DifferentialEquations.jl包来解决
\ddot{u} + f(u,\dot{u},p) = g(t)
其中 g(t) 是在时间 t 的等距离瞬间给出的值向量。
这种情况与https://diffeq.sciml.ai/stable/tutorials/ode_example/中的情况不同, 其中强制函数 M(t) 是连续的。
这种情况的解决方案是按照
但是,我不想插入强制函数 g(t),而是想尝试回调命令。
对于受到地面运动的二阶线性单自由度系统,我已经尝试过
但得到的结果并不令人满意。
有没有其他方法,不是插值g(t),而是使用回调,即PeriodicCallback、DiscreteCallback?
julia - Julia:什么时候在微分方程系统中输入真或假?
我从DiffEqFinancial.jl的源代码中汲取灵感来正确设置我自己的系统。我不明白下面代码片段的目的true
和内容:false
那么在这种情况下做什么{true}
和做什么呢?{false}
我想知道我是否也应该在我自己的用户代码中使用它。我隐约意识到“严格类型类型,松散类型功能”的格言,所以我想知道为什么要在这里打字。
julia - .= Julia 中的运算符
在代码中取自:https ://tutorials.sciml.ai/html/models/01-classical_physics.html ,如下所示:
我不明白 .= 运算符在函数谐波振荡器中的用法。使用 = 给了我错误的答案。所以,我想知道与 有什么.=
不同=
?它不是矢量化ddu
的,因为 RHS 都是标量。