首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >特定点的DifferentialEquations.jl输出

特定点的DifferentialEquations.jl输出
EN

Stack Overflow用户
提问于 2019-03-13 02:52:19
回答 1查看 298关注 0票数 1

我试着用朱莉娅的DifferentialEquations.jl。我设法让它正常工作,但我想知道如何在特定的时间点生成输出。文档对此并不清楚,而且我还没有找到一个这样做的例子。我目前使用的代码来自本教程:

代码语言:javascript
复制
using DifferentialEquations
using Plots

function lorenz(du,u,p,t)
 du[1] = 10.0*(u[2]-u[1])
 du[2] = u[1]*(28.0-u[3]) - u[2]
 du[3] = u[1]*u[2] - (8/3)*u[3]
end

u0 = [1.0;0.0;0.0]
tspan = (0.0,100.0)
prob = ODEProblem(lorenz,u0,tspan)
sol = solve(prob)

plot(sol,vars=(1,2,3))

目前它产生了1287分,我不知道它是如何决定的。我的问题是,如果我想要在跨度0到100之间产生20分怎么办?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-13 12:02:25

关于“控制解决方案”的ODE教程部分演示了为此目的使用saveat。示威活动是:

代码语言:javascript
复制
sol = solve(prob,reltol=1e-6,saveat=0.1)

这将节省0.0,0.1,.在你的例子中。在下面,人们注意到:

更普遍地说,稀释剂可以是任何时间点的集合来保存。

例如,我们可以使用save来保存t=30、60和78,如下所示:

代码语言:javascript
复制
sol = solve(prob,saveat=[30.0,60.0,78.0])

这些例子应该会让你走上正确的方向。有关更多细节,请参见文档的输出控件部分

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55133630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档