Skip to content

Commit 0e34a6a

Browse files
committed
Update with pp changes
1 parent a42b3da commit 0e34a6a

File tree

11 files changed

+72
-73
lines changed

11 files changed

+72
-73
lines changed

BPA/Ch.06/M0.stan

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ data {
66
transformed data {
77
array[M] int<lower=0> s; // Totals in each row
88
int<lower=0> C; // Size of observed data set
9-
9+
1010
C = 0;
1111
for (i in 1 : M) {
1212
s[i] = sum(y[i]);
@@ -23,20 +23,19 @@ model {
2323
// Priors are imlicitly defined;
2424
// omega ~ uniform(0, 1);
2525
// p ~ uniform(0, 1);
26-
26+
2727
// Likelihood
2828
for (i in 1 : M) {
2929
if (s[i] > 0) {
3030
// z[i] == 1
3131
target += bernoulli_lpmf(1 | omega) + binomial_lpmf(s[i] | T, p);
32-
}
33-
// s[i] == 0
34-
else {
35-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
32+
} else // s[i] == 0
33+
{
34+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
35+
// z[i] == 1
3636
+ binomial_lpmf(0 | T, p),
3737
bernoulli_lpmf(0 | omega) // z[i] == 0
3838
);
39-
4039
}
4140
}
4241
}

BPA/Ch.06/Mb.stan

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ data {
66
transformed data {
77
array[M] int<lower=0> s; // Totals in each row
88
int<lower=0> C; // Size of observed data set
9-
9+
1010
C = 0;
1111
for (i in 1 : M) {
1212
s[i] = sum(y[i]);
@@ -24,11 +24,11 @@ parameters {
2424
}
2525
transformed parameters {
2626
array[M] vector<lower=0, upper=1>[T] p_eff;
27-
27+
2828
for (i in 1 : M) {
2929
// First occasion
3030
p_eff[i, 1] = p;
31-
31+
3232
// All subsequent occasions
3333
for (j in 2 : T) {
3434
p_eff[i, j] = (1 - y[i, j - 1]) * p + y[i, j - 1] * c;
@@ -39,16 +39,16 @@ model {
3939
// Priors are implicitly define;
4040
// omega ~ uniform(0, 1);
4141
// p ~ uniform(0, 1);
42-
42+
4343
// Likelihood
4444
for (i in 1 : M) {
4545
if (s[i] > 0) {
4646
// z[i] == 1
4747
target += bernoulli_lpmf(1 | omega) + bernoulli_lpmf(y[i] | p_eff[i]);
48-
}
49-
// s[i] == 0
50-
else {
51-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
48+
} else // s[i] == 0
49+
{
50+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
51+
// z[i] == 1
5252
+ bernoulli_lpmf(y[i] | p_eff[i]),
5353
bernoulli_lpmf(0 | omega) // z[i] == 0
5454
);

BPA/Ch.06/Mh.stan

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ data {
55
}
66
transformed data {
77
int<lower=0> C; // Size of observed data set
8-
8+
99
C = 0;
1010
for (i in 1 : M) {
1111
if (y[i] > 0) {
@@ -32,17 +32,17 @@ model {
3232
// In case a weakly informative is used
3333
// sigma ~ normal(2.5, 1.25);
3434
eps_raw ~ normal(0, 1);
35-
35+
3636
// Likelihood
3737
for (i in 1 : M) {
3838
if (y[i] > 0) {
3939
// z[i] == 1
4040
target += bernoulli_lpmf(1 | omega)
4141
+ binomial_logit_lpmf(y[i] | T, eps[i]);
42-
}
43-
// y[i] == 0
44-
else {
45-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
42+
} else // y[i] == 0
43+
{
44+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
45+
// z[i] == 1
4646
+ binomial_logit_lpmf(0 | T, eps[i]),
4747
bernoulli_lpmf(0 | omega) // z[i] == 0
4848
);
@@ -52,7 +52,7 @@ model {
5252
generated quantities {
5353
array[M] int<lower=0, upper=1> z;
5454
int<lower=C> N;
55-
55+
5656
for (i in 1 : M) {
5757
if (y[i] > 0) {
5858
// animal was detected at least once

BPA/Ch.06/Mt.stan

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ data {
66
transformed data {
77
array[M] int<lower=0> s; // Totals in each row
88
int<lower=0> C; // Size of observed data set
9-
9+
1010
C = 0;
1111
for (i in 1 : M) {
1212
s[i] = sum(y[i]);
@@ -23,16 +23,16 @@ model {
2323
// Priors are implicitly defined.
2424
// omega ~ uniform(0, 1);
2525
// p ~ uniform(0, 1);
26-
26+
2727
// Likelihood
2828
for (i in 1 : M) {
2929
if (s[i] > 0) {
3030
// z[i] == 1
3131
target += bernoulli_lpmf(1 | omega) + bernoulli_lpmf(y[i] | p);
32-
}
33-
// s[i] == 0
34-
else {
35-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
32+
} else // s[i] == 0
33+
{
34+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
35+
// z[i] == 1
3636
+ bernoulli_lpmf(y[i] | p),
3737
bernoulli_lpmf(0 | omega) // z[i] == 0
3838
);

BPA/Ch.06/MtX.stan

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ data {
88
}
99
transformed data {
1010
array[M] int<lower=0> s; // Totals in each row
11-
11+
1212
for (i in 1 : M) {
1313
s[i] = sum(y[i]);
1414
}
@@ -24,7 +24,7 @@ parameters {
2424
transformed parameters {
2525
vector[T] alpha = logit(mean_p);
2626
matrix[M, T] logit_p;
27-
27+
2828
for (i in 1 : C) {
2929
logit_p[i] = alpha' + beta * bsize[i];
3030
}
@@ -39,24 +39,24 @@ model {
3939
beta ~ normal(0, 10);
4040
mu_size ~ normal(0, 10);
4141
// sd_size ~ uniform(0, prior_sd_upper); // Provide upper bound as data
42-
42+
4343
// Likelihood
4444
for (i in 1 : C) {
4545
bsize[i] ~ normal(mu_size, sd_size) T[-6, 6];
4646
}
4747
for (i in (C + 1) : M) {
4848
bsize_mis[i - C] ~ normal(mu_size, sd_size) T[-6, 6];
4949
}
50-
50+
5151
for (i in 1 : M) {
5252
if (s[i] > 0) {
5353
// z[i] == 1
5454
target += bernoulli_lpmf(1 | omega)
5555
+ bernoulli_logit_lpmf(y[i] | logit_p[i]);
56-
}
57-
// s[i] == 0
58-
else {
59-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
56+
} else // s[i] == 0
57+
{
58+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
59+
// z[i] == 1
6060
+ bernoulli_logit_lpmf(y[i] | logit_p[i]),
6161
bernoulli_lpmf(0 | omega) // z[i] == 0
6262
);
@@ -67,7 +67,7 @@ generated quantities {
6767
matrix<lower=0, upper=1>[M, T] p = inv_logit(logit_p);
6868
array[M] int<lower=0, upper=1> z;
6969
int<lower=C> N;
70-
70+
7171
for (i in 1 : M) {
7272
if (s[i] > 0) {
7373
// species was detected at least once

BPA/Ch.06/Mtbh.stan

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ data {
66
transformed data {
77
array[M] int<lower=0> s; // Detection times for each species
88
int<lower=0> C; // Number of observed species
9-
9+
1010
C = 0;
1111
for (i in 1 : M) {
1212
s[i] = sum(y[i]);
@@ -28,10 +28,10 @@ transformed parameters {
2828
vector[M] eps = sigma * eps_raw;
2929
vector[T] alpha = logit(mean_p);
3030
matrix[M, T] logit_p;
31-
31+
3232
// First occasion: no term for recapture (gamma)
3333
logit_p[ : , 1] = alpha[1] + eps;
34-
34+
3535
// All subsequent occasions: includes recapture term (gamma)
3636
for (i in 1 : M) {
3737
for (j in 2 : T) {
@@ -49,17 +49,17 @@ model {
4949
// In case a weakly informative prior is used
5050
// sigma ~ normal(1.5, 0.75);
5151
eps_raw ~ normal(0, 1);
52-
52+
5353
// Likelihood
5454
for (i in 1 : M) {
5555
if (s[i] > 0) {
5656
// z[i] == 1
5757
target += bernoulli_lpmf(1 | omega)
5858
+ bernoulli_logit_lpmf(y[i] | logit_p[i]);
59-
}
60-
// s[i] == 0
61-
else {
62-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
59+
} else // s[i] == 0
60+
{
61+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
62+
// z[i] == 1
6363
+ bernoulli_logit_lpmf(y[i] | logit_p[i]),
6464
bernoulli_lpmf(0 | omega) // z[i] == 0
6565
);
@@ -70,7 +70,7 @@ generated quantities {
7070
matrix<lower=0, upper=1>[M, T] p = inv_logit(logit_p);
7171
array[M] int<lower=0, upper=1> z;
7272
int<lower=C> N;
73-
73+
7474
for (i in 1 : M) {
7575
if (s[i] > 0) {
7676
// animal was detected at least once

BPA/Ch.06/Mth.stan

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ data {
66
transformed data {
77
array[M] int<lower=0, upper=T> s; // Totals in each row
88
int<lower=0, upper=M> C; // Size of observed data set
9-
9+
1010
C = 0;
1111
for (i in 1 : M) {
1212
s[i] = sum(y[i]);
@@ -27,7 +27,7 @@ transformed parameters {
2727
vector[M] eps = sigma * eps_raw; // Random effects
2828
array[T] real mean_lp = logit(mean_p);
2929
matrix[M, T] logit_p;
30-
30+
3131
for (j in 1 : T) {
3232
logit_p[ : , j] = mean_lp[j] + eps;
3333
}
@@ -40,17 +40,17 @@ model {
4040
// In case a weakly informative prior is used
4141
// sigma ~ normal(2.5, 1.25);
4242
eps_raw ~ normal(0, 1);
43-
43+
4444
// Likelihood
4545
for (i in 1 : M) {
4646
if (s[i] > 0) {
4747
// z[i] == 1
4848
target += bernoulli_lpmf(1 | omega)
4949
+ bernoulli_logit_lpmf(y[i] | logit_p[i]);
50-
}
51-
// s[i] == 0
52-
else {
53-
target += log_sum_exp(bernoulli_lpmf(1 | omega) // z[i] == 1
50+
} else // s[i] == 0
51+
{
52+
target += log_sum_exp(bernoulli_lpmf(1 | omega)
53+
// z[i] == 1
5454
+ bernoulli_logit_lpmf(y[i] | logit_p[i]),
5555
bernoulli_lpmf(0 | omega) // z[i] == 0
5656
);
@@ -61,7 +61,7 @@ generated quantities {
6161
matrix<lower=0, upper=1>[M, T] p = inv_logit(logit_p);
6262
array[M] int<lower=0, upper=1> z;
6363
int<lower=C> N;
64-
64+
6565
for (i in 1 : M) {
6666
if (s[i] > 0) {
6767
// animal was detected at least once

BPA/Ch.08/mr_ss.stan

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,8 @@ model {
106106
if (last[i] > first[i]) {
107107
// Recovered
108108
pr = cell_prob(n_occasions, s[i], r[i], first[i], last[i] - 1);
109-
}
110-
// Never Recovered
111-
else {
109+
} else // Never Recovered
110+
{
112111
pr = cell_prob(n_occasions, s[i], r[i], first[i], n_occasions);
113112
}
114113
1 ~ bernoulli(pr);

bugs_examples/vol1/equiv/equiv.stan

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ transformed data {
1212
array[N, P] int T;
1313
for (n in 1 : N) {
1414
for (p in 1 : P) {
15-
T[n, p] = (group[n] * (2 * p - 3) + 3) / 2;
15+
T[n, p] = (group[n] * (2 * p - 3) + 3) %/% 2;
1616
}
1717
}
1818
}

bugs_examples/vol2/pines/pines.stan

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ transformed data {
88
vector[N] y_std;
99
vector[N] x_std;
1010
vector[N] z_std;
11-
11+
1212
y_std = (y - mean(y)) / sd(y);
1313
x_std = (x - mean(x)) / sd(x);
1414
z_std = (z - mean(z)) / sd(z);
@@ -24,11 +24,11 @@ parameters {
2424
transformed parameters {
2525
vector<lower=0>[2] sigma;
2626
vector[2] log_py;
27-
27+
2828
for (i in 1 : 2) {
2929
sigma[i] = 1 / sqrt(tau[i]);
3030
}
31-
31+
3232
log_py[1] = log(lambda) + log(0.9995)
3333
+ normal_lpdf(y_std | alpha + beta * x_std, sigma[1])
3434
+ normal_lpdf(alpha | 0, sqrt(1e6))
@@ -38,7 +38,7 @@ transformed parameters {
3838
+ normal_lpdf(gamma | 0, sqrt(1 / 400.0))
3939
+ normal_lpdf(delta | 1, sqrt(1 / 400.0))
4040
+ gamma_lpdf(tau[2] | 46, 4.5);
41-
41+
4242
log_py[2] = log(lambda) + log1m(0.0005)
4343
+ normal_lpdf(y_std | gamma + delta * z_std, sigma[2])
4444
+ normal_lpdf(gamma | 0, sqrt(1e6))
@@ -59,10 +59,10 @@ generated quantities {
5959
/*
6060
* p(lambda) = 1
6161
*
62-
* p(y|lambda,zeta1,zeta2)
62+
* p(y|lambda,zeta1,zeta2)
6363
* = lambda * p1(y|zeta1) + (1 - lambda) * p2(y|zeta2)
6464
*
65-
* log p(y|lambda,zeta1,zeta2)
65+
* log p(y|lambda,zeta1,zeta2)
6666
* = log_sum_exp(log(lambda) + log(p1(y|zeta1)),
6767
* log1m(lambda) + log(p2(y|zeta2));
6868
*

0 commit comments

Comments
 (0)