EMatrix
Classes | Namespaces | Macros | Functions | Variables
EMatrix.h File Reference
#include <cmath>
#include <cfloat>
#include <cstdlib>
#include <cstring>
#include <cstdarg>
#include <cassert>
#include <complex>
#include <fstream>
#include <iostream>
#include <initializer_list>
#include <random>
#include <limits>
Include dependency graph for EMatrix.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ematrix::Matrix< tData, tRows, tCols >
 

Namespaces

 ematrix
 
 ematrix::cnst
 These constants are from the gcc 3.2 <cmath> file (overkill??)
 

Macros

#define cout_octave(x)   octave((cout),(x),(#x))
 
#define HERE   std::cerr << __FILE__ << ':' << __LINE__ << std::endl;
 

Functions

template<class tData , size_t tRows, size_t tCols>
std::ostream & ematrix::operator<< (std::ostream &s, const Matrix< tData, tRows, tCols > &A)
 
template<class tData0 , size_t tRows0, size_t tCols0>
std::ostream & ematrix::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 & ematrix::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 > ematrix::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 > ematrix::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 > ematrix::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 > ematrix::trans (const Matrix< tData, tRows, tCols > &R)
 
template<size_t tRows, size_t tCols>
Matrix< std::complex< float >, tCols, tRows > ematrix::trans (const Matrix< std::complex< float >, tRows, tCols > &R)
 
template<size_t tRows, size_t tCols>
Matrix< std::complex< double >, tCols, tRows > ematrix::trans (const Matrix< std::complex< double >, tRows, tCols > &R)
 
template<class tData , size_t tRows>
Matrix< tData, tRows, 1 > ematrix::diag (const Matrix< tData, tRows, tRows > &R)
 
template<class tData , size_t tRows>
Matrix< tData, tRows, tRows > ematrix::diag (const Matrix< tData, tRows, 1 > &R)
 
template<class tData , size_t tCols>
Matrix< tData, tCols, tCols > ematrix::diag (const Matrix< tData, 1, tCols > &R)
 
template<class tData >
Matrix< tData, 3, 3 > ematrix::skew (const Matrix< tData, 3, 1 > &R)
 
template<class tData >
Matrix< tData, 3, 1 > ematrix::cross (const Matrix< tData, 3, 1 > &L, const Matrix< tData, 3, 1 > &R)
 
template<class tData , size_t tRows>
tData ematrix::dot (const Matrix< tData, tRows, 1 > &L, const Matrix< tData, tRows, 1 > &R)
 
template<class tData , size_t tRows>
tData ematrix::norm (const Matrix< tData, tRows, 1 > &R)
 
void ematrix::sgesv_ (const int &n, const int &nrhs, float *A, const int &lda, int *ipiv, float *B, const int &ldb, int *info)
 
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)
 
void ematrix::dgesv_ (const int &n, const int &nrhs, double *A, const int &lda, int *ipiv, double *B, const int &ldb, int *info)
 
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)
 
template<size_t tRows>
Matrix< float, tRows, tRows > ematrix::inv (const Matrix< float, tRows, tRows > &R)
 
template<size_t tRows>
Matrix< std::complex< float >, tRows, tRows > ematrix::inv (const Matrix< std::complex< float >, tRows, tRows > &R)
 
template<size_t tRows>
Matrix< double, tRows, tRows > ematrix::inv (const Matrix< double, tRows, tRows > &R)
 
template<size_t tRows>
Matrix< std::complex< double >, tRows, tRows > ematrix::inv (const Matrix< std::complex< double >, tRows, tRows > &R)
 
void ematrix::sgetrf_ (const int &m, const int &n, float *A, const int &lda, int *ipiv, int *info)
 
void ematrix::cgetrf_ (const int &m, const int &n, std::complex< float > *A, const int &lda, int *ipiv, int *info)
 
void ematrix::dgetrf_ (const int &m, const int &n, double *A, const int &lda, int *ipiv, int *info)
 
void ematrix::zgetrf_ (const int &m, const int &n, std::complex< double > *A, const int &lda, int *ipiv, int *info)
 
template<size_t tRows>
float ematrix::det (const Matrix< float, tRows, tRows > &R)
 
template<size_t tRows>
std::complex< float > ematrix::det (const Matrix< std::complex< float >, tRows, tRows > &R)
 
template<size_t tRows>
double ematrix::det (const Matrix< double, tRows, tRows > &R)
 
template<size_t tRows>
std::complex< double > ematrix::det (const Matrix< std::complex< double >, tRows, tRows > &R)
 
template<class tData >
Matrix< tData, 3, 3 > ematrix::R (tData angle, char axis)
 
template<class tData >
Matrix< tData, 3, 3 > ematrix::TIE (tData t)
 
template<class tData >
Matrix< tData, 3, 3 > ematrix::TEL (tData lat_rad, tData lon_rad)
 
template<class tData >
Matrix< tData, 3, 3 > ematrix::ang_to_tib (tData psi, tData the, tData phi)
 
template<class tData >
void ematrix::uv_to_ae (tData *az, tData *el, Matrix< tData, 3, 1 > &u)
 

Variables

const double ematrix::cnst::PI = 3.1415926535897932384626433832795029L
 
const double ematrix::cnst::PI_2 = 1.5707963267948966192313216916397514L
 
const double ematrix::cnst::RTD = 180.0L/PI
 
const double ematrix::cnst::DTR = 1.0L/RTD
 
const double ematrix::cnst::REQ = 6378137.0
 
const double ematrix::cnst::rEQ = 6356752.3142
 
const double ematrix::cnst::f = 1.0/298.257223563
 
const double ematrix::cnst::ECC = 0.0818191908426
 
const double ematrix::cnst::ECC2 = ECC*ECC
 
const double ematrix::cnst::WS = 7.292115E-05
 
const double ematrix::cnst::g = 9.78032534
 
const double ematrix::cnst::k = 0.00193185
 

Detailed Description

This file is part of EMatrix, the C++ matrix library distribution. This project is licensed under the terms of the MIT license. The full text of the license file can be found in LICENSE.

Definition in file EMatrix.h.

Macro Definition Documentation

◆ cout_octave

#define cout_octave (   x)    octave((cout),(x),(#x))

Definition at line 26 of file EMatrix.h.

Referenced by main().

◆ HERE

#define HERE   std::cerr << __FILE__ << ':' << __LINE__ << std::endl;

Definition at line 27 of file EMatrix.h.