I need a multiplication of arrays in Stan.
But the multiplication uses too many for sentences and, probably, it causes the codes need a lot of time.
So, If possible, I want to use vectorization in Stan file. But I am not sure how to vectorize it.
For example, I consider the following codes in which the multiplication of arrays b[1,i,j,k]=a[i,j,k]*x[i,j,k]
are used. I want to vectorize this. My idea is something like b[1,,,]=a*x
.
In the following, I showed an example of Stan code.
data{ real x[222,333,444]; }
parameter{ real a[111,222,333,444]; }
transformed parameter{
real b[111,222,333,444];
for(i in 1:222){
for(j in 1:333){
for(k in 1:444){
b[1,i,j,k]=a[i,j,k]*x[i,j,k];
}}}
// b[1,,,]=a*x; // As far as I am concerned, this vectorization dose not work.
}
question from:
https://stackoverflow.com/questions/65860527/vectorization-in-stan 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…