#include "linalg.h"#include "mycomplex.h"#include "utils.h"#include "def.h"#include <cmath>#include <sstream>#include <istream>Functions | |
| ostream & | operator<< (ostream &left, const DoubleVector &v) |
| istream & | operator>> (istream &left, DoubleVector &v) |
| istream & | operator>> (istream &left, DoubleMatrix &m) |
| ostream & | operator<< (ostream &left, const DoubleMatrix &v) |
| DoubleMatrix | rot2d (double theta) |
| Returns a 2x2 orthogonal matrix of rotation by angle theta. | |
| DoubleMatrix | rot2dTwist (double theta) |
| Returns 2 by 2 orthogonal mixing matrix. | |
| void | positivise (double thetaL, double thetaR, const DoubleVector &diag, ComplexMatrix &u, ComplexMatrix &v) |
= mdiagpositive | |
| void | diagonaliseSvd (DoubleMatrix &a, DoubleVector &w, DoubleMatrix &v) |
| Diagonalisation routines. | |
| double | pythagoras (double a, double b) |
| void | diagonaliseJac (DoubleMatrix &a, int n, DoubleVector &d, DoubleMatrix &v, int *nrot) |
| ostream & | operator<< (ostream &left, const ComplexVector &v) |
| istream & | operator>> (istream &left, ComplexVector &v) |
| istream & | operator>> (istream &left, ComplexMatrix &m) |
| ostream & | operator<< (ostream &left, const ComplexMatrix &v) |
$Header$
| void positivise | ( | double | thetaL, | |
| double | thetaR, | |||
| const DoubleVector & | diag, | |||
| ComplexMatrix & | u, | |||
| ComplexMatrix & | v | |||
| ) |
= mdiagpositive
Redefines mixing matrices to be complex such that diagonal values are positive for a 2 by 2:
1.5.5