double MVTR::pdf(dPtr dp, bool logscale)const{ Ptr<DataType> d = DAT(dp); const Vec &y(d->y()); const Vec &X(d->x()); double ans = dmvt(y, X*Beta(), Siginv(), nu(), ldsi(), true); return logscale ? ans : exp(ans); }
double MvReg::pdf(const Ptr<Data> &dptr, bool logscale) const { Ptr<MvRegData> dp = DAT(dptr); Vector mu = predict(dp->x()); return dmvn(dp->y(), mu, Siginv(), ldsi(), logscale); }
double MvReg::log_likelihood() const { return log_likelihood_ivar(Beta(), Siginv()); }