elemmat Class Reference

#include <elemmat.h>

List of all members.

Public Member Functions

void addmat_em (double c, elemmat &dm)
void alloc (gtopology *top)
void cg (double *x, double *y, long ni, double err, long &ani, double &ares, double zero, long iv)
void changedecomp ()
long decomp ()
 elemmat (void)
void initiate (gtopology *top, long ndof, long mespr)
void localize (matrix &b, long *cn, long eid)
void localized (double *b, long *cn, long eid, long m)
void mxv_em (double *b, double *c)
void nullmat ()
void printmat (FILE *out)
void scalmat_em (double c)
double ** status ()
 ~elemmat (void)

Public Attributes

double ** a
 array containing element matrices
long ** acn
 array containing code numbers of finite elements
long * andofe
 array containing number of DOFs on elements
long decompid
 decomposition indicator
long maxarr
 maximum number of components in local vector
long mem
 total number of stored entries
long n
 number of unknowns (degrees of freedom)
long ne
 number of finite elements
long * neme
 array containing number of matrix entries on elements

Detailed Description

class elemmat serves for storage of matrices of finite elements no global matrix is used, only iterative methods are applicable, maximum exploatation of cache is considered

JK

Definition at line 16 of file elemmat.h.


Constructor & Destructor Documentation

elemmat ( void   ) 

Definition at line 6 of file elemmat.cpp.

References a, acn, andofe, decompid, maxarr, mem, n, ne, and neme.

~elemmat ( void   ) 

Definition at line 29 of file elemmat.cpp.

References a, acn, andofe, ne, and neme.


Member Function Documentation

void addmat_em ( double  c,
elemmat dm 
)

Definition at line 176 of file elemmat.cpp.

References a, ne, and neme.

void alloc ( gtopology top  ) 

Definition at line 44 of file elemmat.cpp.

References a, acn, andofe, gtopology::give_ndofe(), maxarr, mem, gtopology::ne, ne, and neme.

Referenced by initiate().

void cg ( double *  x,
double *  y,
long  ni,
double  err,
long &  ani,
double &  ares,
double  zero,
long  iv 
)

function solves system of linear algebraic equations by conjugate gradient method,

Parameters:
x - vector of unknowns
y - vector of right hand side
ni - maximum number of iterations
err - required error (norm of residual vector)
ani - number of performed iterations
ares - attained error (norm of residual vector)
zero - computer zero
iv - initial values indicator

iv=0 - initial vector is zero vector iv=1 - initial vector is taken from x array

26.6.2003

Definition at line 227 of file elemmat.cpp.

References mxv_em(), n, p, and ss().

Referenced by gmatrix::solve_system().

void changedecomp (  ) 

Definition at line 84 of file elemmat.cpp.

References decompid.

long decomp (  ) 

Definition at line 79 of file elemmat.cpp.

References decompid.

void initiate ( gtopology top,
long  ndof,
long  mespr 
)

Definition at line 128 of file elemmat.cpp.

References alloc(), n, nullmat(), and status().

Referenced by gmatrix::initiate().

void localize ( matrix b,
long *  cn,
long  eid 
)

Definition at line 100 of file elemmat.cpp.

References a, acn, and matrix::m.

Referenced by gmatrix::localize().

void localized ( double *  b,
long *  cn,
long  eid,
long  m 
)

Definition at line 114 of file elemmat.cpp.

References a, and acn.

Referenced by gmatrix::localized().

void mxv_em ( double *  b,
double *  c 
)

Definition at line 143 of file elemmat.cpp.

References a, acn, andofe, maxarr, mxv(), n, ne, and nullv().

Referenced by cg().

void nullmat (  ) 

Definition at line 90 of file elemmat.cpp.

References a, ne, and neme.

Referenced by initiate().

void printmat ( FILE *  out  ) 

Definition at line 196 of file elemmat.cpp.

References a, ne, and neme.

Referenced by gmatrix::printmat().

void scalmat_em ( double  c  ) 

Definition at line 186 of file elemmat.cpp.

References a, ne, and neme.

double ** status (  ) 

Definition at line 74 of file elemmat.cpp.

References a.

Referenced by initiate().


Member Data Documentation

double** a

array containing element matrices

Definition at line 50 of file elemmat.h.

Referenced by addmat_em(), alloc(), elemmat(), localize(), localized(), mxv_em(), nullmat(), printmat(), scalmat_em(), status(), and ~elemmat().

long** acn

array containing code numbers of finite elements

Definition at line 52 of file elemmat.h.

Referenced by alloc(), elemmat(), localize(), localized(), mxv_em(), and ~elemmat().

long* andofe

array containing number of DOFs on elements

Definition at line 46 of file elemmat.h.

Referenced by alloc(), elemmat(), mxv_em(), and ~elemmat().

long decompid

decomposition indicator

Definition at line 54 of file elemmat.h.

Referenced by changedecomp(), decomp(), elemmat(), and gmatrix::prepmat().

long maxarr

maximum number of components in local vector

Definition at line 44 of file elemmat.h.

Referenced by alloc(), elemmat(), and mxv_em().

long mem

total number of stored entries

Definition at line 42 of file elemmat.h.

Referenced by alloc(), and elemmat().

long n

number of unknowns (degrees of freedom)

Definition at line 38 of file elemmat.h.

Referenced by cg(), elemmat(), initiate(), and mxv_em().

long ne

number of finite elements

Definition at line 40 of file elemmat.h.

Referenced by addmat_em(), alloc(), elemmat(), mxv_em(), nullmat(), printmat(), scalmat_em(), and ~elemmat().

long* neme

array containing number of matrix entries on elements

Definition at line 48 of file elemmat.h.

Referenced by addmat_em(), alloc(), elemmat(), nullmat(), printmat(), scalmat_em(), and ~elemmat().


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

Generated by  doxygen 1.6.2