class_docstr: Representation of a positive semidefinite matrix in factored form.
  
  The representation is constructed based on a vector `diag` and
  rectangular matrix `root`, such that the PSD matrix represented by
  the class instance is Diag + root * root', where Diag is the
  square diagonal matrix with `diag` on its main diagonal.
  
  Parameters
  ----------
  diag : 1d array_like
      See above
  root : 2d array_like
      See above
  
  Notes
  -----
  The matrix is represented internally in the form Diag^{1/2}(I +
  factor * scales * factor')Diag^{1/2}, where `Diag` and `scales`
  are diagonal matrices, and `factor` is an orthogonal matrix.
docstr: Returns the logarithm of the determinant of a
  factor-structured matrix.
docstr_tok: ["Returns","the","logarithm","of","the","determinant","of","a","factor-structured","matrix","."]
code: def logdet(self):
      """
      Returns the logarithm of the determinant of a
      factor-structured matrix.
      """
  
      logdet = np.sum(np.log(self.diag))
      logdet += np.sum(np.log(self.scales))
      logdet += np.sum(np.log(1 + 1 / self.scales))
  
      return logdet
  
imports: import numpy
  import scipy.sparse
  from scipy.sparse.linalg import svds
  from scipy.optimize import fminbound
  import warnings
  from statsmodels.tools.tools import Bunch
  from statsmodels.tools.sm_exceptions import IterationLimitWarning, iteration_limit_doc
label_desc: Use image node_id 5 for calling the FactoredPSDMatrix obj's underlying member method code with example usage: obj.logdet() and returns: logdet