Category : C++ Source Code
Archive   : NEWMAT07.ZIP
Filename : NEWMATAP.H

 
Output of file : NEWMATAP.H contained in archive : NEWMAT07.ZIP
//$$ newmatap.h definition file for matrix package applications

// Copyright (C) 1991,2,3: R B Davies

#ifndef MATRIXAP_LIB
#define MATRIXAP_LIB 0

#include "newmat.h"


/**************************** applications *****************************/


void HHDecompose(Matrix&, LowerTriangularMatrix&);

void HHDecompose(const Matrix&, Matrix&, Matrix&);

ReturnMatrix Cholesky(const SymmetricMatrix&);

ReturnMatrix Cholesky(const SymmetricBandMatrix&);

#ifndef __GNUG__
void SVD(const Matrix&, DiagonalMatrix&, Matrix&, Matrix&,
Boolean=TRUE, Boolean=TRUE);
#else
void SVD(const Matrix&, DiagonalMatrix&, Matrix&, Matrix&,
Boolean=(Boolean)TRUE, Boolean=(Boolean)TRUE);
#endif


void SVD(const Matrix&, DiagonalMatrix&);

#ifndef __GNUG__
inline void SVD(const Matrix& A, DiagonalMatrix& D, Matrix& U,
Boolean withU = TRUE) { SVD(A, D, U, U, withU, FALSE); }
#else
inline void SVD(const Matrix& A, DiagonalMatrix& D, Matrix& U,
Boolean withU = (Boolean)TRUE) { SVD(A, D, U, U, withU, FALSE); }
#endif

void Jacobi(const SymmetricMatrix&, DiagonalMatrix&);

void Jacobi(const SymmetricMatrix&, DiagonalMatrix&, SymmetricMatrix&);

void Jacobi(const SymmetricMatrix&, DiagonalMatrix&, Matrix&);

#ifndef __GNUG__
void Jacobi(const SymmetricMatrix&, DiagonalMatrix&, SymmetricMatrix&,
Matrix&, Boolean=TRUE);
#else
void Jacobi(const SymmetricMatrix&, DiagonalMatrix&, SymmetricMatrix&,
Matrix&, Boolean=(Boolean)TRUE);
#endif

void EigenValues(const SymmetricMatrix&, DiagonalMatrix&);

void EigenValues(const SymmetricMatrix&, DiagonalMatrix&, SymmetricMatrix&);

void EigenValues(const SymmetricMatrix&, DiagonalMatrix&, Matrix&);

class SymmetricEigenAnalysis
// not implemented yet
{
public:
SymmetricEigenAnalysis(const SymmetricMatrix&);
private:
DiagonalMatrix diag;
DiagonalMatrix offdiag;
SymmetricMatrix backtransform;
FREE_CHECK(SymmetricEigenAnalysis)
};

void SortAscending(GeneralMatrix&);

void SortDescending(GeneralMatrix&);


void FFT(const ColumnVector&, const ColumnVector&,
ColumnVector&, ColumnVector&);

void FFTI(const ColumnVector&, const ColumnVector&,
ColumnVector&, ColumnVector&);

void RealFFT(const ColumnVector&, ColumnVector&, ColumnVector&);

void RealFFTI(const ColumnVector&, const ColumnVector&, ColumnVector&);


/********************** linear equation solving ****************************/

class LinearEquationSolver : public BaseMatrix
{
GeneralMatrix* gm;
int search(const BaseMatrix*) const { return 0; }
friend class BaseMatrix;
public:
LinearEquationSolver(const BaseMatrix& bm);
~LinearEquationSolver() { delete gm; }
void CleanUp() { delete gm; }
GeneralMatrix* Evaluate(MatrixType) { return gm; }
// probably should have an error message if MatrixType != UnSp
NEW_DELETE(LinearEquationSolver)
};





#endif


  3 Responses to “Category : C++ Source Code
Archive   : NEWMAT07.ZIP
Filename : NEWMATAP.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/