Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

linalg.cpp File Reference

#include "linalg.h"

Functions

DoubleVector operator * (double f, const DoubleVector &v)
 float times vector
ostream & operator<< (ostream &left, const DoubleVector &v)
 prints a vector out formatted, maximum of 5 elements per line
istream & operator>> (istream &left, DoubleVector &v)
 inputs a vector
DoubleMatrix operator * (double f, const DoubleMatrix &m)
 Assumes the double is multiplied by identity.
DoubleMatrix outerProduct (const DoubleVector &v1, const DoubleVector &v2)
 Defines $ Mij = v1i v2j $.
istream & operator>> (istream &left, DoubleMatrix &m)
 Formatted input of a matrix: size already determined in M.
ostream & operator<< (ostream &left, const DoubleMatrix &v)
 Formatted output of a matrix: maximum 5 elements per line.
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)
 $ u^* A v^+ $ = mdiagpositive
void diagonaliseSvd (DoubleMatrix &a, DoubleVector &w, DoubleMatrix &v)
 Diagonalisation routines.
ostream & operator<< (ostream &left, const ComplexVector &v)
 Formatted output.
istream & operator>> (istream &left, ComplexVector &v)
 Formatted input.
ComplexMatrix operator * (Complex f, const ComplexMatrix &m)
 Assumes the Complex is multiplied by identity.
ComplexVector operator * (const ComplexVector &v, const ComplexMatrix &m)
 $ v_i = v_j M_{ji} $
ComplexMatrix outerProduct (const ComplexVector &v1, const ComplexVector &v2)
 $ M_{ij} = v1_i v2_j $
istream & operator>> (istream &left, ComplexMatrix &m)
 Formatted input.
ostream & operator<< (ostream &left, const ComplexMatrix &v)
 Formatted output.

Detailed Description

Log
linalg.cpp,v
Revision 1.4 2005/07/26 10:51:22 allanach new method nmin added to DoubleVector and DoubleMatrix by Bernhardt

Revision 1.3 2005/05/13 16:06:02 allanach Relaxed tolerance a bit in diagonalisation: it was giving me trouble

Revision 1.1 2004/11/19 16:18:31 allanach Initial revision

Revision 1.25 2004/01/15 13:53:48 allanach New time-saving unary operators included.

Revision 1.24 2003/08/04 16:44:22 allanach Added max function for matrix and vector of doubles

Revision 1.23 2003/07/29 15:26:40 allanach Using new and delete rather than old malloc and free C-style routines

Revision 1.22 2003/07/25 13:39:15 allanach Trapped errors properly rather than exiting

Revision 1.21 2003/06/05 09:17:19 allanach Started coding Les Houches Discord

Revision 1.20 2003/05/20 15:18:08 allanach Changed to doxygen comments and cout rather than cerr

Revision 1.19 2003/03/09 18:52:19 allanach Added check for symmetricity in DoubleMatrix::sym2by2

Revision 1.18 2003/03/04 12:55:02 allanach Removed Slavich diagonalisation

Revision 1.17 2003/02/28 18:11:57 allanach Added routines to convert to Slavich's stop conventions in order to calculate the 2-loop Higgs mass

Revision 1.16 2003/02/21 13:02:06 allanach Changed headings to new conventions

Revision 1.15 2002/11/04 15:51:50 allanach Added a check in sym2by2 for the case of diagonal matrices

Revision 1.14 2002/10/30 16:39:30 allanach Fixed annoying extra spaces bug when outputting vectors

Revision 1.13 2002/10/09 17:18:51 allanach Added new softpoint option to specify mu and mA instead of mH1, mH2. Some fine-tuning still necessary

Revision 1.12 2002/09/23 18:13:50 allanach Eigenvalue order with non symmetric diagonalisation setx

Revision 1.11 2002/09/11 09:52:34 allanach TOLERANCE etc now used in preference.

Revision 1.10 2002/08/12 16:29:10 allanach Cosmetic change in outputting complex vector

Revision 1.9 2002/07/19 15:54:06 allanach SOFTSUSY1.5 version

Revision 1.8 2002/06/14 16:26:30 allanach Switches included for 2-loop running of scalar masses, and calulating mt at mt.

Revision 1.7 2002/06/10 16:13:07 allanach Speeded things up by adding option for array bounds checking

Revision 1.6 2002/04/30 16:23:59 allanach Added matrix inversion routine

Revision 1.5 2002/04/26 15:14:44 allanach Deleted all translation routines and defined boundary conditions within softsusy.h and softsusy.cpp

Revision 1.2 2002/04/11 12:22:27 allanach Traps -0.0 and just prints 0.0


Function Documentation

void positivise double  thetaL,
double  thetaR,
const DoubleVector diag,
ComplexMatrix u,
ComplexMatrix v
 

$ u^* A v^+ $ = mdiagpositive

Redefines mixing matrices to be complex such that diagonal values are positive for a 2 by 2:


Generated on Fri Aug 26 16:37:13 2005 for SOFTSUSY by  doxygen 1.3.9.1