# Non-centered parameterisation with boundaries

**URL:** <https://discourse.mc-stan.org/t/non-centered-parameterisation-with-boundaries/2950>\
**Category:** Modeling\
**Created:** [January 11, 2018, 2:42pm UTC](https://discourse.mc-stan.org/t/non-centered-parameterisation-with-boundaries/2950 "2018-01-11T14:42:58Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![Bob\_Carpenter](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.mc-stan.org/bob_carpenter/32/9230_2.png) [@Bob\_Carpenter](https://discourse.mc-stan.org/u/Bob_Carpenter)\
**Post date:** [January 18, 2018, 4:29am UTC](https://discourse.mc-stan.org/t/non-centered-parameterisation-with-boundaries/2950/5 "2018-01-18T04:29:36Z")

</div>

> [@Jacquie](#):
>
> real\<lower=0\> p\_sub\_raw[nsub]; // ?? what boundaries to choose here??

Just look at the implied boundaries. We require `p_sub > 0`, and have

```no-highlight
p_sub = p_group_mu + p_group_sd * p_sub_raw;

```

so that implies

```no-highlight
p_group_mu + p_group_sd * p_sub_raw > 0

```

or

```no-highlight
p_sub_raw > -p_group_mu / p_group_sd

```

So the answer is that if you have `<lower = -p_group_mu / p_group_sd>`, then it will guarantee that `p_sub > 0`.

But you may want to model this another way.

---

_[View the full topic](https://discourse.mc-stan.org/t/non-centered-parameterisation-with-boundaries/2950)._
