finley Namespace Reference

A suite of factory methods for creating various finley domains. More...

## Namespaces

| util

## Classes

struct | AssembleParameters
struct | ElementFile_Jacobians
class | ElementFile
class | FinleyDomain
| FinleyDomain implements the AbstractContinuousDomain interface for the Finley library. More...
class | FinleyException
struct | FaceCenter
class | NodeFile
struct | NodeMapping
struct | QuadInfo
struct | ReferenceElementInfo
| this struct holds the definition of the reference element More...
struct | ReferenceElement
| this struct holds the realization of a reference element More...
struct | ReferenceElementSet
struct | ShapeFunctionInfo
| this struct holds the definition of the shape functions on an element More...
struct | ShapeFunction
| this struct holds the evaluation of a shape function on a quadrature scheme More...

## Typedefs

typedef std::map< std::string, int > | TagMap
typedef void() | Quad_getNodes(int, std::vector< double > &, std::vector< double > &)
typedef int() | Quad_getNumNodes(int)
typedef int() | Quad_getMacro(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFfv)
typedef boost::shared_ptr< ReferenceElement > | ReferenceElement_ptr
typedef boost::shared_ptr< const ReferenceElement > | const_ReferenceElement_ptr
typedef boost::shared_ptr< const ReferenceElementSet > | const_ReferenceElementSet_ptr
typedef void() | ShapeFunction_Evaluation(int, std::vector< double > &, std::vector< double > &, std::vector< double > &)
typedef boost::shared_ptr< const ShapeFunction > | const_ShapeFunction_ptr

## Enumerations

enum | { DegreesOfFreedom = 1 , ReducedDegreesOfFreedom = 2 , Nodes = 3 , ReducedNodes = 14 , Elements = 4 , ReducedElements = 10 , FaceElements = 5 , ReducedFaceElements = 11 , Points = 6 , ContactElementsZero = 7 , ReducedContactElementsZero = 12 , ContactElementsOne = 8 , ReducedContactElementsOne = 13 }
enum | SystemMatrixType { SMT_PASO = 1<<8 , SMT_TRILINOS = 1<<10 , SMT_COMPLEX = 1<<16 , SMT_UNROLL = 1<<17 }
enum | QuadTypeId { PointQuad , LineQuad , TriQuad , RecQuad , TetQuad , HexQuad , NoQuad }

enum

ElementTypeId {
Point1 , Line2 , Line3 , Line4 ,
Tri3 , Tri6 , Tri9 , Tri10 ,
Rec4 , Rec8 , Rec9 , Rec12 ,
Rec16 , Tet4 , Tet10 , Tet16 ,
Hex8 , Hex20 , Hex27 , Hex32 ,
Line2Face , Line3Face , Line4Face , Tri3Face ,
Tri6Face , Tri9Face , Tri10Face , Rec4Face ,
Rec8Face , Rec9Face , Rec12Face , Rec16Face ,
Tet4Face , Tet10Face , Tet16Face , Hex8Face ,
Hex20Face , Hex27Face , Hex32Face , Point1_Contact ,
Line2_Contact , Line3_Contact , Line4_Contact , Tri3_Contact ,
Tri6_Contact , Tri9_Contact , Tri10_Contact , Rec4_Contact ,
Rec8_Contact , Rec9_Contact , Rec12_Contact , Rec16_Contact ,
Line2Face_Contact , Line3Face_Contact , Line4Face_Contact , Tri3Face_Contact ,
Tri6Face_Contact , Tri9Face_Contact , Tri10Face_Contact , Rec4Face_Contact ,
Rec8Face_Contact , Rec9Face_Contact , Rec12Face_Contact , Rec16Face_Contact ,
Tet4Face_Contact , Tet10Face_Contact , Tet16Face_Contact , Hex8Face_Contact ,
Hex20Face_Contact , Hex27Face_Contact , Hex32Face_Contact , Line3Macro ,
Tri6Macro , Rec9Macro , Tet10Macro , Hex27Macro ,
NoRef
}

enum | ShapeFunctionTypeId { Point1Shape , Line2Shape , Line3Shape , Line4Shape , Tri3Shape , Tri6Shape , Tri9Shape , Tri10Shape , Rec4Shape , Rec8Shape , Rec9Shape , Rec12Shape , Rec16Shape , Tet4Shape , Tet10Shape , Tet16Shape , Hex8Shape , Hex20Shape , Hex27Shape , Hex32Shape , NoShape }

## Functions

void | Assemble_PDE (const NodeFile *nodes, const ElementFile *elements, escript::ASM_ptr S, escript::Data &F, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_Points (const AssembleParameters &p, const escript::Data &d_dirac, const escript::Data &y_dirac)
void | Assemble_PDE_Single_1D (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_Single_2D (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_Single_3D (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_Single_C (const AssembleParameters &p, const escript::Data &D, const escript::Data &Y)
void | Assemble_PDE_System_1D (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_System_2D (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_System_3D (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template<typename Scalar >
void | Assemble_PDE_System_C (const AssembleParameters &p, const escript::Data &D, const escript::Data &Y)
template<typename Scalar = double>
void | Assemble_addToSystemMatrix (escript::ASM_ptr S, int NN_Equa, const index_t *Nodes_Equa, int num_Equa, int NN_Sol, const index_t *Nodes_Sol, int num_Sol, const Scalar *array)
void | Assemble_LumpedSystem (const NodeFile *nodes, const ElementFile *elements, escript::Data &lumpedMat, const escript::Data &D, bool useHRZ)
template<typename Scalar >
void | Assemble_AverageElementData (const ElementFile *elements, escript::Data &out, const escript::Data &in)
| averages data More...
template<typename Scalar >
void | Assemble_CopyElementData (const ElementFile *elements, escript::Data &out, const escript::Data &in)
| copies data between different types of elements More...
template<typename Scalar >
void | Assemble_CopyNodalData (const NodeFile *nodes, escript::Data &out, const escript::Data &in)
| copies data between different types of nodal representations More...
void | Assemble_NodeCoordinates (const NodeFile *nodes, escript::Data &x)
| copies node coordinates into expanded Data object `x` More...
void | Assemble_getNormal (const NodeFile *nodes, const ElementFile *elements, escript::Data &normals)
| calculates the normal vector at quadrature points on face elements More...
void | Assemble_getSize (const NodeFile *nodes, const ElementFile *elements, escript::Data &size)
template<typename Scalar >
void | Assemble_gradient (const NodeFile *nodes, const ElementFile *elements, escript::Data &gradient, const escript::Data &data)
template<typename Scalar >
void | Assemble_integrate (const NodeFile *nodes, const ElementFile *elements, const escript::Data &data, Scalar *integrals)
| integrates data on quadrature points More...
template<typename Scalar >
void | Assemble_interpolate (const NodeFile *nodes, const ElementFile *elements, const escript::Data &data, escript::Data &output)
| interpolates nodal data in a data array onto elements (=integration points) More...
void | Assemble_jacobians_1D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_2D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_2D_M1D_E1D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_2D_M1D_E1D_C (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_2D_M1D_E2D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_2D_M1D_E2D_C (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_3D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_3D_M2D_E2D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_3D_M2D_E2D_C (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_3D_M2D_E3D (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
void | Assemble_jacobians_3D_M2D_E3D_C (const double *coordinates, int numQuad, const double *QuadWeights, int numShape, dim_t numElements, int numNodes, const index_t *nodes, const double *DSDv, int numTest, const double *DTDv, double *dTdX, double *volume, const index_t *elementId)
template<>
void | Assemble_addToSystemMatrix< real_t > (escript::ASM_ptr S, int NN_Equa, const index_t *Nodes_Equa, int num_Equa, int NN_Sol, const index_t *Nodes_Sol, int num_Sol, const real_t *array)
template<>
void | Assemble_addToSystemMatrix< cplx_t > (escript::ASM_ptr S, int NN_Equa, const index_t *Nodes_Equa, int num_Equa, int NN_Sol, const index_t *Nodes_Sol, int num_Sol, const cplx_t *array)
template void | Assemble_AverageElementData< escript::DataTypes::real_t > (const ElementFile *elements, escript::Data &out, const escript::Data &in)
template void | Assemble_AverageElementData< escript::DataTypes::cplx_t > (const ElementFile *elements, escript::Data &out, const escript::Data &in)
template void | Assemble_CopyElementData< escript::DataTypes::real_t > (const ElementFile *elements, escript::Data &out, const escript::Data &in)
template void | Assemble_CopyElementData< escript::DataTypes::cplx_t > (const ElementFile *elements, escript::Data &out, const escript::Data &in)
template void | Assemble_CopyNodalData< escript::DataTypes::real_t > (const NodeFile *nodes, escript::Data &out, const escript::Data &in)
template void | Assemble_CopyNodalData< escript::DataTypes::cplx_t > (const NodeFile *nodes, escript::Data &out, const escript::Data &in)
template void | Assemble_gradient< escript::DataTypes::real_t > (const NodeFile *nodes, const ElementFile *elements, escript::Data &out, const escript::Data &data)
template void | Assemble_gradient< escript::DataTypes::cplx_t > (const NodeFile *nodes, const ElementFile *elements, escript::Data &out, const escript::Data &data)
template void | Assemble_integrate< escript::DataTypes::real_t > (const NodeFile *nodes, const ElementFile *elements, const escript::Data &data, escript::DataTypes::real_t *out)
template void | Assemble_integrate< escript::DataTypes::cplx_t > (const NodeFile *nodes, const ElementFile *elements, const escript::Data &data, escript::DataTypes::cplx_t *out)
template void | Assemble_interpolate< escript::DataTypes::real_t > (const NodeFile *nodes, const ElementFile *elements, const escript::Data &data, escript::Data &interpolated_data)
template void | Assemble_interpolate< escript::DataTypes::cplx_t > (const NodeFile *nodes, const ElementFile *elements, const escript::Data &data, escript::Data &interpolated_data)
void | setNumSamplesError (const char *c, int n0, int n1)
void | setShapeError (const char *c, int num, const int *dims)
template void | Assemble_PDE_Points< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &d, const escript::Data &y)
template void | Assemble_PDE_Points< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &d, const escript::Data &y)
template void | Assemble_PDE_Single_2D< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_Single_2D< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_Single_3D< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_Single_3D< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_Single_C< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &D, const escript::Data &Y)
template void | Assemble_PDE_Single_C< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &D, const escript::Data &Y)
template void | Assemble_PDE_System_2D< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_System_2D< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_System_3D< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_System_3D< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &A, const escript::Data &B, const escript::Data &C, const escript::Data &D, const escript::Data &X, const escript::Data &Y)
template void | Assemble_PDE_System_C< escript::DataTypes::real_t > (const AssembleParameters &p, const escript::Data &D, const escript::Data &Y)
template void | Assemble_PDE_System_C< escript::DataTypes::cplx_t > (const AssembleParameters &p, const escript::Data &D, const escript::Data &Y)
void | cleanupAndThrow (FinleyDomain *dom, string msg)
Domain_ptr | readMesh_driver (const bp::list &args)
Domain_ptr | readGmsh_driver (const bp::list &args)

Domain_ptr

brick (escript::JMPI jmpi, dim_t n0=1, dim_t n1=1, dim_t n2=1, int order=1, double l0=1.0, double l1=1.0, double l2=1.0, bool periodic0=false, bool periodic1=false, bool periodic2=false, int integrationOrder=-1, int reducedIntegrationOrder=-1, bool useElementsOnFace=false, bool useFullElementOrder=false, bool optimize=false, const std::vector< double > &points=std::vector< double >(), const std::vector< int > &tags=std::vector< int >(), const std::map< std::string, int > &tagNamesToNums=std::map< std::string, int >())

| Creates a rectangular mesh with n0 x n1 x n2 elements over the brick [0,l0] x [0,l1] x [0,l2]. More...
Domain_ptr | brick_driver (const bp::list &args)

Domain_ptr

rectangle (escript::JMPI jmpi, dim_t n0=1, dim_t n1=1, int order=1, double l0=1.0, double l1=1.0, bool periodic0=false, bool periodic1=false, int integrationOrder=-1, int reducedIntegrationOrder=-1, bool useElementsOnFace=false, bool useFullElementOrder=false, bool optimize=false, const std::vector< double > &points=std::vector< double >(), const std::vector< int > &tags=std::vector< int >(), const std::map< std::string, int > &tagNamesToNums=std::map< std::string, int >())

| Creates a 2-dimensional rectangular mesh with n0 x n1 elements over the rectangle [0,l0] x [0,l1]. More...
Domain_ptr | rectangle_driver (const bp::list &args)
Domain_ptr | meshMerge (const bp::list &meshList)
Domain_ptr | glueFaces (const bp::list &meshList, double safetyFactor, double tolerance, bool optimize)
Domain_ptr | joinFaces (const bp::list &meshList, double safetyFactor, double tolerance, bool optimize)
FINLEY_DLL_API escript::Domain_ptr | readMesh_driver (const boost::python::list &args)
| Python driver for readMesh() More...
FINLEY_DLL_API escript::Domain_ptr | readGmsh_driver (const boost::python::list &args)
| Python driver for readGMesh() More...
FINLEY_DLL_API escript::Domain_ptr | brick_driver (const boost::python::list &args)
| Python driver for brick() More...
FINLEY_DLL_API escript::Domain_ptr | rectangle_driver (const boost::python::list &args)
| Python driver for rectangle() More...
FINLEY_DLL_API escript::Domain_ptr | meshMerge (const boost::python::list &meshList)
| Merges a list of meshes into one list. More...
FINLEY_DLL_API escript::Domain_ptr | glueFaces (const boost::python::list &meshList, double safetyFactor=0.2, double tolerance=1.e-8, bool optimize=false)
| Detects matching faces in the mesh, removes them from the mesh and joins the elements touched by the face elements. More...
FINLEY_DLL_API escript::Domain_ptr | joinFaces (const boost::python::list &meshList, double safetyFactor=0.2, double tolerance=1.e-8, bool optimize=false)
| Detects matching faces in the mesh and replaces them by joint elements. More...
void | IndexList_insertElements (IndexList *index_list, ElementFile *elements, bool reduce_row_order, const index_t *row_map, bool reduce_col_order, const index_t *col_map)
void | IndexList_insertElementsWithRowRangeNoMainDiagonal (IndexList *index_list, index_t firstRow, index_t lastRow, ElementFile *elements, index_t *row_map, index_t *col_map)
bool | FaceCenterCompare (const FaceCenter &e1, const FaceCenter &e2)
| comparison function for findMatchingFaces More...
double | getDist (int e0, int i0, int e1, int i1, int numDim, int NN, const double *X)
static std::pair< index_t, index_t > | getGlobalRange (dim_t n, const index_t *id, escript::JMPI mpiInfo)
static void | scatterEntries (dim_t n, const index_t *index, index_t min_index, index_t max_index, index_t *Id_out, const index_t *Id_in, int *Tag_out, const int *Tag_in, index_t *globalDegreesOfFreedom_out, const index_t *globalDegreesOfFreedom_in, int numDim, double *Coordinates_out, const double *Coordinates_in)
static void | gatherEntries (dim_t n, const index_t *index, index_t min_index, index_t max_index, index_t *Id_out, const index_t *Id_in, int *Tag_out, const int *Tag_in, index_t *globalDegreesOfFreedom_out, const index_t *globalDegreesOfFreedom_in, int numDim, double *Coordinates_out, const double *Coordinates_in)
const QuadInfo * | QuadInfo_getInfo (QuadTypeId id)
void | Quad_getNodesTri (int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
void | Quad_getNodesTet (int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
void | Quad_getNodesRec (int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
void | Quad_getNodesHex (int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
void | Quad_getNodesPoint (int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
void | Quad_getNodesLine (int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
int | Quad_getNumNodesPoint (int order)
int | Quad_getNumNodesLine (int order)
int | Quad_getNumNodesTri (int order)
int | Quad_getNumNodesRec (int order)
int | Quad_getNumNodesTet (int order)
int | Quad_getNumNodesHex (int order)
int | Quad_MacroPoint (int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
int | Quad_MacroLine (int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
int | Quad_MacroTri (int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
int | Quad_MacroRec (int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
int | Quad_MacroTet (int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
int | Quad_MacroHex (int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
void | Quad_makeNodesOnFace (int, int, double *, double *, Quad_getNodes)
void | Shape_Point1 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Line2 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Line3 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Line4 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tri3 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tri6 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tri9 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tri10 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Rec4 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Rec8 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Rec9 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Rec12 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Rec16 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tet4 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tet10 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Tet16 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Hex8 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Hex20 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Hex27 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
void | Shape_Hex32 (int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)

## Variables

static double | lockingGridSize = 0.
const QuadInfo | QuadInfoList []
Quad_getMacro | Quad_MacroPoint
Quad_getMacro | Quad_MacroLine
Quad_getMacro | Quad_MacroTri
Quad_getMacro | Quad_MacroRec
Quad_getMacro | Quad_MacroTet
Quad_getMacro | Quad_MacroHex
Quad_getNodes | Quad_getNodesTri
Quad_getNodes | Quad_getNodesTet
Quad_getNodes | Quad_getNodesRec
Quad_getNodes | Quad_getNodesHex
Quad_getNodes | Quad_getNodesLine
Quad_getNodes | Quad_getNodesPoint
Quad_getNodes | Quad_getNodesTriOnFace
Quad_getNodes | Quad_getNodesRecOnFace
Quad_getNodes | Quad_getNodesLineOnFace
Quad_getNodes | Quad_getNodesPointOnFace
Quad_getNodes | Quad_getNodesTriMacro
Quad_getNodes | Quad_getNodesTetMacro
Quad_getNodes | Quad_getNodesRecMacro
Quad_getNodes | Quad_getNodesHexMacro
Quad_getNodes | Quad_getNodesLineMacro
Quad_getNumNodes | Quad_getNumNodesPoint
Quad_getNumNodes | Quad_getNumNodesLine
Quad_getNumNodes | Quad_getNumNodesTri
Quad_getNumNodes | Quad_getNumNodesRec
Quad_getNumNodes | Quad_getNumNodesTet
Quad_getNumNodes | Quad_getNumNodesHex
const ReferenceElementInfo | ReferenceElement_InfoList []
| this list has been generated by generateReferenceElementList.py More...
const ShapeFunctionInfo | ShapeFunction_InfoList []
ShapeFunction_Evaluation | Shape_Point1
ShapeFunction_Evaluation | Shape_Line2
ShapeFunction_Evaluation | Shape_Line3
ShapeFunction_Evaluation | Shape_Line4
ShapeFunction_Evaluation | Shape_Tri3
ShapeFunction_Evaluation | Shape_Tri6
ShapeFunction_Evaluation | Shape_Tri9
ShapeFunction_Evaluation | Shape_Tri10
ShapeFunction_Evaluation | Shape_Rec4
ShapeFunction_Evaluation | Shape_Rec8
ShapeFunction_Evaluation | Shape_Rec9
ShapeFunction_Evaluation | Shape_Rec12
ShapeFunction_Evaluation | Shape_Rec16
ShapeFunction_Evaluation | Shape_Tet4
ShapeFunction_Evaluation | Shape_Tet10
ShapeFunction_Evaluation | Shape_Tet16
ShapeFunction_Evaluation | Shape_Hex8
ShapeFunction_Evaluation | Shape_Hex20
ShapeFunction_Evaluation | Shape_Hex27
ShapeFunction_Evaluation | Shape_Hex32

## Detailed Description

A suite of factory methods for creating various finley domains.

Some utility routines.

## Typedef Documentation

## const_ReferenceElement_ptr

typedef boost::shared_ptr<const ReferenceElement> finley::const_ReferenceElement_ptr

## const_ReferenceElementSet_ptr

typedef boost::shared_ptr<const ReferenceElementSet> finley::const_ReferenceElementSet_ptr

## const_ShapeFunction_ptr

typedef boost::shared_ptr<const ShapeFunction> finley::const_ShapeFunction_ptr

## Quad_getMacro

typedef int() finley::Quad_getMacro(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFfv)

## Quad_getNodes

typedef void() finley::Quad_getNodes(int, std::vector< double > &, std::vector< double > &)

## Quad_getNumNodes

typedef int() finley::Quad_getNumNodes(int)

## ReferenceElement_ptr

typedef boost::shared_ptr<ReferenceElement> finley::ReferenceElement_ptr

## ShapeFunction_Evaluation

typedef void() finley::ShapeFunction_Evaluation(int, std::vector< double > &, std::vector< double > &, std::vector< double > &)

## TagMap

typedef std::map<std::string, int> finley::TagMap

## Enumeration Type Documentation

## anonymous enum

anonymous enum

Enumerator
DegreesOfFreedom |
ReducedDegreesOfFreedom |
Nodes |
ReducedNodes |
Elements |
ReducedElements |
FaceElements |
ReducedFaceElements |
Points |
ContactElementsZero |
ReducedContactElementsZero |
ContactElementsOne |
ReducedContactElementsOne |

## ElementTypeId

enum finley::ElementTypeId

Enumerator
Point1 |
Line2 |
Line3 |
Line4 |
Tri3 |
Tri6 |
Tri9 |
Tri10 |
Rec4 |
Rec8 |
Rec9 |
Rec12 |
Rec16 |
Tet4 |
Tet10 |
Tet16 |
Hex8 |
Hex20 |
Hex27 |
Hex32 |
Line2Face |
Line3Face |
Line4Face |
Tri3Face |
Tri6Face |
Tri9Face |
Tri10Face |
Rec4Face |
Rec8Face |
Rec9Face |
Rec12Face |
Rec16Face |
Tet4Face |
Tet10Face |
Tet16Face |
Hex8Face |
Hex20Face |
Hex27Face |
Hex32Face |
Point1_Contact |
Line2_Contact |
Line3_Contact |
Line4_Contact |
Tri3_Contact |
Tri6_Contact |
Tri9_Contact |
Tri10_Contact |
Rec4_Contact |
Rec8_Contact |
Rec9_Contact |
Rec12_Contact |
Rec16_Contact |
Line2Face_Contact |
Line3Face_Contact |
Line4Face_Contact |
Tri3Face_Contact |
Tri6Face_Contact |
Tri9Face_Contact |
Tri10Face_Contact |
Rec4Face_Contact |
Rec8Face_Contact |
Rec9Face_Contact |
Rec12Face_Contact |
Rec16Face_Contact |
Tet4Face_Contact |
Tet10Face_Contact |
Tet16Face_Contact |
Hex8Face_Contact |
Hex20Face_Contact |
Hex27Face_Contact |
Hex32Face_Contact |
Line3Macro |
Tri6Macro |
Rec9Macro |
Tet10Macro |
Hex27Macro |
NoRef |

## QuadTypeId

enum finley::QuadTypeId

Enumerator
PointQuad |
LineQuad |
TriQuad |
RecQuad |
TetQuad |
HexQuad |
NoQuad |

## ShapeFunctionTypeId

enum finley::ShapeFunctionTypeId

Enumerator
Point1Shape |
Line2Shape |
Line3Shape |
Line4Shape |
Tri3Shape |
Tri6Shape |
Tri9Shape |
Tri10Shape |
Rec4Shape |
Rec8Shape |
Rec9Shape |
Rec12Shape |
Rec16Shape |
Tet4Shape |
Tet10Shape |
Tet16Shape |
Hex8Shape |
Hex20Shape |
Hex27Shape |
Hex32Shape |
NoShape |

## SystemMatrixType

enum finley::SystemMatrixType

Enumerator
SMT_PASO |
SMT_TRILINOS |
SMT_COMPLEX |
SMT_UNROLL |

## Function Documentation

## Assemble_addToSystemMatrix()

template<typename Scalar = double>

void finley::Assemble_addToSystemMatrix | ( | escript::ASM_ptr | S,
|  | int | NN_Equa,
|  | const index_t * | Nodes_Equa,
|  | int | num_Equa,
|  | int | NN_Sol,
|  | const index_t * | Nodes_Sol,
|  | int | num_Sol,
|  | const Scalar * | array
| ) |  |

Referenced by Assemble_PDE_Points(), Assemble_PDE_Single_1D(), Assemble_PDE_Single_2D(), Assemble_PDE_Single_3D(), Assemble_PDE_Single_C(), Assemble_PDE_System_1D(), Assemble_PDE_System_2D(), Assemble_PDE_System_3D(), and Assemble_PDE_System_C().

## Assemble_addToSystemMatrix< cplx_t >()

template<>

void finley::Assemble_addToSystemMatrix< cplx_t > | ( | escript::ASM_ptr | S,
|  | int | NN_Equa,
|  | const index_t * | Nodes_Equa,
|  | int | num_Equa,
|  | int | NN_Sol,
|  | const index_t * | Nodes_Sol,
|  | int | num_Sol,
|  | const cplx_t * | array
| ) |  |

References MATRIX_FORMAT_BLK1, MATRIX_FORMAT_OFFSET1, S, and paso::SystemMatrix< T >::type.

## Assemble_addToSystemMatrix< real_t >()

template<>

void finley::Assemble_addToSystemMatrix< real_t > | ( | escript::ASM_ptr | S,
|  | int | NN_Equa,
|  | const index_t * | Nodes_Equa,
|  | int | num_Equa,
|  | int | NN_Sol,
|  | const index_t * | Nodes_Sol,
|  | int | num_Sol,
|  | const real_t * | array
| ) |  |

References MATRIX_FORMAT_CSC, S, and paso::SystemMatrix< T >::type.

## Assemble_AverageElementData()

template<typename Scalar >

void finley::Assemble_AverageElementData | ( | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

averages data

References escript::Data::actsExpanded(), escript::Data::getDataPointSize(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), finley::util::hasReducedIntegrationOrder(), INDEX2, escript::Data::isComplex(), finley::ElementFile::numElements, escript::Data::numSamplesEqual(), finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and escript::Scalar().

## Assemble_AverageElementData< escript::DataTypes::cplx_t >()

template void finley::Assemble_AverageElementData< escript::DataTypes::cplx_t > | ( | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

## Assemble_AverageElementData< escript::DataTypes::real_t >()

template void finley::Assemble_AverageElementData< escript::DataTypes::real_t > | ( | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

## Assemble_CopyElementData()

template<typename Scalar >

void finley::Assemble_CopyElementData | ( | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

copies data between different types of elements

References escript::Data::actsExpanded(), escript::Data::getDataPointSize(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), finley::util::hasReducedIntegrationOrder(), escript::Data::isComplex(), finley::ElementFile::numElements, escript::Data::numSamplesEqual(), finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and escript::Scalar().

## Assemble_CopyElementData< escript::DataTypes::cplx_t >()

template void finley::Assemble_CopyElementData< escript::DataTypes::cplx_t > | ( | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

## Assemble_CopyElementData< escript::DataTypes::real_t >()

template void finley::Assemble_CopyElementData< escript::DataTypes::real_t > | ( | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

## Assemble_CopyNodalData()

template<typename Scalar >

void finley::Assemble_CopyNodalData | ( | const NodeFile * | nodes,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

copies data between different types of nodal representations

References escript::Data::actsExpanded(), finley::NodeFile::borrowDegreesOfFreedomTarget(), finley::NodeFile::borrowReducedDegreesOfFreedomTarget(), finley::NodeFile::borrowReducedNodesTarget(), finley::NodeFile::borrowTargetDegreesOfFreedom(), finley::NodeFile::borrowTargetReducedDegreesOfFreedom(), finley::NodeFile::borrowTargetReducedNodes(), paso::util::copy(), FINLEY_DEGREES_OF_FREEDOM, FINLEY_NODES, FINLEY_REDUCED_DEGREES_OF_FREEDOM, FINLEY_REDUCED_NODES, escript::Data::getDataPointSize(), escript::Data::getFunctionSpace(), escript::Data::getNumDataPoints(), finley::NodeFile::getNumDegreesOfFreedom(), finley::NodeFile::getNumNodes(), finley::NodeFile::getNumReducedDegreesOfFreedom(), finley::NodeFile::getNumReducedNodes(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), escript::Data::isComplex(), finley::NodeFile::MPIInfo, escript::Data::numSamplesEqual(), escript::Data::requireWrite(), and escript::Scalar().

## Assemble_CopyNodalData< escript::DataTypes::cplx_t >()

template void finley::Assemble_CopyNodalData< escript::DataTypes::cplx_t > | ( | const NodeFile * | nodes,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

## Assemble_CopyNodalData< escript::DataTypes::real_t >()

template void finley::Assemble_CopyNodalData< escript::DataTypes::real_t > | ( | const NodeFile * | nodes,
|  | escript::Data & | out,
|  | const escript::Data & | in
| ) |  |

## Assemble_getNormal()

void finley::Assemble_getNormal | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::Data & | normals
| ) |  |

calculates the normal vector at quadrature points on face elements

References escript::Data::actsExpanded(), finley::NodeFile::Coordinates, FINLEY_CONTACT_ELEMENTS_2, finley::util::gather(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), finley::util::hasReducedIntegrationOrder(), INDEX2, escript::Data::isDataPointShapeEqual(), finley::ElementFile::Nodes, finley::util::normalVector(), finley::NodeFile::numDim, finley::ElementFile::numElements, finley::ElementFile::numNodes, escript::Data::numSamplesEqual(), finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and finley::util::smallMatMult().

Referenced by finley::FinleyDomain::setToNormal().

## Assemble_getSize()

void finley::Assemble_getSize | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::Data & | size
| ) |  |

calculates the minimum distance between two vertices of elements and assigns the value to each quadrature point in `size`

References escript::Data::actsExpanded(), finley::NodeFile::Coordinates, FINLEY_CONTACT_ELEMENTS_2, finley::util::gather(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), finley::util::hasReducedIntegrationOrder(), INDEX2, escript::Data::isDataPointShapeEqual(), finley::ElementFile::Nodes, finley::NodeFile::numDim, finley::ElementFile::numElements, finley::ElementFile::numNodes, escript::Data::numSamplesEqual(), finley::ElementFile::referenceElementSet, and escript::Data::requireWrite().

Referenced by finley::FinleyDomain::setToSize().

## Assemble_gradient()

template<typename Scalar >

void finley::Assemble_gradient | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::Data & | gradient,
|  | const escript::Data & | data
| ) |  |

Assemblage of Jacobians: calculates the gradient of nodal data at quadrature points

References escript::Data::actsExpanded(), finley::ElementFile_Jacobians::BasisFunctions, finley::ElementFile::borrowJacobians(), finley::NodeFile::borrowTargetDegreesOfFreedom(), finley::NodeFile::borrowTargetReducedDegreesOfFreedom(), finley::NodeFile::borrowTargetReducedNodes(), finley::ElementFile_Jacobians::DSDX, FINLEY_CONTACT_ELEMENTS_2, FINLEY_DEGREES_OF_FREEDOM, FINLEY_NODES, FINLEY_REDUCED_CONTACT_ELEMENTS_2, FINLEY_REDUCED_DEGREES_OF_FREEDOM, FINLEY_REDUCED_NODES, escript::Data::getDataPointSize(), escript::Data::getFunctionSpace(), finley::NodeFile::getNumDegreesOfFreedom(), finley::NodeFile::getNumNodes(), finley::NodeFile::getNumReducedDegreesOfFreedom(), finley::NodeFile::getNumReducedNodes(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), finley::util::hasReducedIntegrationOrder(), INDEX2, INDEX4, INDEX5, finley::ElementFile::MPIInfo, finley::ElementFile::Nodes, finley::ElementFile_Jacobians::numDim, finley::ElementFile::numElements, finley::ElementFile::numNodes, finley::ElementFile_Jacobians::numQuadTotal, escript::Data::numSamplesEqual(), finley::ElementFile_Jacobians::numShapesTotal, finley::ElementFile_Jacobians::numSub, finley::ElementFile_Jacobians::offsets, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and escript::Scalar().

## Assemble_gradient< escript::DataTypes::cplx_t >()

template void finley::Assemble_gradient< escript::DataTypes::cplx_t > | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | data
| ) |  |

## Assemble_gradient< escript::DataTypes::real_t >()

template void finley::Assemble_gradient< escript::DataTypes::real_t > | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::Data & | out,
|  | const escript::Data & | data
| ) |  |

## Assemble_integrate()

template<typename Scalar >

void finley::Assemble_integrate | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | const escript::Data & | data,
|  | Scalar * | integrals
| ) |  |

integrates data on quadrature points

References escript::Data::actsExpanded(), finley::ElementFile::borrowJacobians(), escript::Data::getDataPointSize(), escript::Data::getFunctionSpace(), escript::getMPIRankWorld(), escript::Data::getNumberOfTaggedValues(), escript::Data::getSampleDataRO(), escript::FunctionSpace::getTypeCode(), finley::util::hasReducedIntegrationOrder(), INDEX2, finley::NodeFile::MPIInfo, finley::ElementFile::numElements, finley::ElementFile_Jacobians::numQuadTotal, escript::Data::numSamplesEqual(), finley::ElementFile::Owner, Points, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

Referenced by finley::FinleyDomain::setToIntegralsWorker().

## Assemble_integrate< escript::DataTypes::cplx_t >()

template void finley::Assemble_integrate< escript::DataTypes::cplx_t > | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | const escript::Data & | data,
|  | escript::DataTypes::cplx_t * | out
| ) |  |

## Assemble_integrate< escript::DataTypes::real_t >()

template void finley::Assemble_integrate< escript::DataTypes::real_t > | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | const escript::Data & | data,
|  | escript::DataTypes::real_t * | out
| ) |  |

## Assemble_interpolate()

template<typename Scalar >

void finley::Assemble_interpolate | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | const escript::Data & | data,
|  | escript::Data & | output
| ) |  |

interpolates nodal data in a data array onto elements (=integration points)

References escript::Data::actsExpanded(), finley::NodeFile::borrowTargetDegreesOfFreedom(), finley::NodeFile::borrowTargetNodes(), finley::NodeFile::borrowTargetReducedDegreesOfFreedom(), finley::NodeFile::borrowTargetReducedNodes(), FINLEY_CONTACT_ELEMENTS_2, FINLEY_DEGREES_OF_FREEDOM, FINLEY_NODES, FINLEY_REDUCED_DEGREES_OF_FREEDOM, FINLEY_REDUCED_NODES, escript::Data::getDataPointSize(), escript::Data::getFunctionSpace(), finley::NodeFile::getNumDegreesOfFreedom(), finley::NodeFile::getNumNodes(), finley::NodeFile::getNumReducedDegreesOfFreedom(), finley::NodeFile::getNumReducedNodes(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), finley::util::hasReducedIntegrationOrder(), INDEX2, INDEX3, finley::ElementFile::MPIInfo, finley::ElementFile::Nodes, finley::ElementFile::numElements, finley::ElementFile::numNodes, escript::Data::numSamplesEqual(), finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and escript::Scalar().

## Assemble_interpolate< escript::DataTypes::cplx_t >()

template void finley::Assemble_interpolate< escript::DataTypes::cplx_t > | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | const escript::Data & | data,
|  | escript::Data & | interpolated_data
| ) |  |

## Assemble_interpolate< escript::DataTypes::real_t >()

template void finley::Assemble_interpolate< escript::DataTypes::real_t > | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | const escript::Data & | data,
|  | escript::Data & | interpolated_data
| ) |  |

## Assemble_jacobians_1D()

void finley::Assemble_jacobians_1D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_2D()

void finley::Assemble_jacobians_2D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_2D_M1D_E1D()

void finley::Assemble_jacobians_2D_M1D_E1D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_2D_M1D_E1D_C()

void finley::Assemble_jacobians_2D_M1D_E1D_C | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_2D_M1D_E2D()

void finley::Assemble_jacobians_2D_M1D_E2D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_2D_M1D_E2D_C()

void finley::Assemble_jacobians_2D_M1D_E2D_C | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_3D()

void finley::Assemble_jacobians_3D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_3D_M2D_E2D()

void finley::Assemble_jacobians_3D_M2D_E2D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_3D_M2D_E2D_C()

void finley::Assemble_jacobians_3D_M2D_E2D_C | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_3D_M2D_E3D()

void finley::Assemble_jacobians_3D_M2D_E3D | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_jacobians_3D_M2D_E3D_C()

void finley::Assemble_jacobians_3D_M2D_E3D_C | ( | const double * | coordinates,
|  | int | numQuad,
|  | const double * | QuadWeights,
|  | int | numShape,
|  | dim_t | numElements,
|  | int | numNodes,
|  | const index_t * | nodes,
|  | const double * | DSDv,
|  | int | numTest,
|  | const double * | DTDv,
|  | double * | dTdX,
|  | double * | volume,
|  | const index_t * | elementId
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

Referenced by finley::ElementFile::borrowJacobians().

## Assemble_LumpedSystem()

void finley::Assemble_LumpedSystem | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::Data & | lumpedMat,
|  | const escript::Data & | D,
|  | bool | useHRZ
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), finley::ElementFile_Jacobians::BasisFunctions, finley::ElementFile::Color, FINLEY_ELEMENTS, FINLEY_FACE_ELEMENTS, FINLEY_POINTS, FINLEY_REDUCED_ELEMENTS, FINLEY_REDUCED_FACE_ELEMENTS, escript::Data::getDataPointShape(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), INDEX2, INDEX3, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numQuadTotal, escript::Data::numSamplesEqual(), finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, S, and finley::ElementFile_Jacobians::volume.

Referenced by finley::FinleyDomain::addPDEToLumpedSystem().

## Assemble_NodeCoordinates()

void finley::Assemble_NodeCoordinates | ( | const NodeFile * | nodes,
|  | escript::Data & | x
| ) |  |

copies node coordinates into expanded Data object `x`

References escript::Data::actsExpanded(), finley::NodeFile::Coordinates, FINLEY_NODES, escript::Data::getDataPointShape(), escript::Data::getFunctionSpace(), finley::NodeFile::getNumNodes(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), INDEX2, finley::NodeFile::numDim, escript::Data::numSamplesEqual(), and escript::Data::requireWrite().

Referenced by finley::FinleyDomain::setToX().

## Assemble_PDE()

void finley::Assemble_PDE | ( | const NodeFile * | nodes,
|  | const ElementFile * | elements,
|  | escript::ASM_ptr | S,
|  | escript::Data & | F,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

Entry point for PDE assembly. Checks arguments, populates an AssembleParameters structure and calls appropriate method for the actual work.

References Assemble_PDE_Single_1D(), Assemble_PDE_System_1D(), FINLEY_CONTACT_ELEMENTS_1, FINLEY_CONTACT_ELEMENTS_2, FINLEY_ELEMENTS, FINLEY_FACE_ELEMENTS, FINLEY_POINTS, FINLEY_REDUCED_CONTACT_ELEMENTS_1, FINLEY_REDUCED_CONTACT_ELEMENTS_2, FINLEY_REDUCED_ELEMENTS, FINLEY_REDUCED_FACE_ELEMENTS, escript::Data::getFunctionSpace(), escript::FunctionSpace::getTypeCode(), escript::Data::isComplex(), escript::Data::isDataPointShapeEqual(), escript::Data::isEmpty(), finley::AssembleParameters::numComp, finley::AssembleParameters::numDim, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadTotal, escript::Data::numSamplesEqual(), finley::AssembleParameters::numSides, S, setNumSamplesError(), and setShapeError().

Referenced by finley::FinleyDomain::addPDEToRHS(), finley::FinleyDomain::addPDEToSystem(), and finley::FinleyDomain::addPDEToTransportProblem().

## Assemble_PDE_Points()

template<typename Scalar >

void finley::Assemble_PDE_Points | ( | const AssembleParameters & | p,
|  | const escript::Data & | d_dirac,
|  | const escript::Data & | y_dirac
| ) |  |

References finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile::Color, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::S, and escript::Scalar().

## Assemble_PDE_Points< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_Points< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | d,
|  | const escript::Data & | y
| ) |  |

## Assemble_PDE_Points< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_Points< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | d,
|  | const escript::Data & | y
| ) |  |

## Assemble_PDE_Single_1D()

void finley::Assemble_PDE_Single_1D | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, DIM, finley::ElementFile_Jacobians::DSDX, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, INDEX5, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, and finley::ElementFile_Jacobians::volume.

Referenced by Assemble_PDE().

## Assemble_PDE_Single_2D()

template<typename Scalar >

void finley::Assemble_PDE_Single_2D | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, DIM, finley::ElementFile_Jacobians::DSDX, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, INDEX5, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

## Assemble_PDE_Single_2D< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_Single_2D< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_Single_2D< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_Single_2D< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_Single_3D()

template<typename Scalar >

void finley::Assemble_PDE_Single_3D | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, DIM, finley::ElementFile_Jacobians::DSDX, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, INDEX5, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

## Assemble_PDE_Single_3D< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_Single_3D< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_Single_3D< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_Single_3D< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_Single_C()

template<typename Scalar >

void finley::Assemble_PDE_Single_C | ( | const AssembleParameters & | p,
|  | const escript::Data & | D,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

## Assemble_PDE_Single_C< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_Single_C< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | D,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_Single_C< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_Single_C< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | D,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_System_1D()

void finley::Assemble_PDE_System_1D | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, DIM, finley::ElementFile_Jacobians::DSDX, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, INDEX5, INDEX6, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, and finley::ElementFile_Jacobians::volume.

Referenced by Assemble_PDE().

## Assemble_PDE_System_2D()

template<typename Scalar >

void finley::Assemble_PDE_System_2D | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, DIM, finley::ElementFile_Jacobians::DSDX, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, INDEX5, INDEX6, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

## Assemble_PDE_System_2D< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_System_2D< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_System_2D< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_System_2D< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_System_3D()

template<typename Scalar >

void finley::Assemble_PDE_System_3D | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, DIM, finley::ElementFile_Jacobians::DSDX, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, INDEX5, INDEX6, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

## Assemble_PDE_System_3D< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_System_3D< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_System_3D< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_System_3D< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | A,
|  | const escript::Data & | B,
|  | const escript::Data & | C,
|  | const escript::Data & | D,
|  | const escript::Data & | X,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_System_C()

template<typename Scalar >

void finley::Assemble_PDE_System_C | ( | const AssembleParameters & | p,
|  | const escript::Data & | D,
|  | const escript::Data & | Y
| ) |  |

References escript::Data::actsExpanded(), finley::util::addScatter(), Assemble_addToSystemMatrix(), finley::ElementFile_Jacobians::BasisFunctions, finley::AssembleParameters::col_numShapes, finley::AssembleParameters::col_numShapesTotal, finley::ElementFile::Color, finley::AssembleParameters::elements, finley::AssembleParameters::F, escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), INDEX2, INDEX3, INDEX4, escript::Data::isEmpty(), finley::ElementFile::minColor, finley::AssembleParameters::NN, finley::ElementFile::Nodes, finley::AssembleParameters::numComp, finley::ElementFile::numElements, finley::AssembleParameters::numEqu, finley::AssembleParameters::numQuadSub, finley::AssembleParameters::numSub, escript::Data::requireWrite(), finley::AssembleParameters::row_DOF, finley::AssembleParameters::row_DOF_UpperBound, finley::AssembleParameters::row_jac, finley::AssembleParameters::row_node, finley::AssembleParameters::row_numShapes, finley::AssembleParameters::row_numShapesTotal, finley::AssembleParameters::S, S, escript::Scalar(), and finley::ElementFile_Jacobians::volume.

## Assemble_PDE_System_C< escript::DataTypes::cplx_t >()

template void finley::Assemble_PDE_System_C< escript::DataTypes::cplx_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | D,
|  | const escript::Data & | Y
| ) |  |

## Assemble_PDE_System_C< escript::DataTypes::real_t >()

template void finley::Assemble_PDE_System_C< escript::DataTypes::real_t > | ( | const AssembleParameters & | p,
|  | const escript::Data & | D,
|  | const escript::Data & | Y
| ) |  |

## brick()

FINLEY_DLL_API escript::Domain_ptr finley::brick | ( | escript::JMPI | jmpi,
|  | dim_t | n0 = `1`,
|  | dim_t | n1 = `1`,
|  | dim_t | n2 = `1`,
|  | int | order = `1`,
|  | double | l0 = `1.0`,
|  | double | l1 = `1.0`,
|  | double | l2 = `1.0`,
|  | bool | periodic0 = `false`,
|  | bool | periodic1 = `false`,
|  | bool | periodic2 = `false`,
|  | int | integrationOrder = `-1`,
|  | int | reducedIntegrationOrder = `-1`,
|  | bool | useElementsOnFace = `false`,
|  | bool | useFullElementOrder = `false`,
|  | bool | optimize = `false`,
|  | const std::vector< double > & | points = `std::vector< double >()`,
|  | const std::vector< int > & | tags = `std::vector< int >()`,
|  | const std::map< std::string, int > & | tagNamesToNums = `std::map< std::string, int >()`
| ) |  |

Creates a rectangular mesh with n0 x n1 x n2 elements over the brick [0,l0] x [0,l1] x [0,l2].

Parameters

  jmpi | pointer to MPI world information structure
  n0,n1,n2 | number of elements in each dimension
  order | order of shape functions (1, 2, or -1 for macro elements of order 1)
  l0,l1,l2 | length of each side of brick
  periodic0,periodic1,periodic2 | whether or not boundary conditions of the dimension are periodic
  integrationOrder | order of the quadrature scheme. If <0 the order is selected automatically.
  reducedIntegrationOrder | order of the reduced quadrature scheme. If <0 the order is selected automatically.
  useElementsOnFace | whether or not to use elements on face
  useFullElementOrder | whether to use second order elements
  optimize | whether to apply optimization of node labels
  points | dirac points to add
  tags |
  tagNamesToNums |

References finley::FinleyDomain::addDiracPoints(), finley::FinleyDomain::getPoints(), paso::util::l2(), finley::FinleyDomain::setTagMap(), and finley::ElementFile::updateTagList().

Referenced by brick_driver().

## brick_driver() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::brick_driver | ( | const boost::python::list & | args | ) |

Python driver for brick()

Parameters

  args | see brick() definition for order of params

## brick_driver() [2/2]

Domain_ptr finley::brick_driver | ( | const bp::list & | args | ) |

References brick(), escript::makeInfo(), and MPI_COMM_WORLD.

Referenced by BOOST_PYTHON_MODULE().

## cleanupAndThrow()

void finley::cleanupAndThrow | ( | FinleyDomain * | dom,
|  | string | msg
| ) |  |

inline

Referenced by finley::FinleyDomain::load().

## FaceCenterCompare()

bool finley::FaceCenterCompare | ( | const FaceCenter & | e1,
|  | const FaceCenter & | e2
| ) |  |

comparison function for findMatchingFaces

References lockingGridSize, finley::FaceCenter::refId, and finley::FaceCenter::x.

Referenced by finley::FinleyDomain::findMatchingFaces().

## gatherEntries()

static void finley::gatherEntries | ( | dim_t | n,
|  | const index_t * | index,
|  | index_t | min_index,
|  | index_t | max_index,
|  | index_t * | Id_out,
|  | const index_t * | Id_in,
|  | int * | Tag_out,
|  | const int * | Tag_in,
|  | index_t * | globalDegreesOfFreedom_out,
|  | const index_t * | globalDegreesOfFreedom_in,
|  | int | numDim,
|  | double * | Coordinates_out,
|  | const double * | Coordinates_in
| ) |  |

static

References INDEX2.

Referenced by finley::NodeFile::gather(), and finley::NodeFile::gather_global().

## getDist()

double finley::getDist | ( | int | e0,
|  | int | i0,
|  | int | e1,
|  | int | i1,
|  | int | numDim,
|  | int | NN,
|  | const double * | X
| ) |  |

inline

References INDEX3.

Referenced by finley::FinleyDomain::findMatchingFaces().

## getGlobalRange()

static std::pair<index_t,index_t> finley::getGlobalRange | ( | dim_t | n,
|  | const index_t * | id,
|  | escript::JMPI | mpiInfo
| ) |  |

static

References finley::util::getMinMaxInt(), and MPI_MAX.

Referenced by finley::NodeFile::getGlobalDOFRange(), finley::NodeFile::getGlobalIdRange(), and finley::NodeFile::getGlobalNodeIDIndexRange().

## glueFaces() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::glueFaces | ( | const boost::python::list & | meshList,
|  | double | safetyFactor = `0.2`,
|  | double | tolerance = `1.e-8`,
|  | bool | optimize = `false`
| ) |  |

Detects matching faces in the mesh, removes them from the mesh and joins the elements touched by the face elements.

Parameters

  meshList | The list of meshes.
  safetyFactor |
  tolerance |
  optimize | switches on the optimization of node labels

## glueFaces() [2/2]

Domain_ptr finley::glueFaces | ( | const bp::list & | meshList,
|  | double | safetyFactor,
|  | double | tolerance,
|  | bool | optimize
| ) |  |

References finley::FinleyDomain::glueFaces(), and meshMerge().

Referenced by BOOST_PYTHON_MODULE().

## IndexList_insertElements()

void finley::IndexList_insertElements | ( | IndexList * | index_list,
|  | ElementFile * | elements,
|  | bool | reduce_row_order,
|  | const index_t * | row_map,
|  | bool | reduce_col_order,
|  | const index_t * | col_map
| ) |  |

inserts the contributions from the element matrices of elements into the row index col.

References finley::ElementFile::Color, INDEX2, escript::IndexList::insertIndex(), finley::ElementFile::minColor, finley::ElementFile::Nodes, finley::ElementFile::numElements, finley::ElementFile::numNodes, and finley::ElementFile::referenceElementSet.

## IndexList_insertElementsWithRowRangeNoMainDiagonal()

void finley::IndexList_insertElementsWithRowRangeNoMainDiagonal | ( | IndexList * | index_list,
|  | index_t | firstRow,
|  | index_t | lastRow,
|  | ElementFile * | elements,
|  | index_t * | row_map,
|  | index_t * | col_map
| ) |  |

References finley::ElementFile::Color, INDEX2, escript::IndexList::insertIndex(), finley::ElementFile::minColor, finley::ElementFile::Nodes, finley::ElementFile::numElements, and finley::ElementFile::numNodes.

Referenced by finley::FinleyDomain::optimizeDOFDistribution(), and finley::FinleyDomain::optimizeDOFLabeling().

## joinFaces() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::joinFaces | ( | const boost::python::list & | meshList,
|  | double | safetyFactor = `0.2`,
|  | double | tolerance = `1.e-8`,
|  | bool | optimize = `false`
| ) |  |

Detects matching faces in the mesh and replaces them by joint elements.

Parameters

  meshList | The list of meshes
  safetyFactor |
  tolerance |
  optimize | switches on the optimization of node labels

## joinFaces() [2/2]

Domain_ptr finley::joinFaces | ( | const bp::list & | meshList,
|  | double | safetyFactor,
|  | double | tolerance,
|  | bool | optimize
| ) |  |

References finley::FinleyDomain::joinFaces(), and meshMerge().

Referenced by BOOST_PYTHON_MODULE().

## meshMerge() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::meshMerge | ( | const boost::python::list & | meshList | ) |

Merges a list of meshes into one list.

Parameters

  meshList | Input - The list of meshes.

## meshMerge() [2/2]

Domain_ptr finley::meshMerge | ( | const bp::list & | meshList | ) |

References escript::AbstractDomain::getPtr().

Referenced by BOOST_PYTHON_MODULE(), glueFaces(), and joinFaces().

## Quad_getNodesHex()

void finley::Quad_getNodesHex | ( | int | numQuadNodes,
|  | std::vector< double > & | quadNodes,
|  | std::vector< double > & | quadWeights
| ) |  |

get a quadrature scheme with numQuadNodes quadrature nodes for the hex [0.1]^3 as a X-product of a 1D scheme

References MAX_numQuadNodesLine, Quad_getNodesLine, QUADNODES, and QUADWEIGHTS.

## Quad_getNodesLine()

void finley::Quad_getNodesLine | ( | int | numQuadNodes,
|  | std::vector< double > & | quadNodes,
|  | std::vector< double > & | quadWeights
| ) |  |

get a quadrature scheme with numQuadNodes quadrature nodes on the line [0,1]. The nodes and weights are set from a table

## Quad_getNodesPoint()

void finley::Quad_getNodesPoint | ( | int | numQuadNodes,
|  | std::vector< double > & | quadNodes,
|  | std::vector< double > & | quadWeights
| ) |  |

get a quadrature scheme with numQuadNodes quadrature nodes for a point. As there is no quadrature scheme for a point this function returns without changing the arrays but throws an error if numQuadNodes is negative

## Quad_getNodesRec()

void finley::Quad_getNodesRec | ( | int | numQuadNodes,
|  | std::vector< double > & | quadNodes,
|  | std::vector< double > & | quadWeights
| ) |  |

get a quadrature scheme with numQuadNodes quadrature nodes for the quad [0.1]^2 as a X-product of a 1D scheme

References MAX_numQuadNodesLine, Quad_getNodesLine, QUADNODES, and QUADWEIGHTS.

## Quad_getNodesTet()

void finley::Quad_getNodesTet | ( | int | numQuadNodes,
|  | std::vector< double > & | quadNodes,
|  | std::vector< double > & | quadWeights
| ) |  |

get a quadrature scheme with numQuadNodes quadrature nodes for the tet as a squeezed scheme on a hex [0,1]^3

References Quad_getNodesHex, QUADNODES, and QUADWEIGHTS.

## Quad_getNodesTri()

void finley::Quad_getNodesTri | ( | int | numQuadNodes,
|  | std::vector< double > & | quadNodes,
|  | std::vector< double > & | quadWeights
| ) |  |

get a quadrature scheme with numQuadNodes quadrature nodes for the tri as a squeezed scheme on a quad [0,1]^2

References Quad_getNodesRec, QUADNODES, and QUADWEIGHTS.

## Quad_getNumNodesHex()

int finley::Quad_getNumNodesHex | ( | int | order | ) |

References Quad_getNumNodesLine.

## Quad_getNumNodesLine()

int finley::Quad_getNumNodesLine | ( | int | order | ) |

References MAX_numQuadNodesLine.

## Quad_getNumNodesPoint()

int finley::Quad_getNumNodesPoint | ( | int | order | ) |

## Quad_getNumNodesRec()

int finley::Quad_getNumNodesRec | ( | int | order | ) |

References Quad_getNumNodesLine.

## Quad_getNumNodesTet()

int finley::Quad_getNumNodesTet | ( | int | order | ) |

References Quad_getNumNodesLine.

## Quad_getNumNodesTri()

int finley::Quad_getNumNodesTri | ( | int | order | ) |

References Quad_getNumNodesLine.

## Quad_MacroHex()

int finley::Quad_MacroHex | ( | int | numSubElements,
|  | int | numQuadNodes,
|  | const double * | quadNodes,
|  | const double * | quadWeights,
|  | int | numF,
|  | const double * | dFdv,
|  | int | new_len,
|  | double * | new_quadNodes,
|  | double * | new_quadWeights,
|  | double * | new_dFdv
| ) |  |

References DIM, HALF, INDEX2, INDEX3, INDEX4, and TWO.

## Quad_MacroLine()

int finley::Quad_MacroLine | ( | int | numSubElements,
|  | int | numQuadNodes,
|  | const double * | quadNodes,
|  | const double * | quadWeights,
|  | int | numF,
|  | const double * | dFdv,
|  | int | new_len,
|  | double * | new_quadNodes,
|  | double * | new_quadWeights,
|  | double * | new_dFdv
| ) |  |

References DIM, INDEX2, INDEX3, and INDEX4.

## Quad_MacroPoint()

int finley::Quad_MacroPoint | ( | int | numSubElements,
|  | int | numQuadNodes,
|  | const double * | quadNodes,
|  | const double * | quadWeights,
|  | int | numF,
|  | const double * | dFdv,
|  | int | new_len,
|  | double * | new_quadNodes,
|  | double * | new_quadWeights,
|  | double * | new_dFdv
| ) |  |

## Quad_MacroRec()

int finley::Quad_MacroRec | ( | int | numSubElements,
|  | int | numQuadNodes,
|  | const double * | quadNodes,
|  | const double * | quadWeights,
|  | int | numF,
|  | const double * | dFdv,
|  | int | new_len,
|  | double * | new_quadNodes,
|  | double * | new_quadWeights,
|  | double * | new_dFdv
| ) |  |

References DIM, HALF, INDEX2, INDEX3, INDEX4, and TWO.

## Quad_MacroTet()

int finley::Quad_MacroTet | ( | int | numSubElements,
|  | int | numQuadNodes,
|  | const double * | quadNodes,
|  | const double * | quadWeights,
|  | int | numF,
|  | const double * | dFdv,
|  | int | new_len,
|  | double * | new_quadNodes,
|  | double * | new_quadWeights,
|  | double * | new_dFdv
| ) |  |

References DIM, HALF, INDEX2, INDEX3, INDEX4, and TWO.

## Quad_MacroTri()

int finley::Quad_MacroTri | ( | int | numSubElements,
|  | int | numQuadNodes,
|  | const double * | quadNodes,
|  | const double * | quadWeights,
|  | int | numF,
|  | const double * | dFdv,
|  | int | new_len,
|  | double * | new_quadNodes,
|  | double * | new_quadWeights,
|  | double * | new_dFdv
| ) |  |

References DIM, HALF, INDEX2, INDEX3, INDEX4, and TWO.

## Quad_makeNodesOnFace()

void finley::Quad_makeNodesOnFace | ( | int | ,
|  | int | ,
|  | double * | ,
|  | double * | ,
|  | Quad_getNodes |
| ) |  |

## QuadInfo_getInfo()

const QuadInfo * finley::QuadInfo_getInfo | ( | QuadTypeId | id | ) |

References NoQuad, and QuadInfoList.

Referenced by finley::ReferenceElement::ReferenceElement().

## readGmsh_driver() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::readGmsh_driver | ( | const boost::python::list & | args | ) |

Python driver for readGMesh()

Parameters

  args | see readGMesh() definition for order of parameters

## readGmsh_driver() [2/2]

Domain_ptr finley::readGmsh_driver | ( | const bp::list & | args | ) |

References finley::FinleyDomain::addDiracPoints(), finley::FinleyDomain::getTagMap(), escript::makeInfo(), MPI_COMM_WORLD, dudley::readGmsh(), and finley::FinleyDomain::setTagMap().

Referenced by BOOST_PYTHON_MODULE().

## readMesh_driver() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::readMesh_driver | ( | const boost::python::list & | args | ) |

Python driver for readMesh()

Parameters

  args | see readMesh() definition for order of parameters

## readMesh_driver() [2/2]

Domain_ptr finley::readMesh_driver | ( | const bp::list & | args | ) |

References finley::FinleyDomain::addDiracPoints(), finley::FinleyDomain::getTagMap(), escript::makeInfo(), MPI_COMM_WORLD, and finley::FinleyDomain::setTagMap().

Referenced by BOOST_PYTHON_MODULE().

## rectangle()

FINLEY_DLL_API escript::Domain_ptr finley::rectangle | ( | escript::JMPI | jmpi,
|  | dim_t | n0 = `1`,
|  | dim_t | n1 = `1`,
|  | int | order = `1`,
|  | double | l0 = `1.0`,
|  | double | l1 = `1.0`,
|  | bool | periodic0 = `false`,
|  | bool | periodic1 = `false`,
|  | int | integrationOrder = `-1`,
|  | int | reducedIntegrationOrder = `-1`,
|  | bool | useElementsOnFace = `false`,
|  | bool | useFullElementOrder = `false`,
|  | bool | optimize = `false`,
|  | const std::vector< double > & | points = `std::vector< double >()`,
|  | const std::vector< int > & | tags = `std::vector< int >()`,
|  | const std::map< std::string, int > & | tagNamesToNums = `std::map< std::string, int >()`
| ) |  |

Creates a 2-dimensional rectangular mesh with n0 x n1 elements over the rectangle [0,l0] x [0,l1].

Parameters

  jmpi | pointer to MPI world information structure
  n0,n1 | number of elements in each dimension
  order | order of shape functions (1, 2, or -1 for macro elements of order 1)
  l0,l1 | length of each side of rectangle
  periodic0,periodic1 | whether or not the boundary conditions of the dimension are periodic
  integrationOrder | order of the quadrature scheme. If <0 the order is selected automatically.
  reducedIntegrationOrder | order of the reduced quadrature scheme. If <0 the order is selected automatically.
  useElementsOnFace | whether or not to use elements on face
  useFullElementOrder |
  optimize | whether to optimize labelling
  points |
  tags |
  tagNamesToNums |

References finley::FinleyDomain::addDiracPoints(), finley::FinleyDomain::getPoints(), finley::FinleyDomain::setTagMap(), and finley::ElementFile::updateTagList().

Referenced by rectangle_driver().

## rectangle_driver() [1/2]

FINLEY_DLL_API escript::Domain_ptr finley::rectangle_driver | ( | const boost::python::list & | args | ) |

Python driver for rectangle()

Parameters

  args | see rectangle() definition for order of params

## rectangle_driver() [2/2]

Domain_ptr finley::rectangle_driver | ( | const bp::list & | args | ) |

References escript::makeInfo(), MPI_COMM_WORLD, and rectangle().

Referenced by BOOST_PYTHON_MODULE().

## scatterEntries()

static void finley::scatterEntries | ( | dim_t | n,
|  | const index_t * | index,
|  | index_t | min_index,
|  | index_t | max_index,
|  | index_t * | Id_out,
|  | const index_t * | Id_in,
|  | int * | Tag_out,
|  | const int * | Tag_in,
|  | index_t * | globalDegreesOfFreedom_out,
|  | const index_t * | globalDegreesOfFreedom_in,
|  | int | numDim,
|  | double * | Coordinates_out,
|  | const double * | Coordinates_in
| ) |  |

static

References INDEX2.

Referenced by finley::NodeFile::gather_global(), and finley::NodeFile::scatter().

## setNumSamplesError()

void finley::setNumSamplesError | ( | const char * | c,
|  | int | n0,
|  | int | n1
| ) |  |

inline

Referenced by Assemble_PDE().

## setShapeError()

void finley::setShapeError | ( | const char * | c,
|  | int | num,
|  | const int * | dims
| ) |  |

inline

Referenced by Assemble_PDE().

## Shape_Hex20()

void finley::Shape_Hex20 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Hex27()

void finley::Shape_Hex27 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Hex32()

void finley::Shape_Hex32 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Hex8()

void finley::Shape_Hex8 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Line2()

void finley::Shape_Line2 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Line3()

void finley::Shape_Line3 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Line4()

void finley::Shape_Line4 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Point1()

void finley::Shape_Point1 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References S.

## Shape_Rec12()

void finley::Shape_Rec12 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Rec16()

void finley::Shape_Rec16 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Rec4()

void finley::Shape_Rec4 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Rec8()

void finley::Shape_Rec8 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Rec9()

void finley::Shape_Rec9 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tet10()

void finley::Shape_Tet10 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tet16()

void finley::Shape_Tet16 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tet4()

void finley::Shape_Tet4 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tri10()

void finley::Shape_Tri10 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tri3()

void finley::Shape_Tri3 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tri6()

void finley::Shape_Tri6 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Shape_Tri9()

void finley::Shape_Tri9 | ( | int | NumV,
|  | std::vector< double > & | v,
|  | std::vector< double > & | s,
|  | std::vector< double > & | dsdv
| ) |  |

References DSDV, S, and V.

## Variable Documentation

## lockingGridSize

double finley::lockingGridSize = 0.

static

Referenced by FaceCenterCompare(), and finley::FinleyDomain::findMatchingFaces().

## Quad_getNodesHex

Quad_getNodes finley::Quad_getNodesHex

Referenced by Quad_getNodesTet().

## Quad_getNodesHexMacro

Quad_getNodes finley::Quad_getNodesHexMacro

## Quad_getNodesLine

Quad_getNodes finley::Quad_getNodesLine

Referenced by Quad_getNodesHex(), and Quad_getNodesRec().

## Quad_getNodesLineMacro

Quad_getNodes finley::Quad_getNodesLineMacro

## Quad_getNodesLineOnFace

Quad_getNodes finley::Quad_getNodesLineOnFace

## Quad_getNodesPoint

Quad_getNodes finley::Quad_getNodesPoint

## Quad_getNodesPointOnFace

Quad_getNodes finley::Quad_getNodesPointOnFace

## Quad_getNodesRec

Quad_getNodes finley::Quad_getNodesRec

Referenced by Quad_getNodesTri().

## Quad_getNodesRecMacro

Quad_getNodes finley::Quad_getNodesRecMacro

## Quad_getNodesRecOnFace

Quad_getNodes finley::Quad_getNodesRecOnFace

## Quad_getNodesTet

Quad_getNodes finley::Quad_getNodesTet

## Quad_getNodesTetMacro

Quad_getNodes finley::Quad_getNodesTetMacro

## Quad_getNodesTri

Quad_getNodes finley::Quad_getNodesTri

## Quad_getNodesTriMacro

Quad_getNodes finley::Quad_getNodesTriMacro

## Quad_getNodesTriOnFace

Quad_getNodes finley::Quad_getNodesTriOnFace

## Quad_getNumNodesHex

Quad_getNumNodes finley::Quad_getNumNodesHex

## Quad_getNumNodesLine

Quad_getNumNodes finley::Quad_getNumNodesLine

Referenced by Quad_getNumNodesHex(), Quad_getNumNodesRec(), Quad_getNumNodesTet(), and Quad_getNumNodesTri().

## Quad_getNumNodesPoint

Quad_getNumNodes finley::Quad_getNumNodesPoint

## Quad_getNumNodesRec

Quad_getNumNodes finley::Quad_getNumNodesRec

## Quad_getNumNodesTet

Quad_getNumNodes finley::Quad_getNumNodesTet

## Quad_getNumNodesTri

Quad_getNumNodes finley::Quad_getNumNodesTri

## Quad_MacroHex

Quad_getMacro finley::Quad_MacroHex

## Quad_MacroLine

Quad_getMacro finley::Quad_MacroLine

## Quad_MacroPoint

Quad_getMacro finley::Quad_MacroPoint

## Quad_MacroRec

Quad_getMacro finley::Quad_MacroRec

## Quad_MacroTet

Quad_getMacro finley::Quad_MacroTet

## Quad_MacroTri

Quad_getMacro finley::Quad_MacroTri

## QuadInfoList

const QuadInfo finley::QuadInfoList[]

Initial value:
= {
{ PointQuad,"Point", 0, 1, Quad_getNodesPoint, Quad_getNumNodesPoint, Quad_MacroPoint },
{ LineQuad, "Line", 1, 2, Quad_getNodesLine, Quad_getNumNodesLine, Quad_MacroLine },
{ TriQuad, "Tri", 2, 3, Quad_getNodesTri, Quad_getNumNodesTri, Quad_MacroTri },
{ RecQuad, "Rec", 2, 4, Quad_getNodesRec, Quad_getNumNodesRec, Quad_MacroRec },
{ TetQuad, "Tet", 3, 4, Quad_getNodesTet, Quad_getNumNodesTet, Quad_MacroTet },
{ HexQuad, "Hex", 3, 8, Quad_getNodesHex, Quad_getNumNodesHex, Quad_MacroHex },
{ NoQuad, "NoType", 0, 1, Quad_getNodesPoint, Quad_getNumNodesPoint, Quad_MacroPoint }
}
finley::Quad_getNumNodesLine
int Quad_getNumNodesLine(int order)
Definition: Quadrature.cpp:1239
finley::Quad_MacroTri
int Quad_MacroTri(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
Definition: Quadrature.cpp:1355
finley::Quad_getNumNodesPoint
int Quad_getNumNodesPoint(int order)
Definition: Quadrature.cpp:1234
finley::Quad_MacroRec
int Quad_MacroRec(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
Definition: Quadrature.cpp:1427
finley::Quad_getNumNodesHex
int Quad_getNumNodesHex(int order)
Definition: Quadrature.cpp:1311
finley::Quad_MacroTet
int Quad_MacroTet(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
Definition: Quadrature.cpp:1499
finley::Quad_getNumNodesTri
int Quad_getNumNodesTri(int order)
Definition: Quadrature.cpp:1255
finley::Quad_getNodesRec
void Quad_getNodesRec(int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
Definition: Quadrature.cpp:989
finley::Quad_MacroHex
int Quad_MacroHex(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
Definition: Quadrature.cpp:1620
finley::Quad_getNodesLine
void Quad_getNodesLine(int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
Definition: Quadrature.cpp:1080
finley::Quad_getNumNodesRec
int Quad_getNumNodesRec(int order)
Definition: Quadrature.cpp:1281
finley::Quad_getNodesHex
void Quad_getNodesHex(int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
Definition: Quadrature.cpp:1028
finley::RecQuad
@ RecQuad
Definition: Quadrature.h:39
finley::NoQuad
@ NoQuad
Definition: Quadrature.h:42
finley::TriQuad
@ TriQuad
Definition: Quadrature.h:38
finley::PointQuad
@ PointQuad
Definition: Quadrature.h:36
finley::LineQuad
@ LineQuad
Definition: Quadrature.h:37
finley::TetQuad
@ TetQuad
Definition: Quadrature.h:40
finley::HexQuad
@ HexQuad
Definition: Quadrature.h:41
finley::Quad_getNodesTet
void Quad_getNodesTet(int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
Definition: Quadrature.cpp:368
finley::Quad_getNumNodesTet
int Quad_getNumNodesTet(int order)
Definition: Quadrature.cpp:1287
finley::Quad_getNodesPoint
void Quad_getNodesPoint(int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
Definition: Quadrature.cpp:1071
finley::Quad_getNodesTri
void Quad_getNodesTri(int numQuadNodes, std::vector< double > &quadNodes, std::vector< double > &quadWeights)
Definition: Quadrature.cpp:63
finley::Quad_MacroLine
int Quad_MacroLine(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
Definition: Quadrature.cpp:1326
finley::Quad_MacroPoint
int Quad_MacroPoint(int numSubElements, int numQuadNodes, const double *quadNodes, const double *quadWeights, int numF, const double *dFdv, int new_len, double *new_quadNodes, double *new_quadWeights, double *new_dFdv)
Definition: Quadrature.cpp:1317

Referenced by QuadInfo_getInfo().

## ReferenceElement_InfoList

const ReferenceElementInfo finley::ReferenceElement_InfoList[]

this list has been generated by generateReferenceElementList.py

Referenced by finley::ReferenceElement::getInfo(), finley::ReferenceElement::getTypeId(), and finley::ReferenceElement::ReferenceElement().

## Shape_Hex20

ShapeFunction_Evaluation finley::Shape_Hex20

## Shape_Hex27

ShapeFunction_Evaluation finley::Shape_Hex27

## Shape_Hex32

ShapeFunction_Evaluation finley::Shape_Hex32

## Shape_Hex8

ShapeFunction_Evaluation finley::Shape_Hex8

## Shape_Line2

ShapeFunction_Evaluation finley::Shape_Line2

## Shape_Line3

ShapeFunction_Evaluation finley::Shape_Line3

## Shape_Line4

ShapeFunction_Evaluation finley::Shape_Line4

## Shape_Point1

ShapeFunction_Evaluation finley::Shape_Point1

## Shape_Rec12

ShapeFunction_Evaluation finley::Shape_Rec12

## Shape_Rec16

ShapeFunction_Evaluation finley::Shape_Rec16

## Shape_Rec4

ShapeFunction_Evaluation finley::Shape_Rec4

## Shape_Rec8

ShapeFunction_Evaluation finley::Shape_Rec8

## Shape_Rec9

ShapeFunction_Evaluation finley::Shape_Rec9

## Shape_Tet10

ShapeFunction_Evaluation finley::Shape_Tet10

## Shape_Tet16

ShapeFunction_Evaluation finley::Shape_Tet16

## Shape_Tet4

ShapeFunction_Evaluation finley::Shape_Tet4

## Shape_Tri10

ShapeFunction_Evaluation finley::Shape_Tri10

## Shape_Tri3

ShapeFunction_Evaluation finley::Shape_Tri3

## Shape_Tri6

ShapeFunction_Evaluation finley::Shape_Tri6

## Shape_Tri9

ShapeFunction_Evaluation finley::Shape_Tri9

## ShapeFunction_InfoList

const ShapeFunctionInfo finley::ShapeFunction_InfoList[]

Initial value:
= {
{ Point1Shape, "Point1", 0, 1, 1, 1, Shape_Point1 },
{ Line2Shape, "Line2", 1, 2, 1, 2, Shape_Line2 },
{ Line3Shape, "Line3", 1, 3, 2, 2, Shape_Line3 },
{ Line4Shape, "Line4", 1, 4, 3, 2, Shape_Line4 },
{ Tri3Shape, "Tri3", 2, 3, 1, 3, Shape_Tri3 },
{ Tri6Shape, "Tri6", 2, 6, 2, 3, Shape_Tri6 },
{ Tri9Shape, "Tri9", 2, 9, 3, 3, Shape_Tri9 },
{ Tri10Shape, "Tri10", 2, 10, 3, 3, Shape_Tri10, },
{ Rec4Shape, "Rec4", 2, 4, 1, 4, Shape_Rec4, },
{ Rec8Shape, "Rec8", 2, 8, 2, 4, Shape_Rec8, },
{ Rec9Shape, "Rec9", 2, 9, 2, 4, Shape_Rec9, },
{ Rec12Shape, "Rec12", 2, 12, 3, 4, Shape_Rec12, },
{ Rec16Shape, "Rec16", 2, 16, 3, 4, Shape_Rec16, },
{ Tet4Shape, "Tet4", 3, 4, 1, 4, Shape_Tet4, },
{ Tet10Shape, "Tet10", 3, 10, 2, 4, Shape_Tet10, },
{ Tet16Shape, "Tet16", 3, 16, 3, 4, Shape_Tet16, },
{ Hex8Shape, "Hex8", 3, 8, 1, 8, Shape_Hex8, },
{ Hex20Shape, "Hex20", 3, 20, 2, 8, Shape_Hex20, },
{ Hex27Shape, "Hex27", 3, 27, 2, 8, Shape_Hex27, },
{ Hex32Shape, "Hex32", 3, 32, 3, 8, Shape_Hex32, },
{ NoShape, "NoType", 0, 1, 1, 1, Shape_Point1 }
}
finley::Shape_Hex32
void Shape_Hex32(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:991
finley::Shape_Tri10
void Shape_Tri10(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:291
finley::Shape_Hex8
void Shape_Hex8(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:726
finley::Shape_Rec8
void Shape_Rec8(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:361
finley::Shape_Rec9
void Shape_Rec9(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:399
finley::Shape_Rec12
void Shape_Rec12(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:441
finley::Shape_Tri6
void Shape_Tri6(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:218
finley::Rec12Shape
@ Rec12Shape
Definition: ShapeFunctions.h:44
finley::Point1Shape
@ Point1Shape
Definition: ShapeFunctions.h:33
finley::Rec4Shape
@ Rec4Shape
Definition: ShapeFunctions.h:41
finley::Rec8Shape
@ Rec8Shape
Definition: ShapeFunctions.h:42
finley::Tri3Shape
@ Tri3Shape
Definition: ShapeFunctions.h:37
finley::Line4Shape
@ Line4Shape
Definition: ShapeFunctions.h:36
finley::Tet4Shape
@ Tet4Shape
Definition: ShapeFunctions.h:46
finley::Hex20Shape
@ Hex20Shape
Definition: ShapeFunctions.h:50
finley::Hex27Shape
@ Hex27Shape
Definition: ShapeFunctions.h:51
finley::Tri6Shape
@ Tri6Shape
Definition: ShapeFunctions.h:38
finley::Line2Shape
@ Line2Shape
Definition: ShapeFunctions.h:34
finley::Rec9Shape
@ Rec9Shape
Definition: ShapeFunctions.h:43
finley::Hex32Shape
@ Hex32Shape
Definition: ShapeFunctions.h:52
finley::Tet16Shape
@ Tet16Shape
Definition: ShapeFunctions.h:48
finley::Tri10Shape
@ Tri10Shape
Definition: ShapeFunctions.h:40
finley::Tri9Shape
@ Tri9Shape
Definition: ShapeFunctions.h:39
finley::Hex8Shape
@ Hex8Shape
Definition: ShapeFunctions.h:49
finley::NoShape
@ NoShape
Definition: ShapeFunctions.h:53
finley::Tet10Shape
@ Tet10Shape
Definition: ShapeFunctions.h:47
finley::Line3Shape
@ Line3Shape
Definition: ShapeFunctions.h:35
finley::Rec16Shape
@ Rec16Shape
Definition: ShapeFunctions.h:45
finley::Shape_Rec16
void Shape_Rec16(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:491
finley::Shape_Tet16
void Shape_Tet16(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:647
finley::Shape_Line3
void Shape_Line3(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:155
finley::Shape_Point1
void Shape_Point1(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:126
finley::Shape_Hex27
void Shape_Hex27(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:868
finley::Shape_Tet10
void Shape_Tet10(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:584
finley::Shape_Tri3
void Shape_Tri3(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:195
finley::Shape_Tri9
void Shape_Tri9(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:250
finley::Shape_Line2
void Shape_Line2(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:138
finley::Shape_Hex20
void Shape_Hex20(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:773
finley::Shape_Tet4
void Shape_Tet4(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:553
finley::Shape_Line4
void Shape_Line4(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:174
finley::Shape_Rec4
void Shape_Rec4(int NumV, std::vector< double > &v, std::vector< double > &s, std::vector< double > &dsdv)
Definition: ShapeFunctions.cpp:335

Referenced by finley::ShapeFunction::getInfo(), finley::ShapeFunction::getTypeId(), and finley::ShapeFunction::ShapeFunction().