33 array[] real intercept, vector beta,
int nobs,
int neffs,
35 tuple(vector, array[]
int, array[]
int) sparse,
36 vector beta_sd, matrix rdesign,
37 int add_intercept,
int sparse_design,
38 int arima_present,
int arima_T,
int arima_G,
39 int arima_p,
int arima_d,
int arima_q,
int arima_n_obs,
40 matrix arima_z, vector arima_pacf, vector arima_theta,
41 array[] real arima_sigma,
42 array[]
int arima_flat_idx,
43 int gp_present,
int gp_T,
int gp_G,
int gp_M, real gp_L,
44 int gp_type, real gp_nu,
int gp_d, matrix gp_PHI, matrix gp_eta,
45 array[] real gp_rho, array[] real gp_alpha,
46 array[]
int gp_flat_idx
52 if (!arima_present && !gp_present) {
54 intercept, beta, nobs, neffs, fdesign, sparse, beta_sd, rdesign,
55 add_intercept, sparse_design
59 intercept, beta, nobs, neffs, fdesign, sparse, beta_sd, rdesign,
60 add_intercept, sparse_design
65 base, arima_n_obs, arima_present, arima_T, arima_G,
66 arima_p, arima_d, arima_q,
67 arima_z, arima_pacf, arima_theta, arima_sigma,
71 base, gp_present, gp_T, gp_G, gp_M, gp_L, gp_type, gp_nu, gp_d,
72 gp_PHI, gp_eta, gp_rho, gp_alpha, gp_flat_idx
77 vector beta, vector beta_sd, array[,] real beta_sd_p,
78 int fixed,
int random,
79 int arima_present,
int arima_p,
int arima_q,
80 matrix arima_z, vector arima_pacf, vector arima_theta,
81 array[] real arima_sigma, array[,] real arima_sigma_p,
82 array[,] real arima_pacf_p
86 to_vector(arima_z) ~ std_normal();
91 if (arima_p > 0 && arima_pacf_p[2, 1] > 0) {
92 arima_pacf ~ normal(arima_pacf_p[1, 1], arima_pacf_p[2, 1]);
95 arima_theta ~ std_normal();
97 arima_sigma[1] ~ normal(
98 arima_sigma_p[1, 1], arima_sigma_p[2, 1]
112 int gp_present, matrix gp_eta,
113 array[] real gp_rho, array[] real gp_alpha,
114 array[,] real gp_rho_p, array[,] real gp_alpha_p
117 to_vector(gp_eta) ~ std_normal();
118 gp_rho[1] ~ lognormal(gp_rho_p[1, 1], gp_rho_p[2, 1]);
119 gp_alpha[1] ~ normal(gp_alpha_p[1, 1], gp_alpha_p[2, 1]) T[0, ];
vector apply_arima_residual(vector base, int n_obs, int present, int T, int G, int p, int d, int q, matrix z, vector pacf, vector theta, array[] real sigma, array[] int flat_idx)
vector combine_effects(array[] real intercept, vector beta, int nobs, int neffs, matrix fdesign, tuple(vector, array[] int, array[] int) sparse, vector beta_sd, matrix rdesign, int add_intercept, int sparse_design)
void effect_priors_lp(vector beta, vector beta_sd, array[,] real beta_sd_p, int fixed, int random)
vector apply_gp_term(vector base, int present, int T, int G, int M, real L, int type, real nu, int d, matrix PHI, matrix eta, array[] real rho, array[] real alpha, array[] int flat_idx)
void gp_priors_lp(int gp_present, matrix gp_eta, array[] real gp_rho, array[] real gp_alpha, array[,] real gp_rho_p, array[,] real gp_alpha_p)
vector regression_predictor(array[] real intercept, vector beta, int nobs, int neffs, matrix fdesign, tuple(vector, array[] int, array[] int) sparse, vector beta_sd, matrix rdesign, int add_intercept, int sparse_design, int arima_present, int arima_T, int arima_G, int arima_p, int arima_d, int arima_q, int arima_n_obs, matrix arima_z, vector arima_pacf, vector arima_theta, array[] real arima_sigma, array[] int arima_flat_idx, int gp_present, int gp_T, int gp_G, int gp_M, real gp_L, int gp_type, real gp_nu, int gp_d, matrix gp_PHI, matrix gp_eta, array[] real gp_rho, array[] real gp_alpha, array[] int gp_flat_idx)
void regression_priors_lp(vector beta, vector beta_sd, array[,] real beta_sd_p, int fixed, int random, int arima_present, int arima_p, int arima_q, matrix arima_z, vector arima_pacf, vector arima_theta, array[] real arima_sigma, array[,] real arima_sigma_p, array[,] real arima_pacf_p)