I am feeding in a data vector b for sigma for the prior of a. Will the statement below actually do what I want it to?
vector a ~ normal(0, vector b);
Stan tells me a has no prior, but maybe that’s a bug. I want the i-th element in a to have the i-th sigma in b.
I think you should use reals as the data type, (i.e., real for 1d parameters and real[] for n-dimensional parameters.
Off the top of my head, I’m not sure if that syntax works or not (I imagine that it would). If not, you can define a n-dimensional array of 0s e.g.,
transformed data {
real zeros[N] = to_array_1d( rep_vector(0, N) );
}
And then in the model block have something like a ~ normal(zeros, b);