However, when running this sometimes I see something that I had never seen before, for example, if I look at a graph of blockSD vs blockDeviation (please ignore the “_a’s” after the name), and mark the divergences in red I see the following:
It really helps if you give us Stan code and not just a fragment of math. I’m assuming your block of math translates into Stan this way, with simplified names:
This can be problematic for sampling because it uses a centered parameterization. You almost always want to code this as follows instead using a non-centered parameterization (we discuss this in the user’s guide chapter on regression and hierarchical models):
Impossible to say without seeing the rest of your Stan program. I’d suggest running lots of chains and seeing if others get stuck.
If the problem persists and you know the values are lower, then you probably want to shrink them rather than impose a hard boundary. If you do impose a hard boundary and probability mass piles up near the boundaries, you’ll know the data isn’t consistent with the constraint.