@@ -183,7 +183,7 @@ data {
183
183
array[N] real x;
184
184
}
185
185
transformed data {
186
- matrix[N, N] K = cov_exp_quad (x, 1.0, 1.0);
186
+ matrix[N, N] K = gp_exp_quad_cov (x, 1.0, 1.0);
187
187
vector[N] mu = rep_vector(0, N);
188
188
for (n in 1:N) {
189
189
K[n, n] = K[n, n] + 0.1;
@@ -345,7 +345,7 @@ parameters {
345
345
}
346
346
model {
347
347
matrix[N, N] L_K;
348
- matrix[N, N] K = cov_exp_quad (x, alpha, rho);
348
+ matrix[N, N] K = gp_exp_quad_cov (x, alpha, rho);
349
349
real sq_sigma = square(sigma);
350
350
351
351
// diagonal elements
@@ -414,7 +414,7 @@ model {
414
414
vector[N] f;
415
415
{
416
416
matrix[N, N] L_K;
417
- matrix[N, N] K = cov_exp_quad (x, alpha, rho);
417
+ matrix[N, N] K = gp_exp_quad_cov (x, alpha, rho);
418
418
419
419
// diagonal elements
420
420
for (n in 1:N) {
@@ -550,12 +550,12 @@ modeled hierarchically.
550
550
The implementation of automatic relevance determination in Stan is
551
551
straightforward, though it currently requires the user to directly code the
552
552
covariance matrix. We'll write a function to generate the Cholesky of the
553
- covariance matrix called ` L_cov_exp_quad_ARD ` .
553
+ covariance matrix called ` L_gp_exp_quad_cov_ARD ` .
554
554
555
555
556
556
``` stan
557
557
functions {
558
- matrix L_cov_exp_quad_ARD (array[] vector x,
558
+ matrix L_gp_exp_quad_cov_ARD (array[] vector x,
559
559
real alpha,
560
560
vector rho,
561
561
real delta) {
@@ -592,7 +592,7 @@ parameters {
592
592
model {
593
593
vector[N] f;
594
594
{
595
- matrix[N, N] L_K = L_cov_exp_quad_ARD (x, alpha, rho, delta);
595
+ matrix[N, N] L_K = L_gp_exp_quad_cov_ARD (x, alpha, rho, delta);
596
596
f = L_K * eta;
597
597
}
598
598
@@ -772,7 +772,7 @@ transformed parameters {
772
772
vector[N] f;
773
773
{
774
774
matrix[N, N] L_K;
775
- matrix[N, N] K = cov_exp_quad (x, alpha, rho);
775
+ matrix[N, N] K = gp_exp_quad_cov (x, alpha, rho);
776
776
777
777
// diagonal elements
778
778
for (n in 1:N) {
@@ -858,7 +858,7 @@ transformed parameters {
858
858
vector[N] f;
859
859
{
860
860
matrix[N, N] L_K;
861
- matrix[N, N] K = cov_exp_quad (x, alpha, rho);
861
+ matrix[N, N] K = gp_exp_quad_cov (x, alpha, rho);
862
862
863
863
// diagonal elements
864
864
for (n in 1:N) {
@@ -944,17 +944,17 @@ functions {
944
944
matrix[N2, N2] cov_f2;
945
945
matrix[N2, N2] diag_delta;
946
946
matrix[N1, N1] K;
947
- K = cov_exp_quad (x1, alpha, rho);
947
+ K = gp_exp_quad_cov (x1, alpha, rho);
948
948
for (n in 1:N1) {
949
949
K[n, n] = K[n, n] + square(sigma);
950
950
}
951
951
L_K = cholesky_decompose(K);
952
952
K_div_y1 = mdivide_left_tri_low(L_K, y1);
953
953
K_div_y1 = mdivide_right_tri_low(K_div_y1', L_K)';
954
- k_x1_x2 = cov_exp_quad (x1, x2, alpha, rho);
954
+ k_x1_x2 = gp_exp_quad_cov (x1, x2, alpha, rho);
955
955
f2_mu = (k_x1_x2' * K_div_y1);
956
956
v_pred = mdivide_left_tri_low(L_K, k_x1_x2);
957
- cov_f2 = cov_exp_quad (x2, alpha, rho) - v_pred' * v_pred;
957
+ cov_f2 = gp_exp_quad_cov (x2, alpha, rho) - v_pred' * v_pred;
958
958
diag_delta = diag_matrix(rep_vector(delta, N2));
959
959
960
960
f2 = multi_normal_rng(f2_mu, cov_f2 + diag_delta);
@@ -981,7 +981,7 @@ parameters {
981
981
model {
982
982
matrix[N1, N1] L_K;
983
983
{
984
- matrix[N1, N1] K = cov_exp_quad (x1, alpha, rho);
984
+ matrix[N1, N1] K = gp_exp_quad_cov (x1, alpha, rho);
985
985
real sq_sigma = square(sigma);
986
986
987
987
// diagonal elements
@@ -1095,7 +1095,7 @@ parameters {
1095
1095
model {
1096
1096
matrix[N, D] f;
1097
1097
{
1098
- matrix[N, N] K = cov_exp_quad (x, 1.0, rho);
1098
+ matrix[N, N] K = gp_exp_quad_cov (x, 1.0, rho);
1099
1099
matrix[N, N] L_K;
1100
1100
1101
1101
// diagonal elements
0 commit comments