EMatrix
|
Namespaces | |
cnst | |
These constants are from the gcc 3.2 <cmath> file (overkill??) | |
Classes | |
class | Matrix |
Functions | |
template<class tData , size_t tRows, size_t tCols> | |
std::ostream & | operator<< (std::ostream &s, const Matrix< tData, tRows, tCols > &A) |
template<class tData0 , size_t tRows0, size_t tCols0> | |
std::ostream & | octave (std::ostream &s, const Matrix< std::complex< tData0 >, tRows0, tCols0 > &A, const char *Aname) |
template<class tData0 , size_t tRows0, size_t tCols0> | |
std::ostream & | octave (std::ostream &s, const Matrix< tData0, tRows0, tCols0 > &A, const char *Aname) |
template<class tData , size_t tRows, size_t tCols> | |
Matrix< tData, tRows, tCols > | operator* (const tData &scalar, const Matrix< tData, tRows, tCols > &R) |
template<class tData0 , size_t tCols0, size_t tRowsT, size_t tRowsB> | |
Matrix< tData0, tRowsT+tRowsB, tCols0 > | operator& (const Matrix< tData0, tRowsT, tCols0 > &Top, const Matrix< tData0, tRowsB, tCols0 > &Bottom) |
template<class tData0 , size_t tRows0, size_t tColsL, size_t tColsR> | |
Matrix< tData0, tRows0, tColsL+tColsR > | operator| (const Matrix< tData0, tRows0, tColsL > &Left, const Matrix< tData0, tRows0, tColsR > &Right) |
template<class tData , size_t tRows, size_t tCols> | |
Matrix< tData, tCols, tRows > | trans (const Matrix< tData, tRows, tCols > &R) |
template<size_t tRows, size_t tCols> | |
Matrix< std::complex< float >, tCols, tRows > | trans (const Matrix< std::complex< float >, tRows, tCols > &R) |
template<size_t tRows, size_t tCols> | |
Matrix< std::complex< double >, tCols, tRows > | trans (const Matrix< std::complex< double >, tRows, tCols > &R) |
template<class tData , size_t tRows> | |
Matrix< tData, tRows, 1 > | diag (const Matrix< tData, tRows, tRows > &R) |
template<class tData , size_t tRows> | |
Matrix< tData, tRows, tRows > | diag (const Matrix< tData, tRows, 1 > &R) |
template<class tData , size_t tCols> | |
Matrix< tData, tCols, tCols > | diag (const Matrix< tData, 1, tCols > &R) |
template<class tData > | |
Matrix< tData, 3, 3 > | skew (const Matrix< tData, 3, 1 > &R) |
template<class tData > | |
Matrix< tData, 3, 1 > | cross (const Matrix< tData, 3, 1 > &L, const Matrix< tData, 3, 1 > &R) |
template<class tData , size_t tRows> | |
tData | dot (const Matrix< tData, tRows, 1 > &L, const Matrix< tData, tRows, 1 > &R) |
template<class tData , size_t tRows> | |
tData | norm (const Matrix< tData, tRows, 1 > &R) |
void | sgesv_ (const int &n, const int &nrhs, float *A, const int &lda, int *ipiv, float *B, const int &ldb, int *info) |
void | cgesv_ (const int &n, const int &nrhs, std::complex< float > *A, const int &lda, int *ipiv, std::complex< float > *B, const int &ldb, int *info) |
void | dgesv_ (const int &n, const int &nrhs, double *A, const int &lda, int *ipiv, double *B, const int &ldb, int *info) |
void | zgesv_ (const int &n, const int &nrhs, std::complex< double > *A, const int &lda, int *ipiv, std::complex< double > *B, const int &ldb, int *info) |
template<size_t tRows> | |
Matrix< float, tRows, tRows > | inv (const Matrix< float, tRows, tRows > &R) |
template<size_t tRows> | |
Matrix< std::complex< float >, tRows, tRows > | inv (const Matrix< std::complex< float >, tRows, tRows > &R) |
template<size_t tRows> | |
Matrix< double, tRows, tRows > | inv (const Matrix< double, tRows, tRows > &R) |
template<size_t tRows> | |
Matrix< std::complex< double >, tRows, tRows > | inv (const Matrix< std::complex< double >, tRows, tRows > &R) |
void | sgetrf_ (const int &m, const int &n, float *A, const int &lda, int *ipiv, int *info) |
void | cgetrf_ (const int &m, const int &n, std::complex< float > *A, const int &lda, int *ipiv, int *info) |
void | dgetrf_ (const int &m, const int &n, double *A, const int &lda, int *ipiv, int *info) |
void | zgetrf_ (const int &m, const int &n, std::complex< double > *A, const int &lda, int *ipiv, int *info) |
template<size_t tRows> | |
float | det (const Matrix< float, tRows, tRows > &R) |
template<size_t tRows> | |
std::complex< float > | det (const Matrix< std::complex< float >, tRows, tRows > &R) |
template<size_t tRows> | |
double | det (const Matrix< double, tRows, tRows > &R) |
template<size_t tRows> | |
std::complex< double > | det (const Matrix< std::complex< double >, tRows, tRows > &R) |
template<class tData > | |
Matrix< tData, 3, 3 > | R (tData angle, char axis) |
template<class tData > | |
Matrix< tData, 3, 3 > | TIE (tData t) |
template<class tData > | |
Matrix< tData, 3, 3 > | TEL (tData lat_rad, tData lon_rad) |
template<class tData > | |
Matrix< tData, 3, 3 > | ang_to_tib (tData psi, tData the, tData phi) |
template<class tData > | |
void | uv_to_ae (tData *az, tData *el, Matrix< tData, 3, 1 > &u) |
Matrix< tData, 3, 3 > ematrix::ang_to_tib | ( | tData | psi, |
tData | the, | ||
tData | phi | ||
) |
void ematrix::cgesv_ | ( | const int & | n, |
const int & | nrhs, | ||
std::complex< float > * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
std::complex< float > * | B, | ||
const int & | ldb, | ||
int * | info | ||
) |
Referenced by inv(), and ematrix::Matrix< tData, tRows, tCols >::u().
void ematrix::cgetrf_ | ( | const int & | m, |
const int & | n, | ||
std::complex< float > * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
int * | info | ||
) |
Matrix< tData, 3, 1 > ematrix::cross | ( | const Matrix< tData, 3, 1 > & | L, |
const Matrix< tData, 3, 1 > & | R | ||
) |
Definition at line 796 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::R, and ematrix::Matrix< tData, tRows, tCols >::skew.
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
float ematrix::det | ( | const Matrix< float, tRows, tRows > & | R | ) |
Definition at line 926 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), ematrix::Matrix< tData, tRows, tCols >::R, and sgetrf_().
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
std::complex<float> ematrix::det | ( | const Matrix< std::complex< float >, tRows, tRows > & | R | ) |
Definition at line 948 of file EMatrix.h.
References cgetrf_(), ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), and ematrix::Matrix< tData, tRows, tCols >::R.
double ematrix::det | ( | const Matrix< double, tRows, tRows > & | R | ) |
Definition at line 970 of file EMatrix.h.
References dgetrf_(), ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), and ematrix::Matrix< tData, tRows, tCols >::R.
std::complex<double> ematrix::det | ( | const Matrix< std::complex< double >, tRows, tRows > & | R | ) |
Definition at line 992 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), ematrix::Matrix< tData, tRows, tCols >::R, and zgetrf_().
void ematrix::dgesv_ | ( | const int & | n, |
const int & | nrhs, | ||
double * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
double * | B, | ||
const int & | ldb, | ||
int * | info | ||
) |
Referenced by inv(), and ematrix::Matrix< tData, tRows, tCols >::u().
void ematrix::dgetrf_ | ( | const int & | m, |
const int & | n, | ||
double * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
int * | info | ||
) |
Matrix< tData, tRows, 1 > ematrix::diag | ( | const Matrix< tData, tRows, tRows > & | R | ) |
Definition at line 756 of file EMatrix.h.
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< tData, tRows, tRows > ematrix::diag | ( | const Matrix< tData, tRows, 1 > & | R | ) |
Matrix< tData, tCols, tCols > ematrix::diag | ( | const Matrix< tData, 1, tCols > & | R | ) |
tData ematrix::dot | ( | const Matrix< tData, tRows, 1 > & | L, |
const Matrix< tData, tRows, 1 > & | R | ||
) |
Definition at line 801 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::pIJ().
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< float, tRows, tRows > ematrix::inv | ( | const Matrix< float, tRows, tRows > & | R | ) |
Definition at line 841 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::eye(), ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), ematrix::Matrix< tData, tRows, tCols >::R, and sgesv_().
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< std::complex<float>, tRows, tRows > ematrix::inv | ( | const Matrix< std::complex< float >, tRows, tRows > & | R | ) |
Definition at line 860 of file EMatrix.h.
References cgesv_(), ematrix::Matrix< tData, tRows, tCols >::eye(), ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), and ematrix::Matrix< tData, tRows, tCols >::R.
Matrix< double, tRows, tRows > ematrix::inv | ( | const Matrix< double, tRows, tRows > & | R | ) |
Definition at line 879 of file EMatrix.h.
References dgesv_(), ematrix::Matrix< tData, tRows, tCols >::eye(), ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), and ematrix::Matrix< tData, tRows, tCols >::R.
Matrix< std::complex<double>, tRows, tRows > ematrix::inv | ( | const Matrix< std::complex< double >, tRows, tRows > & | R | ) |
Definition at line 898 of file EMatrix.h.
References cgetrf_(), dgetrf_(), ematrix::Matrix< tData, tRows, tCols >::eye(), ematrix::Matrix< tData, tRows, tCols >::n(), ematrix::Matrix< tData, tRows, tCols >::pIJ(), ematrix::Matrix< tData, tRows, tCols >::R, sgetrf_(), zgesv_(), and zgetrf_().
tData ematrix::norm | ( | const Matrix< tData, tRows, 1 > & | R | ) |
Definition at line 819 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::dot.
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
std::ostream& ematrix::octave | ( | std::ostream & | s, |
const Matrix< std::complex< tData0 >, tRows0, tCols0 > & | A, | ||
const char * | Aname | ||
) |
Octave text output format, double Usage: Matrix<double,2,3> A(&a[0][0]); octave(cout,A,"A") << endl; Can define: #define cout_octave(x) octave(cout,x,#x) for cout_octave(A) << endl;
Definition at line 520 of file EMatrix.h.
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator[]().
std::ostream& ematrix::octave | ( | std::ostream & | s, |
const Matrix< tData0, tRows0, tCols0 > & | A, | ||
const char * | Aname | ||
) |
Octave text output format, complex<double> Usage: Matrix< complex<double>,3,3 > ZA; octave(cout,ZA,"ZA") << endl; Can define: #define cout_octave(x) octave(cout,x,#x) for cout_octave(ZA) << endl;
Definition at line 531 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::iCols, and ematrix::Matrix< tData, tRows, tCols >::iRows.
Matrix< tData0, tRowsT+tRowsB, tCols0 > ematrix::operator & | ( | const Matrix< tData0, tRowsT, tCols0 > & | Top, |
const Matrix< tData0, tRowsB, tCols0 > & | Bottom | ||
) |
Concatenate matrices top and botton Usage: C = (A & B); Must use parenthesis
Definition at line 654 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::iCols, and ematrix::Matrix< tData, tRows, tCols >::iRows.
Referenced by ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< tData, tRows, tCols > ematrix::operator* | ( | const tData & | scalar, |
const Matrix< tData, tRows, tCols > & | R | ||
) |
Definition at line 609 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::iCols, ematrix::Matrix< tData, tRows, tCols >::ij, ematrix::Matrix< tData, tRows, tCols >::iRows, and ematrix::Matrix< tData, tRows, tCols >::R.
Referenced by ematrix::Matrix< tData, tRows, tCols >::cols().
std::ostream& ematrix::operator<< | ( | std::ostream & | s, |
const Matrix< tData, tRows, tCols > & | A | ||
) |
Matrix< tData0, tRows0, tColsL+tColsR > ematrix::operator| | ( | const Matrix< tData0, tRows0, tColsL > & | Left, |
const Matrix< tData0, tRows0, tColsR > & | Right | ||
) |
Concatenate matrices Left to Right Usage: C = (A | B); Must use parenthesis
Definition at line 672 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::iCols, and ematrix::Matrix< tData, tRows, tCols >::iRows.
Referenced by ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< tData, 3, 3 > ematrix::R | ( | tData | angle, |
char | axis | ||
) |
Definition at line 1014 of file EMatrix.h.
Referenced by ematrix::Matrix< tData, tRows, tCols >::cols(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
void ematrix::sgesv_ | ( | const int & | n, |
const int & | nrhs, | ||
float * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
float * | B, | ||
const int & | ldb, | ||
int * | info | ||
) |
Referenced by inv(), and ematrix::Matrix< tData, tRows, tCols >::u().
void ematrix::sgetrf_ | ( | const int & | m, |
const int & | n, | ||
float * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
int * | info | ||
) |
Definition at line 783 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::pIJ().
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< tData, 3, 3 > ematrix::TEL | ( | tData | lat_rad, |
tData | lon_rad | ||
) |
Definition at line 1036 of file EMatrix.h.
References ematrix::cnst::PI_2, and ematrix::Matrix< tData, tRows, tCols >::R.
Matrix< tData, 3, 3 > ematrix::TIE | ( | tData | t | ) |
Definition at line 1031 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::R, and ematrix::cnst::WS.
Matrix< tData, tCols, tRows > ematrix::trans | ( | const Matrix< tData, tRows, tCols > & | R | ) |
Definition at line 723 of file EMatrix.h.
Referenced by main(), and ematrix::Matrix< tData, tRows, tCols >::operator*().
Matrix< std::complex<float>, tCols, tRows > ematrix::trans | ( | const Matrix< std::complex< float >, tRows, tCols > & | R | ) |
Matrix< std::complex<double>, tCols, tRows > ematrix::trans | ( | const Matrix< std::complex< double >, tRows, tCols > & | R | ) |
void ematrix::uv_to_ae | ( | tData * | az, |
tData * | el, | ||
Matrix< tData, 3, 1 > & | u | ||
) |
Definition at line 1064 of file EMatrix.h.
References ematrix::Matrix< tData, tRows, tCols >::norm, and ematrix::Matrix< tData, tRows, tCols >::u().
void ematrix::zgesv_ | ( | const int & | n, |
const int & | nrhs, | ||
std::complex< double > * | A, | ||
const int & | lda, | ||
int * | ipiv, | ||
std::complex< double > * | B, | ||
const int & | ldb, | ||
int * | info | ||
) |
Referenced by inv(), and ematrix::Matrix< tData, tRows, tCols >::u().