class_docstr: multivariate normal distribution with cholesky decomposition of sigma
  
  ignoring mean at the beginning, maybe
  
  needs testing for broadcasting to contemporaneously but not intertemporaly
  correlated random variable, which axis?,
  maybe swapaxis or rollaxis if x.ndim != mean.ndim == (sigma.ndim - 1)
  
  initially 1d is ok, 2d should work with iid in axis 0 and mvn in axis 1
class_docstr_tok: ["multivariate","normal","distribution","with","cholesky","decomposition","of","sigma","ignoring","mean","at","the","beginning",",","maybe","needs","testing","for","broadcasting","to","contemporaneously","but","not","intertemporaly","correlated","random","variable",",","which","axis","?",",","maybe","swapaxis","or","rollaxis","if","x.ndim","!","=","mean.ndim","==","(","sigma.ndim","-","1",")","initially","1d","is","ok",",","2d","should","work","with","iid","in","axis","0","and","mvn","in","axis","1"]
code: def whiten(self, x):
      return np.dot(cholsigmainv, x)
  
imports: import math
  import numpy
  from scipy import linalg, stats, special
  from .linalg_decomp_1 import SvdArray
label_desc: Use image node_id 2 for calling the MultivariateNormalChol obj's underlying member method code with example usage: obj.whiten(x) and returns: np