const Spd & MVTR::Sigma()const{return Sigma_prm()->var();}
void MVT::set_Sigma(const SpdMatrix &Sig) { Sigma_prm()->set_var(Sig); }
void MVT::set_siginv(const SpdMatrix &ivar) { Sigma_prm()->set_ivar(ivar); }
const Matrix &MVT::Sigma_chol() const { return Sigma_prm()->var_chol(); }
const SpdMatrix &MVT::siginv() const { return Sigma_prm()->ivar(); }
void MVTR::set_Sigma(const Spd &V){Sigma_prm()->set_var(V);}
const Matrix &MvReg::residual_precision_cholesky() const { return Sigma_prm()->ivar_chol(); }
double WeightedMvnModel::ldsi()const{return Sigma_prm()->ldsi();}
void WeightedMvnModel::set_Sigma(const SpdMatrix &s){Sigma_prm()->set_var(s);}
const SpdMatrix & WeightedMvnModel::Sigma()const{return Sigma_prm()->var();}
const SpdMatrix & WeightedMvnModel::siginv()const{return Sigma_prm()->ivar();}
void MvReg::set_Siginv(const SpdMatrix &iV) { Sigma_prm()->set_ivar(iV); }
void MvReg::set_Sigma(const SpdMatrix &V) { Sigma_prm()->set_var(V); }
double MvReg::ldsi() const { return Sigma_prm()->ldsi(); }
const Spd & MVTR::Siginv()const{return Sigma_prm()->ivar();}
void WeightedMvnModel::set_siginv(const SpdMatrix &ivar){ Sigma_prm()->set_ivar(ivar);}
double MVTR::ldsi()const{return Sigma_prm()->ldsi();}
const SpdMatrix &MVT::Sigma() const { return Sigma_prm()->var(); }
void MVTR::set_Siginv(const Spd &iV){Sigma_prm()->set_ivar(iV);}
const SpdMatrix &MvReg::Siginv() const { return Sigma_prm()->ivar(); }