aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKen Kellner <ken@kenkellner.com>2023-05-16 18:46:53 -0400
committerKen Kellner <ken@kenkellner.com>2023-05-16 18:46:53 -0400
commit36a3cc230e32b6204e463f176b58d63efcf03a5b (patch)
treefca99fd129115b78af5d208d76afe7701260dbbf
parentd9ad3d4f748811b1a2a27aacce89a97bac1dd736 (diff)
Fix indexing problem with priors when the model is intercept-only
-rw-r--r--DESCRIPTION4
-rw-r--r--inst/stan/include/functions_priors.stan16
2 files changed, 12 insertions, 8 deletions
diff --git a/DESCRIPTION b/DESCRIPTION
index 61f103c..1671e72 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,6 +1,6 @@
Package: ubms
-Version: 1.2.2
-Date: 2022-11-10
+Version: 1.2.3
+Date: 2023-05-16
Title: Bayesian Models for Data from Unmarked Animals using 'Stan'
Authors@R: person("Ken", "Kellner", email="contact@kenkellner.com",
role=c("cre","aut"))
diff --git a/inst/stan/include/functions_priors.stan b/inst/stan/include/functions_priors.stan
index c0ef956..c910b49 100644
--- a/inst/stan/include/functions_priors.stan
+++ b/inst/stan/include/functions_priors.stan
@@ -26,13 +26,17 @@ real lp_priors(vector beta, int[] dist, matrix pars){
if(nb == 0) return out;
idx = dist[1] == 0 ? 1 : 2;
- // intercept
- out += lp_single_prior(beta[1:1], dist[1], pars[1,1:1],
- pars[2,1:1], pars[3,1:1]);
+ // intercept prior, if intercept exists
+ if(dist[1] != 0){
+ out += lp_single_prior(beta[1:1], dist[1], pars[1,1:1],
+ pars[2,1:1], pars[3,1:1]);
+ }
- // regression coefficients
- out += lp_single_prior(beta[idx:nb], dist[2], pars[1,idx:nb],
- pars[2,idx:nb], pars[3,idx:nb]);
+ // regression coefficients priors, if there are any
+ if(dist[2] != 0){
+ out += lp_single_prior(beta[idx:nb], dist[2], pars[1,idx:nb],
+ pars[2,idx:nb], pars[3,idx:nb]);
+ }
return out;
}