Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

matrix.h File Reference

#include <iostream>
#include <cassert>
#include <cmath>
#include <cfloat>
#include <valarray>

Go to the source code of this file.

Compounds

class  Ref
class  Matrix
class  MdataC
class  MatrixC

Defines

#define __STDCALL
#define OUTPUT_PREC   6
 number of digits in output.

#define EPS_EQ_NULL   DBL_EPSILON
 for comparisons to zero from cfloat.

#define MAT_CF(M,NR,I,J)    (M[(J)*(NR)+(I)])
 Direct access for column oriented full storage matrices. More...

#define REF_CF(A,I,J)    MAT_CF(((A).D)->m,((A).D)->nrow,I,J)
#define THIS_CF(I,J)    REF_CF(*this,I,J)

Functions

template<classTp> istream& operator>> (istream& s, Ref<Tp>& r)
template<classTp> ostream& operator>> (ostream& s, Ref<Tp>& r)
template<classTp> Tp operator+ (const Tp& a, const Ref<Tp>& b)
 more algebraic operators for class Ref<Tp>.

template<classTp> Tp operator- (const Tp& a, const Ref<Tp>& b)
template<classTp> Tp operator * (const Tp& a, const Ref<Tp>& b)
template<classTp> Tp operator/ (const Tp& a, const Ref<Tp>& b)
template<classTp> istream& operator>> (istream& s, MatrixC<Tp>& M)
template<classTp> ostream& operator<< (ostream& s, MatrixC<Tp>& M)
void __STDCALL DSCAL_ (const int*,const double*,double*,const int*)
 BLAS functions declaration of BLAS subroutines used by the algebra methods.

double __STDCALL DDOT_ (const int*,const double*,const int*,double*,const int*)
void __STDCALL DAXPY_ (const int*,const double*,const double*,const int*,double*,const int*)
void __STDCALL DCOPY_ (const int*,const double*,const int*,double*,const int*)
double __STDCALL DNRM2_ (const int*,const double*,const int*)
void __STDCALL DGEMV_ (const char*,const int*,const int*,const double*,const double*,const int*,const double*,const int*,const double*,const double*,const int*)
void __STDCALL DSPMV_ (const char*,const int*,const double*,const double*,const double*,const int*,const double*,const double*,const int*)
void __STDCALL DSBMV_ (const char*,const int*,const int*,const double*,const double*,const int*,const double*,const int*,const double*,const double*,const int*)
void __STDCALL DGBMV_ (const char*,const int*,const int*,const int*,const int*,const double*,const double*,const int*,const double*,const int*,const double*,const double*,const int*)
void __STDCALL DGEMM_ (const char*,const char*,const int*,const int*,const int*,const double*,const double*,const int*,const double*,const int*,const double*,double*,const int*)
void __STDCALL DSYMM_ (const char*,const char*,const int*,const int*,const double*,const double*,const int*,const double*,const int*,const double*,const double*,const int*)
void __STDCALL DGESV_ (const int*,const int*,double*,const int*,int*,double*,const int*,int*)
void __STDCALL DGETRF_ (const int*,const int*,double*,const int*,int*,int*)
void __STDCALL DGETRS_ (const char*,const int*,const int*,double*,const int*,int*,double*,const int*,int*)
void __STDCALL DGETRI_ (const int*,double*, const int*,int*,double*,int*,int*)
void __STDCALL DPOSV_ (const char*,const int*,const int*,double*,const int*,double*,const int*,int*)
void __STDCALL DPOTRF_ (const char*,const int*,double*,const int*,int*)
void __STDCALL DPOTRS_ (const char*,const int*,const int*,double*,const int*,double*,const int*,int*)
void __STDCALL DPOTRI_ (const char*,const int*,double*,const int*,int*)
void __STDCALL DPPSV_ (char*,int*,int*,double*,double*,int*,int*)
void __STDCALL DPPTRF_ (const char*,const int*,double*,int*)
void __STDCALL DPPTRS_ (const char*,const int*,const int*,double*,double*,const int*,int*)
void __STDCALL DPPTRI_ (const char*,const int*,double*,int*)
void __STDCALL DPBSV_ (const char*,const int*,const int*,const int*,double*,const int*,double*,const int*,int*)
void __STDCALL DPBTRF_ (const char*,const int*,const int*,double*,const int*,int*)
void __STDCALL DPBTRS_ (const char*,const int*,const int*,const int*,double*,const int*,double*,const int*,int*)
void __STDCALL DGBSV_ (const int*,const int*,const int*,const int*,double*,const int*,int*,double*,const int*,int*)
void __STDCALL DGBTRF_ (const int*,const int*,const int*,const int*,double*,const int*,int*,int*)
void __STDCALL DGBTRS_ (const char*,const int*,const int*,const int*,const int*,double*,const int*,int*,double*,const int*,int*)


Define Documentation

#define __STDCALL
 

#define OUTPUT_PREC   6
 

number of digits in output.

#define EPS_EQ_NULL   DBL_EPSILON
 

for comparisons to zero from cfloat.

#define MAT_CF( M, NR, I, J )   (M[(J)*(NR)+(I)])
 

Direct access for column oriented full storage matrices.

The first macro can be used for fast access in functions that have direct access to the matrix content. This should only be used when aggressive optimization is mandatory. The second and third macro can only be used in class members.

#define REF_CF( A, I, J )   MAT_CF(((A).D)->m,((A).D)->nrow,I,J)
 

#define THIS_CF( I, J )   REF_CF(*this,I,J)
 


Function Documentation

template<classTp>
istream & operator>> ( istream & s,
Ref< Tp >& r ) [inline]
 

template<classTp>
ostream & operator>> ( ostream & s,
Ref< Tp >& r ) [inline]
 

template<classTp>
Tp operator+ ( const Tp & a,
const Ref< Tp >& b ) [inline]
 

more algebraic operators for class Ref<Tp>.

template<classTp>
Tp operator- ( const Tp & a,
const Ref< Tp >& b ) [inline]
 

template<classTp>
Tp operator * ( const Tp & a,
const Ref< Tp >& b ) [inline]
 

template<classTp>
Tp operator/ ( const Tp & a,
const Ref< Tp >& b ) [inline]
 

template<classTp>
istream & operator>> ( istream & s,
MatrixC< Tp >& M ) [inline]
 

template<classTp>
ostream & operator<< ( ostream & s,
MatrixC< Tp >& M ) [inline]
 

void __STDCALL DSCAL_ ( const int *,
const double *,
double *,
const int * )
 

BLAS functions declaration of BLAS subroutines used by the algebra methods.

double __STDCALL DDOT_ ( const int *,
const double *,
const int *,
double *,
const int * )
 

void __STDCALL DAXPY_ ( const int *,
const double *,
const double *,
const int *,
double *,
const int * )
 

void __STDCALL DCOPY_ ( const int *,
const double *,
const int *,
double *,
const int * )
 

double __STDCALL DNRM2_ ( const int *,
const double *,
const int * )
 

void __STDCALL DGEMV_ ( const char *,
const int *,
const int *,
const double *,
const double *,
const int *,
const double *,
const int *,
const double *,
const double *,
const int * )
 

void __STDCALL DSPMV_ ( const char *,
const int *,
const double *,
const double *,
const double *,
const int *,
const double *,
const double *,
const int * )
 

void __STDCALL DSBMV_ ( const char *,
const int *,
const int *,
const double *,
const double *,
const int *,
const double *,
const int *,
const double *,
const double *,
const int * )
 

void __STDCALL DGBMV_ ( const char *,
const int *,
const int *,
const int *,
const int *,
const double *,
const double *,
const int *,
const double *,
const int *,
const double *,
const double *,
const int * )
 

void __STDCALL DGEMM_ ( const char *,
const char *,
const int *,
const int *,
const int *,
const double *,
const double *,
const int *,
const double *,
const int *,
const double *,
double *,
const int * )
 

void __STDCALL DSYMM_ ( const char *,
const char *,
const int *,
const int *,
const double *,
const double *,
const int *,
const double *,
const int *,
const double *,
const double *,
const int * )
 

void __STDCALL DGESV_ ( const int *,
const int *,
double *,
const int *,
int *,
double *,
const int *,
int * )
 

void __STDCALL DGETRF_ ( const int *,
const int *,
double *,
const int *,
int *,
int * )
 

void __STDCALL DGETRS_ ( const char *,
const int *,
const int *,
double *,
const int *,
int *,
double *,
const int *,
int * )
 

void __STDCALL DGETRI_ ( const int *,
double *,
const int *,
int *,
double *,
int *,
int * )
 

void __STDCALL DPOSV_ ( const char *,
const int *,
const int *,
double *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DPOTRF_ ( const char *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DPOTRS_ ( const char *,
const int *,
const int *,
double *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DPOTRI_ ( const char *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DPPSV_ ( char *,
int *,
int *,
double *,
double *,
int *,
int * )
 

void __STDCALL DPPTRF_ ( const char *,
const int *,
double *,
int * )
 

void __STDCALL DPPTRS_ ( const char *,
const int *,
const int *,
double *,
double *,
const int *,
int * )
 

void __STDCALL DPPTRI_ ( const char *,
const int *,
double *,
int * )
 

void __STDCALL DPBSV_ ( const char *,
const int *,
const int *,
const int *,
double *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DPBTRF_ ( const char *,
const int *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DPBTRS_ ( const char *,
const int *,
const int *,
const int *,
double *,
const int *,
double *,
const int *,
int * )
 

void __STDCALL DGBSV_ ( const int *,
const int *,
const int *,
const int *,
double *,
const int *,
int *,
double *,
const int *,
int * )
 

void __STDCALL DGBTRF_ ( const int *,
const int *,
const int *,
const int *,
double *,
const int *,
int *,
int * )
 

void __STDCALL DGBTRS_ ( const char *,
const int *,
const int *,
const int *,
const int *,
double *,
const int *,
int *,
double *,
const int *,
int * )
 


Generated at Wed Nov 22 08:38:29 2000 for LinAl - a simple and efficient Matrix library - by doxygen1.2.1 written by Dimitri van Heesch, © 1997-2000