Truncated Multivariate Normal and Student t Distribution

Random number generation for the truncated multivariate normal and Student t distribution. Computes probabilities, quantiles and densities, including one-dimensional and bivariate marginal densities. Computes first and second moments (i.e. mean and covariance matrix) for the double-truncated multinormal case.


User visible changes in tmvtnorm package

changes in tmvtnorm 1.4-10 (2015-08-24)

Fixed problem with build process in src/Makevars (parallel make)

changes in tmvtnorm 1.4-9 (2014-03-03)

Moved package vignette to vignettes/ directory to be consistent with R 3.1.0

changes in tmvtnorm 1.4-8 (2013-03-29)

bugfix in dtmvnorm(...,margin=NULL). Introduced in 1.4-7. Reported by Julius.Vainora [[email protected]]

bugfix in rtmvt(..., algorithm="gibbs"): Algorithm="gibbs" was not forwarded properly to rtmvnorm(). Reported by Aurelien Bechler [[email protected]]

allow non-integer degrees of freedom in rtmvt, e.g. rtmvt(..., df=3.2). Suggested by Aurelien Bechler [[email protected]]

Rejection sampling does not work with non-integer df, only Gibbs sampling.

changes in tmvtnorm 1.4-7 (2012-11-29)

new method rtmvnorm2() for drawing random samples with

general linear constraints a <= Dx <= b with x (d x 1), D (r x d), a,b (r x 1) which can also handle the case r > d. Requested by Xiaojin Xu [[email protected]] Currently works with Gibbs sampling.

bugfix in dtmvnorm(...,log=TRUE). Reported by John Merrill [[email protected]]

optimization in mtmvnorm() to speed up the calculations

dtmvnorm.marginal2() can now be used with vectorized xq, xr.

changes in tmvtnorm 1.4-6 (2012-03-23)

further optimization in mtmvnorm() and implementation of Johnson/Kotz-Formula when only a subset of variables is truncated

changes in tmvtnorm 1.4-5 (2012-02-13)

rtmvnorm() can be used with both sparse triplet representation and (compressed sparse column) for H

dramatic performance gain in mtmvnorm() through optimization

changes in tmvtnorm 1.4-4 (2012-01-10)

dramatic performance gain in rtmvnorm.sparseMatrix() through optimization

Bugfix in rtmvnorm() with linear constraints D: (reported by Claudia K�llmann [[email protected]])

  • forwarding "algorithm=" argument from rtmvnorm() to internal methods dealing with linear constraints was corrupt.
  • sampling with linear constraints D lead to wrong results due to missing t()

changes in tmvtnorm 1.4-2 (2012-01-04)

Bugfix in rtmvnorm.sparseMatrix(): fixed a memory leak in Fortran code

Added a package vignette with a description of the Gibbs sampler

changes in tmvtnorm 1.4-1 (2011-12-27)

Allow a sparse precision matrix H to be passed to rtmvnorm.sparseMatrix() which allows

random number generation in very high dimensions (e.g. d >> 5000)

Rewritten the Fortran version of the Gibbs sampler for the

use with sparse precision matrix H.

changes in tmvtnorm 1.3-1 (2011-12-01)

Allow for the use of a precision matrix H rather than covariance matrix sigma in rtmvnorm() for both rejection and Gibbs sampling.

(requested by Miguel Godinho de Matos from Carnegie Mellon University)

Rewritten both the R and Fortran version of the Gibbs sampler.

GMM estimation in gmm.tmvnorm(,method=c("ManjunathWilhelm","Lee")) can now be done using the Manjunath/Wilhelm and Lee moment conditions.

changes in tmvtnorm 1.2-3 (2011-06-04)

rtmvnorm() works now with general linear constraints a<= Dx<=b, with x (d x 1), full-rank matrix D (d x d), a,b (d x 1).

Implemented with both rejection sampling and Gibbs sampling (Geweke (1991))

Added GMM estimation in gmm.tmvnorm()

Bugfix in dtmvt() thanks to Jason Kramer: Using type="shifted" in pmvt()

(reported by Jason Kramer [[email protected]])

changes in tmvtnorm 1.1-5 (2010-11-20)

Added Maximum Likelihood estimation method (MLE) mle.tmvtnorm()

optimized mtmvnorm(): precalcuted F_a[i] in a separate loop which improved the computation of the mean, suggested by [email protected]

added a flag doComputeVariance (default TRUE), so users which are only interested in the mean, can compute

only the variance (BTW: this flag does not make sense for the mean, since the mean has to be calculated anyway.)

Fixed a bug with LAPACK and BLAS/FLIBS libraries:

Prof. Ripley/Writing R extensions: "For portability, the macros @code{BLAS_LIBS} and @code{FLIBS} should always be included @emph{after} @code{LAPACK_LIBS}."

changes in tmvtnorm 1.0-2 (2010-01-28)

Added methods for the truncated multivariate t-Distribution : rtmvt(), dtmvt() und ptmvt()

and ptmvt.marginal()

changes in tmvtnorm 0.9-2 (2010-01-03)

Implementation of "thinning technique" for Gibbs sampling: Added parameter thinning=1 to rtmvnorm.gibbs() for thinning of Markov chains,

i.e. reducing autocorrelations of random samples

Documenting additional arguments "thinning", "start.value" and "", for rmvtnorm.gibbs()

Added parameter "burn-in" and "thinning" in the Fortran code for discarding burn-in samples and thinng the Markov chain.

Added parameter log=FALSE to dtmvnorm.marginal()

Added parameter margin=NULL to dtmvnorm() as an interface/wrapper to marginal density functions dtmvnorm.marginal() and dtmvnorm.marginal2()

Code polishing and review

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.