最近stan添加了integrate_ode
方法。不幸的是,我能找到的唯一文件是stan reference manual(p.191ff)。我有一个需要一些驱动信号的模型。据我所知,参数x_r
和x_i
应该用于此。
为了一个具体的例子,我假设我想从文档中实现以下更改的示例:
real[] sho(real t,
real[] y,
real[] theta,
real[] x_r,
int[] x_i) {
real dydt[2];
real input_signal; // Change from here!!!
input_signal <- how_to(t, x_r, x_i);
dydt[1] <- y[2] + input_signal; // Change to here!!!
dydt[2] <- -y[1] - theta[1] * y[2];
return dydt;
}
输入信号应该是输入的时间序列 - 让我说我提交input_signal_vector <- sin(t) + rnorm(T, sd=0.1)
(它应该是ts
中时间点的信号)我打算在input_signal
中使用最接近的值。
我能想象的唯一方法是在x_r中连接ts
和input_signal_vector
,然后在此数组中搜索。但我无法想象这是意图使用这些参数。这也是非常低效的。
因此,如果有人能够证明这样的案件应该如何解决,我将非常感激。