It's not clear to me why it doesn't work without the if statement around the z dimension. What data would it be getting in that case?
Either way, I think adding the if statement is good, because the calculation does not need to be done. Perhaps for generality, it's worth putting the y dimension calculation in an if statement as well so that this also works in 1D.
I looked over the ValidateSpatial briefly, but I'm not sure I
understand it. However,
seems pretty reasonable to me.
> I could see us using a fix that does something like:
> if len(data.pf.dimensions) > 2:
> ds = div_fac * data['dz'].flat
> f += data["z-velocity"][1:-1,1:-1,sl_right]/ds
> f -= data["z-velocity"][1:-1,1:-1,sl_left ]/ds
Yt-dev mailing list