def _log_unnorm_prob(self, x, name=None):
with tf.name_scope(name or '<STR_LIT>'):<EOL><INDENT>x = tf.convert_to_tensor(value=x, name='<STR_LIT:x>')<EOL>if self.input_output_cholesky:<EOL><INDENT>logdet = <NUM_LIT> * tf.reduce_sum(<EOL>input_tensor=tf.math.log(tf.linalg.diag_part(x)), axis=[-<NUM_LIT:1>])<EOL><DEDENT>else:<EOL><INDENT>_, logdet = tf.linalg.slogdet(x)<EOL><DEDENT>answer = (self.concentration - <NUM_LIT:1.>) * logdet<EOL>return answer<EOL><DEDENT>
Returns the unnormalized log density of an LKJ distribution.

        Args:
          x: `float` or `double` `Tensor` of correlation matrices.  The shape of `x`
            must be `B + [D, D]`, where `B` broadcasts with the shape of
            `concentration`.
          name: Python `str` name prefixed to Ops created by this function.

        Returns:
          log_p: A Tensor of the unnormalized log density of each matrix element of
            `x`, with respect to an LKJ distribution with parameter the
            corresponding element of `concentration`.