edoSamplerNormalMulti< EOT, D > Class Template Reference

Sample points in a multi-normal law defined by a mean vector and a covariance matrix. More...

#include <edoSamplerNormalMulti.h>

Inheritance diagram for edoSamplerNormalMulti< EOT, D >:
edoSampler< D >

List of all members.

Public Types

typedef EOT::AtomType AtomType
typedef D::Vector Vector
typedef D::Matrix Matrix

Public Member Functions

 edoSamplerNormalMulti (edoRepairer< EOT > &repairer)
EOT sample (D &distrib)

Detailed Description

template<typename EOT, typename D = edoNormalMulti< EOT >>
class edoSamplerNormalMulti< EOT, D >

Sample points in a multi-normal law defined by a mean vector and a covariance matrix.

Given M the mean vector and V the covariance matrix, of order n:

  • draw a vector T in N(0,I) (i.e. each value is drawn in a normal law with mean=0 an stddev=1)
  • compute the Cholesky decomposition L of V (i.e. such as V=LL*)
  • return X = M + LT

Exists in two implementations, using either Boost::uBLAS (if compiled WITH_BOOST) or Eigen3 (WITH_EIGEN).

Definition at line 65 of file edoSamplerNormalMulti.h.


The documentation for this class was generated from the following file:
 All Classes Functions Variables Typedefs