#include <chmat.h>
Public Member Functions | |
| void | opupdt (const vec &v, double w) |
| mat | to_mat () const |
| Conversion to full matrix. | |
| void | mult_sym (const mat &C) |
Inplace symmetric multiplication by a SQUARE matrix , i.e. . | |
| void | mult_sym (const mat &C, chmat &U) const |
| void | mult_sym_t (const mat &C) |
Inplace symmetric multiplication by a SQUARE transpose of matrix , i.e. . | |
| void | mult_sym_t (const mat &C, chmat &U) const |
| double | logdet () const |
| Logarithm of a determinant. | |
| vec | sqrt_mult (const vec &v) const |
Multiplies square root of by vector . | |
| double | qform (const vec &v) const |
Evaluates quadratic form ;. | |
| double | invqform (const vec &v) const |
Evaluates quadratic form ;. | |
| void | clear () |
| Clearing matrix so that it corresponds to zeros. | |
| void | add (const chmat &A2, double w=1.0) |
add another chmat A2 with weight w. | |
| void | inv (chmat &Inv) const |
| Inversion in the same form, i.e. cholesky. | |
| virtual | ~chmat () |
| Destructor for future use;. | |
| chmat (const int dim0) | |
| Default constructor. | |
| chmat (const vec &v) | |
| Default constructor. | |
| chmat (const chmat &Ch0) | |
| Copy constructor. | |
| chmat (const mat &M) | |
| Default constructor (m3k:cholform). | |
| chmat (const chmat &M, const ivec &perm) | |
| mat & | _Ch () |
| Access function. | |
| const mat & | _Ch () const |
| Access function. | |
| void | setD (const vec &nD) |
| Access functions. | |
| void | setCh (const vec &chQ) |
| Access functions. | |
| void | setD (const vec &nD, int i) |
| Access functions. | |
| chmat & | operator+= (const chmat &A2) |
| Operators. | |
| chmat & | operator-= (const chmat &A2) |
| mapping of negative add operation to operators | |
| chmat & | operator* (const double &d) |
| chmat & | operator= (const chmat &A2) |
| chmat & | operator*= (double x) |
| int | cols () const |
| Reimplementing common functions of mat: cols(). | |
| int | rows () const |
| Reimplementing common functions of mat: rows(). | |
Protected Attributes | |
| mat | Ch |
| Upper triangle of the cholesky matrix. | |
| int | dim |
| dimension of the square matrix | |
This matrix represent
where only the upper triangle
is stored;
| bdm::chmat::chmat | ( | const chmat & | M, | |
| const ivec & | perm | |||
| ) | [inline] |
Some templates require this constructor to compile, but it shouldn't actually be called.
References bdm_error.
| void bdm::chmat::mult_sym | ( | const mat & | C | ) | [virtual] |
Inplace symmetric multiplication by a SQUARE matrix
, i.e.
.
| C | multiplying matrix, |
Reimplemented from bdm::sqmat.
References bdm_assert_debug, bdm_warning, Ch, and bdm::sqmat::dim.
| void bdm::chmat::mult_sym_t | ( | const mat & | C | ) | [virtual] |
Inplace symmetric multiplication by a SQUARE transpose of matrix
, i.e.
.
| C | multiplying matrix, |
Reimplemented from bdm::sqmat.
References bdm_assert_debug, bdm_warning, Ch, and bdm::sqmat::dim.
| void bdm::chmat::opupdt | ( | const vec & | v, | |
| double | w | |||
| ) | [virtual] |
Perfroms a rank-1 update by outer product of vectors:
.
| v | Vector forming the outer product to be added | |
| w | weight of updating; can be negative |
Reimplemented from bdm::sqmat.
References Ch.
| vec bdm::chmat::sqrt_mult | ( | const vec & | v | ) | const [virtual] |
Multiplies square root of
by vector
.
Used e.g. in generating normal samples.
Reimplemented from bdm::sqmat.
References Ch.
1.5.9