Hello, all. I am encountering some difficulties in running my codes.
The following is my Rstan codes
//
data {
int<lower=1> N;
int<lower=1> n;
vector[n] y;
vector[n] t;
vector[n] pi_vector;
int<lower=1> yr[n];
vector[n] m3_vector; // constant, 1.5, length = n
vector[n] m6_vector; // constant, 3.0, length = n
}
parameters {
real mu_m1;
real mu_m2;
real mu_m4;
real mu_m5;
real mu_m7;
real<lower=0> common_sigma;
real<lower=0> tau_1;
real<lower=0> tau_2;
real<lower=0> tau_3;
real<lower=0> tau_4;
real<lower=0> tau_5;
real<lower=0> tau_6;
real<lower=0> tau_7;
}
transformed parameters {
vector[N] m1;
vector[N] m2;
vector[N] m4;
vector[N] m5;
vector[N] m7;
}
model {
for (i in 1:n){
y[i] ~ normal(m1[yr[i]]+m2[yr[i]]cos(2pi_vector[i]*m3_vector[yr[i]]*t[i])+m4[yr[i]]sin(2pi_vector[i]*m3_vector[yr[i]]*t[i])+m5[yr[i]]cos(2pi_vector[i]*m6_vector[yr[i]]*t[yr[i]])+m7[yr[i]]sin(2pi_vector[i]*m6_vector[yr[i]]*t[i]), common_sigma);
}
mu_m1 ~ normal(0.0001, 1);
mu_m2 ~ normal(0.0002, 1);
mu_m4 ~ normal(0.0002, 1);
mu_m5 ~ normal(0.0001, 1);
mu_m7 ~ normal(0.0008, 1);
tau_1 ~ inv_gamma(0.1,0.1);
tau_2 ~ inv_gamma(0.1,0.1);
tau_3 ~ inv_gamma(0.1,0.1);
tau_4 ~ inv_gamma(0.1,0.1);
tau_5 ~ inv_gamma(0.1,0.1);
tau_6 ~ inv_gamma(0.1,0.1);
tau_7 ~ inv_gamma(0.1,0.1);
common_sigma ~ inv_gamma(0.1,0.1);
for (j in 1:N){
m1[j] ~ normal(mu_m1,tau_1);
m2[j] ~ normal(mu_m2,tau_2);
m4[j] ~ normal(mu_m4,tau_4);
m5[j] ~ normal(mu_m5,tau_5);
m7[j] ~ normal(mu_m7,tau_7);
}
}
generated quantities {
real y_rep[n];
for (k in 1:n) {
y_rep[k] = m1[yr[k]]+m2[yr[k]]cos(2pi_vector[k]*m3_vector[yr[k]]*t[k])+m4[yr[k]]sin(2pi_vector[k]*m3_vector[yr[k]]*t[k])+m5[yr[k]]cos(2pi_vector[k]*m6_vector[yr[k]]*t[yr[k]])+m7[yr[k]]sin(2pi_vector[k]*m6_vector[yr[k]]*t[k]);
}
}
//I do not know what is wrong with my codes. I hope someone can provide suggestions. Thank you very much in advance.