Different behavior of logp_elemwise for different RVs


I am trying to use the logp_elemwiset property of the RVs, in order to get a logp value for
an unobserved random variable, in the form of a tensor, such that each item in it represents a logp value for
each component of the a RV with size > 1

For FreeRVs this method is working out, however for MultivariateRV such as LKJCholeskyCov
the logp_elemwiset returns a single logp value instead of a matrix, which theoretically does make sense,
however the expectation I had was the it would return that value tiled using the shape of RV.

Here I have included a screenshot to the difference in behaviour of the logp_elemwise function between the two.

Is it possible to expect a an array of size 3, in return for the LKJCholeskyCov sample? If not,
then how can I handle this difference. Is it possible to transform the result of logp_elemwiset such as the
result, is always in the shape of the value that can be sampled from the distribution?

I dont think so. It doesnt make sense for multivariant distribution to return elementwise logp for each element.

I dont see a good solution to it, as we currently does not distinguish different shapes of a distribution, there are efforts to fix this (eg see https://github.com/pymc-devs/pymc3/pull/2833) but they are still WIP.