关于DifferentialEquations.jl文档中推导示例表达式含义的疑问
关于DifferentialEquations.jl示例表达式的说明
- 示例里的
t + 2u和t + 3u - du完全是任意构造的演示式,没有特定的数学或实际应用背景 - 文档的核心目的是展示「如何从ODE解中提取
t(时间点)、u(状态值)、du(状态导数)并进行自定义计算」的语法:- 第一个示例用
tuples(sol)批量获取每个时间点对应的u和t,演示了推导式遍历解的便捷写法 - 第二个示例用
zip(sol.t, sol.u, sol.du)手动组合三个数组,展示了直接访问解的字段进行计算的方式
- 第一个示例用
- 实际使用时,你需要替换成自己业务/研究中需要的计算式,比如:
- 计算状态的平方:
[u^2 for (u, t) in tuples(sol)] - 计算能量函数:
[0.5*u^2 + 0.5*du^2 for (t, u, du) in zip(sol.t, sol.u, sol.du)]
- 计算状态的平方:
内容的提问来源于stack exchange,提问作者Bernd
相关产品推荐
相关产品推荐

