FEI Version of the Day
Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
fei::MatrixTraits< FiniteElementData > Struct Reference

#include <fei_MatrixTraits_FEData.hpp>

Static Public Member Functions

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

Detailed Description

specialization for FiniteElementData

Definition at line 21 of file fei_MatrixTraits_FEData.hpp.

Member Function Documentation

◆ typeName()

static const char * fei::MatrixTraits< FiniteElementData >::typeName ( )
inlinestatic

Return a string type-name for the underlying matrix

Definition at line 24 of file fei_MatrixTraits_FEData.hpp.

◆ setValues()

static int fei::MatrixTraits< FiniteElementData >::setValues ( FiniteElementData * fed,
double scalar )
inlinestatic

Set a specified scalar value throughout the matrix.

Definition at line 39 of file fei_MatrixTraits_FEData.hpp.

◆ getNumLocalRows()

static int fei::MatrixTraits< FiniteElementData >::getNumLocalRows ( FiniteElementData * fed,
int & numRows )
inlinestatic

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

Definition at line 47 of file fei_MatrixTraits_FEData.hpp.

◆ getRowLength()

static int fei::MatrixTraits< FiniteElementData >::getRowLength ( FiniteElementData * fed,
int row,
int & length )
inlinestatic

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

Definition at line 55 of file fei_MatrixTraits_FEData.hpp.

◆ copyOutRow()

static int fei::MatrixTraits< FiniteElementData >::copyOutRow ( FiniteElementData * fed,
int row,
int len,
double * coefs,
int * indices )
inlinestatic

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

Parameters
fed
row
lenLength of the user-allocated arrays coefs and indices.
coefsUser-allocated array which will hold matrix coefficients on output.
indicesUser-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 72 of file fei_MatrixTraits_FEData.hpp.

◆ putValuesIn()

static int fei::MatrixTraits< FiniteElementData >::putValuesIn ( FiniteElementData * fed,
int numRows,
const int * rows,
int numCols,
const int * cols,
const double *const * values,
bool sum_into )
inlinestatic

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

Definition at line 80 of file fei_MatrixTraits_FEData.hpp.

◆ globalAssemble()

static int fei::MatrixTraits< FiniteElementData >::globalAssemble ( FiniteElementData * fed)
inlinestatic

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 93 of file fei_MatrixTraits_FEData.hpp.

◆ matvec()

static int fei::MatrixTraits< FiniteElementData >::matvec ( FiniteElementData * fed,
fei::Vector * x,
fei::Vector * y )
inlinestatic

Compute the matrix-vector product y = A*x

Definition at line 99 of file fei_MatrixTraits_FEData.hpp.


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