class_docstr: Class to contain results from likelihood models.
  
  This is the class in which things like AIC, BIC, llf
  can be implemented as methods, not computed in, say,
  the fit method of OLSModel.
class_docstr_tok: ["Class","to","contain","results","from","likelihood","models",".","This","is","the","class","in","which","things","like","AIC",",","BIC",",","llf","can","be","implemented","as","methods",",","not","computed","in",",","say",",","the","fit","method","of","OLSModel","."]
docstr: Return Variance/covariance matrix of linear :term:`contrast`.
  
  Parameters
  ----------
  matrix : (dim, self.theta.shape[0]) array, optional
      Numerical :term:`contrast` specification,
      where ``dim`` refers to the 'dimension' of the contrast
      i.e. 1 for t contrasts, 1
      or more for F :term:`contrasts<contrast>`.
  
  column : int, optional
      Alternative way of specifying :term:`contrasts<contrast>`
      (column index).
  
  dispersion : float or (n_voxels,) array, optional
      Value(s) for the dispersion parameters.
  
  other : (dim, self.theta.shape[0]) array, optional
      Alternative :term:`contrast` specification (?).
  
  Returns
  -------
  cov : (dim, dim) or (n_voxels, dim, dim) array
      The estimated covariance matrix/matrices.
  
  Returns the variance/covariance matrix of a linear contrast of the
  estimates of theta, multiplied by `dispersion` which will often be an
  estimate of `dispersion`, like, sigma^2.
  
  The covariance of interest is either specified as a (set of) column(s)
  or a matrix.
docstr_tok: ["Return","Variance\/covariance","matrix","of","linear",":","term",":","`","contrast","`",".","Parameters","--","--","--","--","--","matrix",":","(","dim",",","self.theta.shape","[","0","]",")","array",",","optional","Numerical",":","term",":","`","contrast","`","specification",",","where","``","dim","``","refers","to","the","'dimension","'","of","the","contrast","i.e",".","1","for","t","contrasts",",","1","or","more","for","F",":","term",":","`","contrasts","<","contrast",">","`",".","column",":","int",",","optional","Alternative","way","of","specifying",":","term",":","`","contrasts","<","contrast",">","`","(","column","index",")",".","dispersion",":","float","or","(","n_voxels",",",")","array",",","optional","Value","(","s",")","for","the","dispersion","parameters",".","other",":","(","dim",",","self.theta.shape","[","0","]",")","array",",","optional","Alternative",":","term",":","`","contrast","`","specification","(","?",")",".","Returns","--","--","--","-","cov",":","(","dim",",","dim",")","or","(","n_voxels",",","dim",",","dim",")","array","The","estimated","covariance","matrix\/matrices",".","Returns","the","variance\/covariance","matrix","of","a","linear","contrast","of","the","estimates","of","theta",",","multiplied","by","`","dispersion","`","which","will","often","be","an","estimate","of","`","dispersion","`",",","like",",","sigma^2",".","The","covariance","of","interest","is","either","specified","as","a","(","set","of",")","column","(","s",")","or","a","matrix","."]
code: def vcov(self, matrix=None, column=None, dispersion=None, other=None):
      """Return Variance/covariance matrix of linear :term:`contrast`.
  
      Parameters
      ----------
      matrix : (dim, self.theta.shape[0]) array, optional
          Numerical :term:`contrast` specification,
          where ``dim`` refers to the 'dimension' of the contrast
          i.e. 1 for t contrasts, 1
          or more for F :term:`contrasts<contrast>`.
  
      column : int, optional
          Alternative way of specifying :term:`contrasts<contrast>`
          (column index).
  
      dispersion : float or (n_voxels,) array, optional
          Value(s) for the dispersion parameters.
  
      other : (dim, self.theta.shape[0]) array, optional
          Alternative :term:`contrast` specification (?).
  
      Returns
      -------
      cov : (dim, dim) or (n_voxels, dim, dim) array
          The estimated covariance matrix/matrices.
  
      Returns the variance/covariance matrix of a linear contrast of the
      estimates of theta, multiplied by `dispersion` which will often be an
      estimate of `dispersion`, like, sigma^2.
  
      The covariance of interest is either specified as a (set of) column(s)
      or a matrix.
  
      """
      if self.cov is None:
          raise ValueError(
              "need covariance of parameters for computing"
              "(unnormalized) covariances"
          )
  
      if dispersion is None:
          dispersion = self.dispersion
  
      if column is not None:
          column = np.asarray(column)
          if column.shape == ():
              return self.cov[column, column] * dispersion
          else:
              return self.cov[column][:, column] * dispersion
  
      elif matrix is not None:
          if other is None:
              other = matrix
          tmp = np.dot(matrix, np.dot(self.cov, np.transpose(other)))
          if np.isscalar(dispersion):
              return tmp * dispersion
          else:
              return tmp[:, :, np.newaxis] * dispersion
      if matrix is None and column is None:
          return self.cov * dispersion
  
imports: import numpy
  from nibabel.onetime import auto_attr
  from scipy.linalg import inv
  from scipy.stats import t
  from nilearn.glm._utils import pad_contrast, positive_reciprocal
label_desc: Use image node_id 4 for calling the LikelihoodModelResults obj's underlying member method code with example usage: obj.vcov(matrix, column, dispersion, other) and returns: unknown, unknown, unknown, unknown, unknown