fei::MatrixTraits< LinearSystemCore > Struct Template Reference

#include <fei_MatrixTraits_LinSysCore.hpp>

List of all members.

Static Public Member Functions

static const char * typeName ()
static int setValues (LinearSystemCore *lsc, double scalar)
static int getNumLocalRows (LinearSystemCore *lsc, int &numRows)
static int getRowLength (LinearSystemCore *lsc, int row, int &length)
static int copyOutRow (LinearSystemCore *lsc, int row, int len, double *coefs, int *indices)
static int putValuesIn (LinearSystemCore *lsc, int numRows, const int *rows, int numCols, const int *cols, const double *const *values, bool sum_into)
static int globalAssemble (LinearSystemCore *lsc)
static int matvec (LinearSystemCore *lsc, fei::Vector *x, fei::Vector *y)


Detailed Description

template<>
struct fei::MatrixTraits< LinearSystemCore >

Specialization for LinearSystemCore.

Definition at line 22 of file fei_MatrixTraits_LinSysCore.hpp.


Member Function Documentation

static const char* fei::MatrixTraits< LinearSystemCore >::typeName (  )  [inline, static]

Return a string type-name for the underlying matrix

Definition at line 25 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::setValues ( LinearSystemCore lsc,
double  scalar 
) [inline, static]

Set a specified scalar value throughout the matrix.

Definition at line 30 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::getNumLocalRows ( LinearSystemCore lsc,
int &  numRows 
) [inline, static]

Query the number of rows. This is expected to be the number of rows on the local processor.

Definition at line 38 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::getRowLength ( LinearSystemCore lsc,
int  row,
int &  length 
) [inline, static]

Given a global (zero-based) row number, query the length of that row.

Definition at line 46 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::copyOutRow ( LinearSystemCore lsc,
int  row,
int  len,
double *  coefs,
int *  indices 
) [inline, static]

Given a global (zero-based) row number, pass out a copy of the contents of that row.

Parameters:
lsc 
row 
len Length of the user-allocated arrays coefs and indices.
coefs User-allocated array which will hold matrix coefficients on output.
indices User-allocated array which will hold column-indices on output.
Returns:
error-code 0 if successful. Non-zero return-value may indicate that the specified row is not locally owned.

Definition at line 63 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::putValuesIn ( LinearSystemCore lsc,
int  numRows,
const int *  rows,
int  numCols,
const int *  cols,
const double *const *  values,
bool  sum_into 
) [inline, static]

Sum a C-style table of coefficient data into the underlying matrix.

Definition at line 72 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::globalAssemble ( LinearSystemCore lsc  )  [inline, static]

Perform any necessary internal communications/synchronizations or other operations appropriate at end of data input. For some implementations this will be a no-op, so this "default implementation" will return 0.

Definition at line 92 of file fei_MatrixTraits_LinSysCore.hpp.

static int fei::MatrixTraits< LinearSystemCore >::matvec ( LinearSystemCore lsc,
fei::Vector x,
fei::Vector y 
) [inline, static]

Compute the matrix-vector product y = A*x

Definition at line 98 of file fei_MatrixTraits_LinSysCore.hpp.


The documentation for this struct was generated from the following file:
Generated on Mon Jul 12 09:31:43 2010 for FEI by  doxygen 1.4.7