如何指定索引最高的数组组件?

How to specify the highest indexed array component?

假设 stan 文件中有以下内容。

transformed parameters {

  real <lower=0,upper=1>p[C];

}

其中C为数据块指定的正整数

然后通过p[1]我们可以提取第一个组件。 p[C] 还提取第 C 个组件?或者 p[C] 表示 p[1],p[2],....p[C] ?

的集合

例如,代码 p[C] = 1 是什么意思?

1)只有p的第C个分量是一个

2)p 的所有分量(即 p[1],p[2],....p[C] )是一个。

在你的例子中,

transformed parameters {
  real<lower = 0, upper = 1> p[C]; // multivalued
  p[C] = 1; // scalar
}

p 的前 C-1 个元素未定义,这可能不太好,尽管它是有效的语法。

或者,

transformed parameters {
  real<lower = 0, upper = 1> p[C] = rep_array(1, C);
}

定义p的所有元素为1。