parameters: (self, diag_chol_c)
return_statement: return log_det_updated_sqrt
docstring: Finish computation of Sqrt[Log[Det]].
docstring_summary: Finish computation of Sqrt[Log[Det]].
docstring_tokens: Finish computation of Sqrt [ Log [ Det ]] .
function: def _sqrt_log_det_core(self, diag_chol_c):
      """Finish computation of Sqrt[Log[Det]]."""
      # Complete computation of ._log_det and ._batch_log_det, after the initial
      # Cholesky factor has been taken with the appropriate batch/non-batch method
  
      # det(M + VDV^T) = det(D^{-1} + V^T M^{-1} V) * det(D) * det(M)
      #                = det(C) * det(D) * det(M)
      # Multiply by 2 here because this is the log-det of the Cholesky factor of C
      log_det_c = 2 * math_ops.reduce_sum(
          math_ops.log(math_ops.abs(diag_chol_c)),
          reduction_indices=[-1])
      # Add together to get Log[det(M + VDV^T)], the Log-det of the updated square
      # root.
      log_det_updated_sqrt = (
          log_det_c + self._diag_operator.log_det() + self._operator.log_det())
      return log_det_updated_sqrt
function_tokens: def _sqrt_log_det_core ( self , diag_chol_c ) : # Complete computation of ._log_det and ._batch_log_det, after the initial # Cholesky factor has been taken with the appropriate batch/non-batch method # det(M + VDV^T) = det(D^{-1} + V^T M^{-1} V) * det(D) * det(M) #                = det(C) * det(D) * det(M) # Multiply by 2 here because this is the log-det of the Cholesky factor of C log_det_c = 2 * math_ops . reduce_sum ( math_ops . log ( math_ops . abs ( diag_chol_c ) ) , reduction_indices = [ - 1 ] ) # Add together to get Log[det(M + VDV^T)], the Log-det of the updated square # root. log_det_updated_sqrt = ( log_det_c + self . _diag_operator . log_det ( ) + self . _operator . log_det ( ) ) return log_det_updated_sqrt