SparseMatrixF Struct Reference

#include <SparseMatrixF.h>

List of all members.

Public Types

enum  eOrientation { eCompressedRows, eCompressedColumns, eSymmetric }

Public Member Functions

void AddNumbers (double alfa, double *a)
ULONG Adr (int i) const
ULONG Ci (int i) const
void CreateLocalCopy ()
void Delete ()
void Detach ()
void GetA12block (double *pA12, long c)
eOrientation GetOrientation ()
BOOL IsSamePattern (SparseMatrixF *sm)
BOOL IsSymmetric ()
void LoadMatrix (FILE *stream)
void MulMatrixByVector (double *b, double *c)
void MulNonsymMatrixByVector (double *b, double *c)
void MulSymMatrixByVector (double *b, double *c)
void mxv_scr (double *b, double *c)
long Nonzeros ()
void ReadDiagonal (double *dv)
void SaveMatrix (FILE *stream)
void ScaleMatrix (double alfa)
 SparseMatrixF (IConectMatrix *pConMtx)
 SparseMatrixF (unsigned long neq, double *a, unsigned long *ci, unsigned long *adr, ULONG Aofs=0, ULONG Cofs=0, bool JardaConvention=true, bool bIsSymetric=true, eOrientation sparseOri=eCompressedColumns)
 SparseMatrixF ()
 ~SparseMatrixF ()

Public Attributes

double * a
ULONG neq

Private Attributes

ULONG * adr
ULONG Aoffset
bool bJardaConvention
bool bLocalCopy
ULONG * ci
ULONG Coffset
bool m_bIsSymmertric
eOrientation m_eSparseOrientation

Detailed Description

Definition at line 12 of file SparseMatrixF.h.


Member Enumeration Documentation

Enumerator:
eCompressedRows 
eCompressedColumns 
eSymmetric 

Definition at line 18 of file SparseMatrixF.h.


Constructor & Destructor Documentation

SparseMatrixF (  ) 
SparseMatrixF ( unsigned long  neq,
double *  a,
unsigned long *  ci,
unsigned long *  adr,
ULONG  Aofs = 0,
ULONG  Cofs = 0,
bool  JardaConvention = true,
bool  bIsSymetric = true,
eOrientation  sparseOri = eCompressedColumns 
)
SparseMatrixF ( IConectMatrix pConMtx  ) 

Definition at line 37 of file SparseMatrixF.cpp.

~SparseMatrixF (  ) 

Definition at line 61 of file SparseMatrixF.cpp.

References bLocalCopy, and Delete().


Member Function Documentation

void AddNumbers ( double  alfa,
double *  a 
)

Definition at line 129 of file SparseMatrixF.cpp.

References Nonzeros().

Referenced by DSSolver::AddNumbers().

ULONG Adr ( int  i  )  const [inline]
ULONG Ci ( int  i  )  const [inline]
void CreateLocalCopy (  ) 

Definition at line 86 of file SparseMatrixF.cpp.

References a, adr, bJardaConvention, bLocalCopy, ci, Array::Copy(), neq, and Nonzeros().

Referenced by DSSolver::LoadMatrix().

void Delete (  ) 

Definition at line 67 of file SparseMatrixF.cpp.

References a, adr, bLocalCopy, ci, and neq.

Referenced by ~SparseMatrixF().

void Detach (  ) 

Definition at line 76 of file SparseMatrixF.cpp.

References a, adr, Aoffset, ci, Coffset, and neq.

void GetA12block ( double *  pA12,
long  c 
)

Definition at line 153 of file SparseMatrixF.cpp.

References a, Adr(), Ci(), and neq.

Referenced by DSSolver::GetA12block().

eOrientation GetOrientation (  )  [inline]

Definition at line 49 of file SparseMatrixF.h.

References m_eSparseOrientation.

BOOL IsSamePattern ( SparseMatrixF sm  ) 

Definition at line 108 of file SparseMatrixF.cpp.

References adr, ci, m_bIsSymmertric, m_eSparseOrientation, neq, and Nonzeros().

Referenced by DSSolver::LoadNumbers().

BOOL IsSymmetric (  )  [inline]

Definition at line 48 of file SparseMatrixF.h.

References m_bIsSymmertric.

void LoadMatrix ( FILE *  stream  ) 

Definition at line 248 of file SparseMatrixF.cpp.

References a, adr, Aoffset, bLocalCopy, ci, Coffset, m_bIsSymmertric, and neq.

void MulMatrixByVector ( double *  b,
double *  c 
)
void MulNonsymMatrixByVector ( double *  b,
double *  c 
)
void MulSymMatrixByVector ( double *  b,
double *  c 
)

Definition at line 207 of file SparseMatrixF.cpp.

References a, Adr(), Ci(), and neq.

Referenced by MulMatrixByVector().

void mxv_scr ( double *  b,
double *  c 
)

function multiplies matrix by vector

Parameters:
b - array containing vector b
c - array containing resulting vector c = A.b

JK

Definition at line 220 of file SparseMatrixF.cpp.

References a, Adr(), Ci(), and neq.

long Nonzeros (  ) 
void ReadDiagonal ( double *  dv  ) 

Definition at line 237 of file SparseMatrixF.cpp.

References a, Adr(), Ci(), and neq.

Referenced by DSSolver::SetMatrixPattern().

void SaveMatrix ( FILE *  stream  ) 

Definition at line 290 of file SparseMatrixF.cpp.

References a, adr, ci, and neq.

void ScaleMatrix ( double  alfa  ) 

Definition at line 136 of file SparseMatrixF.cpp.

References a, and Nonzeros().

Referenced by DSSolver::ScaleMatrix().


Member Data Documentation

double* a
ULONG* adr [private]
ULONG Aoffset [private]

Definition at line 28 of file SparseMatrixF.h.

Referenced by Adr(), Detach(), LoadMatrix(), and SparseMatrixF().

bool bJardaConvention [private]

Definition at line 30 of file SparseMatrixF.h.

Referenced by Adr(), CreateLocalCopy(), Nonzeros(), and SparseMatrixF().

bool bLocalCopy [private]

Definition at line 31 of file SparseMatrixF.h.

Referenced by CreateLocalCopy(), Delete(), LoadMatrix(), SparseMatrixF(), and ~SparseMatrixF().

ULONG* ci [private]
ULONG Coffset [private]

Definition at line 29 of file SparseMatrixF.h.

Referenced by Ci(), Detach(), LoadMatrix(), and SparseMatrixF().

bool m_bIsSymmertric [private]
ULONG neq

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

Generated by  doxygen 1.6.2