code: def _log_wishart_norm(
      degrees_of_freedom, log_det_precisions_chol, n_features
  ):
      """Compute the log of the Wishart distribution normalization term.
  
      Parameters
      ----------
      degrees_of_freedom : array-like of shape (n_components,)
          The number of degrees of freedom on the covariance Wishart
          distributions.
  
      log_det_precision_chol : array-like of shape (n_components,)
           The determinant of the precision matrix for each component.
  
      n_features : int
          The number of features.
  
      Return
      ------
      log_wishart_norm : array-like of shape (n_components,)
          The log normalization of the Wishart distribution.
      """
      # To simplify the computation we have removed the np.log(np.pi) term
      return -(
          degrees_of_freedom * log_det_precisions_chol
          + degrees_of_freedom * n_features * 0.5 * math.log(2.0)
          + np.sum(
              gammaln(
                  0.5
                  * (
                      degrees_of_freedom
                      - np.arange(n_features)[:, np.newaxis]
                  )
              ),
              0,
          )
      )
  
imports: import math
  from numbers import Real
  import numpy
  from scipy.special import betaln, digamma, gammaln
  from ..utils import check_array
  from ..utils._param_validation import Interval, StrOptions
  from ._base import BaseMixture, _check_shape
  from ._gaussian_mixture import _check_precision_matrix, _check_precision_positivity, _compute_log_det_cholesky, _compute_precision_cholesky, _estimate_gaussian_parameters, _estimate_log_gaussian_prob
label_desc: Use image node_id 2 for calling a global function with example usage: _log_wishart_norm(degrees_of_freedom, log_det_precisions_chol, n_features) and returns: unknown