MAT< T > Module Template Reference

#include <mat.h>

Collaboration diagram for MAT< T >:

Collaboration graph
[legend]

Public Member Functions

 MAT (MEM_POOL *mp=0)
 MAT (INT r, INT c, MEM_POOL *mp=0)
 MAT (const MAT< T > &a, MEM_POOL *mp=0)
 ~MAT ()
MAT< T > & operator= (const MAT< T > &)
INT Rows () const
INT Cols () const
const Toperator() (INT r, INT c) const
Toperator() (INT r, INT c)
MAT< Toperator+ (const MAT< T > &) const
MAT< T > & operator+= (const MAT< T > &)
MAT< Toperator- (const MAT< T > &) const
MAT< T > & operator-= (const MAT< T > &)
MAT< Toperator* (MAT< T > const &) const
MAT< T > & operator*= (MAT< T > const &)
MAT< Toperator* (T) const
MAT< T > & operator*= (T)
MAT< TTrans () const
MAT< TInv () const
MAT< TL () const
MAT< TU () const
MAT< T > & D_Zero ()
MAT< T > & D_Identity ()
MAT< T > & D_Trans ()
MAT< T > & D_Inv ()
MAT< T > & D_Swap_Rows (INT, INT)
MAT< T > & D_Swap_Cols (INT, INT)
MAT< T > & D_Add_Row (const T f[])
MAT< T > & D_Add_Col (const T f[])
MAT< T > & D_Add_Rows (INT how_many, BOOL=FALSE)
MAT< T > & D_Add_Cols (INT how_many, BOOL=FALSE)
MAT< T > & D_Add_Identity_Rows_and_Cols (INT how_many)
MAT< T > & D_Subtract_Rows (INT how_many)
MAT< T > & D_Update_Row (INT row, const T *f)
MAT< T > & D_Update_Col (INT col, const T *f)
MAT< T > & D_Submul (const MAT< T > &mat, INT m, INT n)
BOOL Is_Identity () const
void Print (FILE *f) const
const MEM_POOLPool () const
template<>
MEM_POOL_default_pool
template<>
MEM_POOL_default_pool
template<>
MEM_POOL_default_pool
template<>
MEM_POOL_default_pool
template<>
IMAT Inv () const
template<>
DMAT Inv () const
template<>
MEM_POOL_default_pool

Static Public Member Functions

static MEM_POOLSet_Default_Pool (MEM_POOL *mp)
static MEM_POOLDefault_Pool ()

Private Member Functions

void _expand (INT rx, INT cx)

Static Private Member Functions

static INT _calcx (INT)
static void Print_Element (FILE *f, T)

Private Attributes

INT _r
INT _c
INT _rx
INT _cx
T_data
MEM_POOL_pool

Static Private Attributes

static MEM_POOL_default_pool

Friends

MAT< Toperator* (T a, MAT< T > const &m)

Detailed Description

template<class T>
module MAT< T >

Definition at line 299 of file mat.h.


Constructor & Destructor Documentation

template<class T>
MAT< T >::MAT ( MEM_POOL mp = 0  )  [inline]

Definition at line 302 of file mat.h.

template<class T>
MAT< T >::MAT ( INT  r,
INT  c,
MEM_POOL mp = 0 
) [inline]

template<class T>
MAT< T >::MAT ( const MAT< T > &  a,
MEM_POOL mp = 0 
) [inline]

template<class T>
MAT< T >::~MAT (  )  [inline]

Definition at line 308 of file mat.h.


Member Function/Subroutine Documentation

template<class T>
MAT< T > & MAT< T >::operator= ( const MAT< T > &  a  )  [inline]

template<class T>
INT MAT< T >::Rows (  )  const [inline]

template<class T>
INT MAT< T >::Cols (  )  const [inline]

template<class T>
const T& MAT< T >::operator() ( INT  r,
INT  c 
) const [inline]

Definition at line 315 of file mat.h.

template<class T>
T& MAT< T >::operator() ( INT  r,
INT  c 
) [inline]

Definition at line 320 of file mat.h.

template<class T>
MAT< T > MAT< T >::operator+ ( const MAT< T > &  a  )  const [inline]

template<class T>
MAT< T > & MAT< T >::operator+= ( const MAT< T > &  a  )  [inline]

Definition at line 206 of file mat.cxx.

References MAT< T >::_cx, MAT< T >::_data, c, MAT< T >::Cols(), FmtAssert, INT, p, r, MAT< T >::Rows(), and T.

template<class T>
MAT< T > MAT< T >::operator- ( const MAT< T > &  a  )  const [inline]

template<class T>
MAT< T > & MAT< T >::operator-= ( const MAT< T > &  a  )  [inline]

Definition at line 245 of file mat.cxx.

References MAT< T >::_cx, MAT< T >::_data, c, MAT< T >::Cols(), FmtAssert, INT, p, r, MAT< T >::Rows(), and T.

template<class T>
MAT< T > MAT< T >::operator* ( MAT< T > const &  a  )  const [inline]

template<class T>
MAT< T > & MAT< T >::operator*= ( MAT< T > const &  a  )  [inline]

Definition at line 290 of file mat.cxx.

References MAT< T >::Cols(), FmtAssert, and MAT< T >::Rows().

template<class T>
MAT< T > MAT< T >::operator* ( T  a  )  const [inline]

template<class T>
MAT< T > & MAT< T >::operator*= ( T  a  )  [inline]

Definition at line 336 of file mat.cxx.

References MAT< T >::_cx, MAT< T >::_data, c, MAT< T >::Cols(), INT, p, r, MAT< T >::Rows(), and T.

template<class T>
MAT< T > MAT< T >::Trans (  )  const [inline]

Definition at line 349 of file mat.cxx.

References c, MAT< T >::Cols(), INT, r, and MAT< T >::Rows().

Referenced by MAT< T >::D_Trans(), and VECTOR_SPACE< T >::Proj_Matrix().

template<class T>
MAT<T> MAT< T >::Inv (  )  const

template<class T>
MAT< T > MAT< T >::L (  )  const [inline]

Definition at line 571 of file mat.cxx.

References MAT< T >::Cols(), i, INT, and MAT< T >::Rows().

Referenced by LU_MAT< T >::TUnfactor().

template<class T>
MAT< T > MAT< T >::U (  )  const [inline]

Definition at line 591 of file mat.cxx.

References MAT< T >::Cols(), i, INT, and MAT< T >::Rows().

Referenced by LU_MAT< T >::TUnfactor().

template<class T>
MAT< T > & MAT< T >::D_Zero (  )  [inline]

Definition at line 369 of file mat.cxx.

References MAT< T >::_cx, MAT< T >::_data, c, MAT< T >::Cols(), INT, p, r, MAT< T >::Rows(), T, and zero.

Referenced by RG::RG(), and SNL_TILE_INFO::SNL_TILE_INFO().

template<class T>
MAT< T > & MAT< T >::D_Identity (  )  [inline]

Definition at line 383 of file mat.cxx.

References MAT< T >::_cx, MAT< T >::_data, c, MAT< T >::Cols(), INT, one, p, r, MAT< T >::Rows(), T, and zero.

Referenced by SNL_DEP_INFO::U_Fully_Permutable().

template<class T>
MAT< T > & MAT< T >::D_Trans (  )  [inline]

Definition at line 361 of file mat.cxx.

References MAT< T >::Trans().

template<class T>
MAT< T > & MAT< T >::D_Inv (  )  [inline]

Definition at line 565 of file mat.cxx.

References MAT< T >::Inv().

Referenced by MAT< T >::_default_pool(), and MAT< T >::Inv().

template<class T>
MAT< T > & MAT< T >::D_Swap_Rows ( INT  r1,
INT  r2 
) [inline]

Definition at line 398 of file mat.cxx.

References MAT< T >::_cx, MAT< T >::_data, cc, MAT< T >::Cols(), FmtAssert, INT, p1, p2, MAT< T >::Rows(), T, and x.

template<class T>
MAT< T > & MAT< T >::D_Swap_Cols ( INT  c1,
INT  c2 
) [inline]

template<class T>
MAT< T > & MAT< T >::D_Add_Row ( const T  f[]  )  [inline]

Definition at line 459 of file mat.cxx.

References MAT< T >::_r, MAT< T >::D_Add_Rows(), MAT< T >::D_Update_Row(), and FALSE.

template<class T>
MAT< T > & MAT< T >::D_Add_Col ( const T  f[]  )  [inline]

Definition at line 467 of file mat.cxx.

References MAT< T >::_c, MAT< T >::D_Add_Cols(), MAT< T >::D_Update_Col(), and FALSE.

template<class T>
MAT< T > & MAT< T >::D_Add_Rows ( INT  how_many,
BOOL  init_to_zero = FALSE 
) [inline]

template<class T>
MAT< T > & MAT< T >::D_Add_Cols ( INT  how_many,
BOOL  init_to_zero = FALSE 
) [inline]

template<class T>
MAT< T > & MAT< T >::D_Add_Identity_Rows_and_Cols ( INT  how_many  )  [inline]

template<class T>
MAT< T > & MAT< T >::D_Subtract_Rows ( INT  how_many  )  [inline]

Definition at line 496 of file mat.cxx.

References MAT< T >::_r, MAT< T >::_rx, and Is_True.

template<class T>
MAT<T>& MAT< T >::D_Update_Row ( INT  row,
const T f 
)

Referenced by MAT< T >::D_Add_Row().

template<class T>
MAT<T>& MAT< T >::D_Update_Col ( INT  col,
const T f 
)

template<class T>
MAT< T > & MAT< T >::D_Submul ( const MAT< T > &  mat,
INT  m,
INT  n 
) [inline]

Definition at line 302 of file mat.cxx.

References i, INT, r, and T.

template<class T>
BOOL MAT< T >::Is_Identity (  )  const [inline]

Definition at line 541 of file mat.cxx.

References MAT< T >::Cols(), FALSE, FmtAssert, INT, MAT< T >::Rows(), and TRUE.

Referenced by SNL_DEP_INFO::U_Fully_Permutable().

template<class T>
void MAT< T >::Print ( FILE f  )  const [inline]

template<class T>
static MEM_POOL* MAT< T >::Set_Default_Pool ( MEM_POOL mp  )  [inline, static]

template<class T>
static MEM_POOL* MAT< T >::Default_Pool (  )  [inline, static]

template<class T>
const MEM_POOL* MAT< T >::Pool (  )  const [inline]

Definition at line 369 of file mat.h.

template<class T>
INT MAT< T >::_calcx ( INT  v  )  [inline, static, private]

Definition at line 104 of file mat.cxx.

References FmtAssert, i, and INT.

Referenced by MAT< T >::D_Add_Cols(), MAT< T >::D_Add_Rows(), and MAT< T >::MAT().

template<class T>
static void MAT< T >::Print_Element ( FILE f,
T   
) [static, private]

Referenced by MAT< T >::Print().

template<class T>
void MAT< T >::_expand ( INT  rx,
INT  cx 
) [inline, private]

template<>
MEM_POOL * MAT< int >::_default_pool (  )  [inline]

template<>
MEM_POOL * MAT< mINT32 >::_default_pool (  )  [inline]

Definition at line 98 of file access_vector.cxx.

template<>
MEM_POOL * MAT< mINT32 >::_default_pool (  )  [inline]

Definition at line 65 of file mat_textra.cxx.

template<>
MEM_POOL * MAT< double >::_default_pool (  )  [inline]

template<>
IMAT MAT< mINT32 >::Inv (  )  const [inline]

template<>
DMAT MAT< double >::Inv (  )  const [inline]

template<>
MEM_POOL * MAT< mINT32 >::_default_pool (  )  [inline]

Definition at line 53 of file f90_lower_dep.cxx.


Friends And Related Function Documentation

template<class T>
MAT<T> operator* ( T  a,
MAT< T > const &  m 
) [friend]

Definition at line 332 of file mat.h.


Field Documentation

template<class T>
INT MAT< T >::_r [private]

template<class T>
INT MAT< T >::_c [private]

template<class T>
INT MAT< T >::_rx [private]

template<class T>
INT MAT< T >::_cx [private]

template<class T>
T* MAT< T >::_data [private]

template<class T>
MEM_POOL* MAT< T >::_pool [private]

template<class T>
MEM_POOL * MAT< T >::_default_pool [static, private]

Definition at line 384 of file mat.h.


The documentation for this module was generated from the following files:

Generated on Wed Apr 8 16:55:14 2009 for Open64 by  doxygen 1.5.6