我正在尝试使用Julia的DifferentialEquations.jl。我设法使其工作,但我想知道如何在特定时间点生成输出。该文档尚不清楚,我还没有找到一个可以做到这一点的例子。我当前使用的代码来自该教程:
function checkEmailExists() {
const email = $F('email');
if(email!=''){
const url = '/global/validate/?action=check-email-exists&e=' + email;
let result;
fetch(url)
.then(async function(data){
result = await data.text();
if(result == 'OK'){
setMessage('message', defaultMessage, 'classInfo');
$('email').addClassName('ok-field');
}
if(result == 'EXISTS'){
setMessage('message', 'Email address is already registered., 'classBad');
$('email').addClassName('bad-field');
}
if(result == 'INVALID'){
setMessage('message', 'Email address is invalid.', 'classBad');
$('email').addClassName('bad-field');
}
})
.catch(function(error) {
console.log(error);
});
}
}
目前它产生1287分,我不知道它是如何决定的。我的问题是,如果我想在范围0到100之间生成20个点怎么办?
答案 0 :(得分:2)
The ODE tutorial section on "Controlling the Solvers"演示了为此目的使用saveat
的情况。演示是:
sol = solve(prob,reltol=1e-6,saveat=0.1)
在您的示例中将保存为0.0、0.1...。在其正下方指出:
通常,saveat可以是要保存的任何时间点集合。
因此,例如,我们可以使用save at来仅在t = 30、60和78处进行保存,如下所示:
sol = solve(prob,saveat=[30.0,60.0,78.0])
这些示例应该为您指明正确的方向。有关更多详细信息,请参见the Output Controls section of the documentation。