FEI Functions


LLNL_FEI_Impl(MPI_Comm comm)
Finite element interface constructor: this function creates an instantiation of the HYPRE fei class
~LLNL_FEI_Impl()
Finite element interface destructor: this function destroys the object as well as its internal memory allocations
int parameters(int numParams, char **paramStrings)
The parameter function is the single most important function to pass solver information (which solver, which preconditioner, tolerance, other solver parameters) to HYPRE
initFields
Each node or element variable has one or more fields
initElemBlock
The whole finite element mesh can be broken down into a number of element blocks
initElem
This function initializes element connectivity (that is, the node identifiers associated with the current element) given an element block identifier and the element identifier with the element block
initSharedNodes
This function initializes the nodes that are shared between the current processor and its neighbors
int initCRMult(int CRListLen, int *CRNodeList, int *CRFieldList, int *CRID)
This function initializes the Lagrange multiplier constraints
initComplete
This function signals to the FEI that the initialization step has been completed
resetSystem
This function resets the global matrix to be of the same sparsity pattern as before but with every entry set to s
int resetMatrix(double s)
This function resets the global matrix to be of the same sparsity pattern as before but with every entry set to s
int resetRHSVector(double s)
This function resets the right hand side vector to s
int resetInitialGuess(double s)
This function resets the solution vector to s
loadNodeBCs
This function loads the nodal boundary conditions
int sumInElem(int elemBlockID, int elemID, int *elemConn, double **elemStiff, double *elemLoad, int elemFormat)
This function adds the element contribution to the global stiffness matrix and also the element load to the right hand side vector
int sumInElemMatrix(int elemBlock, int elemID, int* elemConn, double **elemStiffness, int elemFormat)
This function differs from the sumInElem function in that the right hand load vector is not passed
int sumInElemRHS(int elemBlock, int elemID, int *elemConn, double *elemLoad)
This function adds the element load to the right hand side vector
loadComplete
This function signals to the FEI that the loading phase has been completed
int getNumBlockActNodes(int elemBlockID, int *nNodes)
This function returns the number of nodes given the element block
int getNumBlockActEqns(int elemBlockID, int *nEqns)
This function returns the number of unknowns given the element block
int getBlockNodeIDList(int elemBlockID, int numNodes, int *nodeIDList)
This function returns the node identifiers given the element block
int getBlockNodeSolution(int elemBlockID, int numNodes, int *nodeIDList, int *solnOffsets, double *solnValues)
This function returns the nodal solutions given the element block number
int loadCRMult(int CRID, int CRListLen, int *CRNodeList, int *CRFieldList, double *CRWeightList, double CRValue)
This function loads the Lagrange multiplier constraints

alphabetic index hierarchy of classes


generated by doc++