ESScript
Revision_4488
|
Namespaces | |
namespace | util |
Classes | |
struct | AssembleParameters |
class | FinleyAdapterException |
FinleyAdapterException exception class. More... | |
struct | null_deleter |
class | MeshAdapter |
implements the AbstractContinuousDomain interface for the Finley library. More... | |
class | ReferenceElementSetWrapper |
struct | ElementFile_Jacobians |
class | ElementFile |
class | NodeFile |
Typedefs | |
typedef std::list< int > | IndexList |
typedef std::map< std::string, int > | TagMap |
Functions | |
void | Assemble_PDE (NodeFile *nodes, ElementFile *elements, Paso_SystemMatrix *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) |
void | Assemble_PDE_Points (const AssembleParameters &p, escript::Data &d_dirac, escript::Data &y_dirac) |
void | Assemble_PDE_Single_1D (const AssembleParameters &p, escript::Data &A, escript::Data &B, escript::Data &C, escript::Data &D, escript::Data &X, escript::Data &Y) |
void | Assemble_PDE_Single_2D (const AssembleParameters &p, escript::Data &A, escript::Data &B, escript::Data &C, escript::Data &D, escript::Data &X, escript::Data &Y) |
void | Assemble_PDE_Single_3D (const AssembleParameters &p, escript::Data &A, escript::Data &B, escript::Data &C, escript::Data &D, escript::Data &X, escript::Data &Y) |
void | Assemble_PDE_Single_C (const AssembleParameters &p, escript::Data &D, escript::Data &Y) |
void | Assemble_PDE_System_1D (const AssembleParameters &p, escript::Data &A, escript::Data &B, escript::Data &C, escript::Data &D, escript::Data &X, escript::Data &Y) |
void | Assemble_PDE_System_2D (const AssembleParameters &p, escript::Data &A, escript::Data &B, escript::Data &C, escript::Data &D, escript::Data &X, escript::Data &Y) |
void | Assemble_PDE_System_3D (const AssembleParameters &p, escript::Data &A, escript::Data &B, escript::Data &C, escript::Data &D, escript::Data &X, escript::Data &Y) |
void | Assemble_PDE_System_C (const AssembleParameters &p, escript::Data &D, escript::Data &Y) |
void | Assemble_addToSystemMatrix (Paso_SystemMatrix *, const int NN_Equa, const int *Nodes_Equa, const int num_Equa, const int NN_Sol, const int *Nodes_Sol, const int num_Sol, const double *array) |
void | Assemble_LumpedSystem (NodeFile *nodes, ElementFile *elements, escript::Data &lumpedMat, const escript::Data &D, bool useHRZ) |
void | Assemble_AverageElementData (ElementFile *, escript::Data &, const escript::Data &) |
void | Assemble_CopyElementData (ElementFile *, escript::Data &, const escript::Data &) |
void | Assemble_CopyNodalData (NodeFile *, escript::Data &, const escript::Data &) |
void | Assemble_NodeCoordinates (NodeFile *, escript::Data &) |
void | Assemble_gradient (NodeFile *, ElementFile *, escript::Data &, const escript::Data &) |
void | Assemble_integrate (NodeFile *, ElementFile *, const escript::Data &, double *) |
void | Assemble_interpolate (NodeFile *, ElementFile *, const escript::Data &, escript::Data &) |
void | Assemble_setNormal (NodeFile *, ElementFile *, escript::Data &) |
void | Assemble_getSize (NodeFile *, ElementFile *, escript::Data &) |
void | Assemble_jacobians_1D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_2D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_2D_M1D_E2D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_2D_M1D_E2D_C (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_2D_M1D_E1D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_2D_M1D_E1D_C (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_3D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_3D_M2D_E3D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_3D_M2D_E3D_C (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_3D_M2D_E2D (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_jacobians_3D_M2D_E2D_C (double *, int, double *, int, int, int, int *, double *, int, double *, double *, double *, int *) |
void | Assemble_addToSystemMatrix_CSC (Paso_SystemMatrix *in, const int NN_Equa, const int *Nodes_Equa, const int num_Equa, const int NN_Sol, const int *Nodes_Sol, const int num_Sol, const double *array) |
void | Assemble_addToSystemMatrix_Trilinos (Paso_SystemMatrix *in, const int NN_Equa, const int *Nodes_Equa, const int num_Equa, const int NN_Sol, const int *Nodes_Sol, const int num_Sol, const double *array) |
void | Assemble_addToSystemMatrix_CSR (Paso_SystemMatrix *in, const int NN_Equa, const int *Nodes_Equa, const int num_Equa, const int NN_Sol, const int *Nodes_Sol, const int num_Sol, const double *array) |
void | setNumSamplesError (const char *c, int n0, int n1) |
void | setShapeError (const char *c, int num, const int *dims) |
void | setFinleyError (Finley_ErrorCodeType errorCode, const std::string &errMess) |
Provide a C++ interface to the finley C funcion of the same name. Needed because of constness problems. | |
void | checkFinleyError () |
Convert a C finley error into a C++ exception. | |
escript::Domain_ptr | brick (int n0=1, int n1=1, int n2=1, int order=1, double l0=1.0, double l1=1.0, double l2=1.0, int periodic0=0, int periodic1=0, int periodic2=0, int integrationOrder=-1, int reducedIntegrationOrder=-1, int useElementsOnFace=0, int useFullElementOrder=0, int optimize=0, 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]. | |
escript::Domain_ptr | rectangle (int n0=1, int n1=1, int order=1, double l0=1.0, double l1=1.0, int periodic0=false, int periodic1=false, int integrationOrder=-1, int reducedIntegrationOrder=-1, int useElementsOnFace=0, int useFullElementOrder=0, int optimize=0, 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 elements over the brick [0,l0] x [0,l1]. | |
void | cleanupAndThrow (Finley_Mesh *mesh, Esys_MPIInfo *info, string msg) |
Domain_ptr | loadMesh (const std::string &fileName) |
A suite of factory methods for creating various MeshAdapters. | |
Domain_ptr | readMesh (const std::string &fileName, int integrationOrder=-1, int reducedIntegrationOrder=-1, int optimize=0) |
Read a mesh from a file. For MPI parallel runs fan out the mesh to multiple processes. | |
Domain_ptr | readGmsh (const std::string &fileName, int numDim, int integrationOrder=-1, int reducedIntegrationOrder=-1, int optimize=0, int useMacroElements=0) |
Read a gmsh mesh file. | |
Domain_ptr | brick_driver (const boost::python::list &args) |
Python driver for brick() | |
Domain_ptr | meshMerge (const boost::python::list &meshList) |
Merges a list of meshes into one list. | |
Domain_ptr | rectangle_driver (const boost::python::list &args) |
Python driver for rectangle() | |
Domain_ptr | glueFaces (const boost::python::list &meshList, double safetyFactor=0.2, double tolerance=1.e-8, int optimize=0) |
Detects matching faces in the mesh, removes them from the mesh and joins the elements touched by the face elements. | |
Domain_ptr | joinFaces (const boost::python::list &meshList, double safetyFactor=0.2, double tolerance=1.e-8, int optimize=0) |
Detects matching faces in the mesh and replaces them by joint elements. | |
void | IndexList_insertElements (IndexList *index_list, ElementFile *elements, bool reduce_row_order, int *row_map, bool reduce_col_order, int *col_map) |
void | IndexList_insertElementsWithRowRangeNoMainDiagonal (IndexList *index_list, int firstRow, int lastRow, ElementFile *elements, int *row_map, int *col_map) |
void | IndexList_insertIndex (IndexList &in, int index) |
inserts a row index into the IndexList in if it does not exist | |
int | IndexList_count (const IndexList &in, int range_min, int range_max) |
counts the number of row indices in the IndexList in | |
void | IndexList_toArray (const IndexList &in, int *array, int range_min, int range_max, int index_offset) |
count the number of row indices in the IndexList in | |
Paso_Pattern * | IndexList_createPattern (int n0, int n, const IndexList *index_list, int range_min, int range_max, int index_offset) |
creates a Paso_pattern from a range of indices | |
static void | scatterEntries (int n, int *index, int min_index, int max_index, int *Id_out, int *Id_in, int *Tag_out, int *Tag_in, int *globalDegreesOfFreedom_out, int *globalDegreesOfFreedom_in, int numDim, double *Coordinates_out, double *Coordinates_in) |
static void | gatherEntries (int n, int *index, int min_index, int max_index, int *Id_out, int *Id_in, int *Tag_out, int *Tag_in, int *globalDegreesOfFreedom_out, int *globalDegreesOfFreedom_in, int numDim, double *Coordinates_out, double *Coordinates_in) |
typedef std::list<int> finley::IndexList |
typedef std::map<std::string, int> finley::TagMap |
void finley::Assemble_addToSystemMatrix | ( | Paso_SystemMatrix * | in, |
const int | NN_Equa, | ||
const int * | Nodes_Equa, | ||
const int | num_Equa, | ||
const int | NN_Sol, | ||
const int * | Nodes_Sol, | ||
const int | num_Sol, | ||
const double * | array | ||
) |
References Assemble_addToSystemMatrix_CSC(), Assemble_addToSystemMatrix_CSR(), Assemble_addToSystemMatrix_Trilinos(), MATRIX_FORMAT_CSC, MATRIX_FORMAT_TRILINOS_CRS, and Paso_SystemMatrix::type.
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().
void finley::Assemble_addToSystemMatrix_CSC | ( | Paso_SystemMatrix * | in, |
const int | NN_Equa, | ||
const int * | Nodes_Equa, | ||
const int | num_Equa, | ||
const int | NN_Sol, | ||
const int * | Nodes_Sol, | ||
const int | num_Sol, | ||
const double * | array | ||
) |
References Paso_SystemMatrix::block_size, Paso_SystemMatrix::col_block_size, Paso_SystemMatrix::col_coupleBlock, Paso_Pattern::index, INDEX4, Paso_SystemMatrix::mainBlock, Paso_SystemMatrixPattern::mainPattern, MATRIX_FORMAT_OFFSET1, Paso_Pattern::numInput, Paso_Pattern::numOutput, Paso_SystemMatrix::pattern, Paso_SparseMatrix::pattern, Paso_Pattern::ptr, Paso_SystemMatrix::row_block_size, Paso_SystemMatrix::row_coupleBlock, Paso_SystemMatrix::type, and Paso_SparseMatrix::val.
Referenced by Assemble_addToSystemMatrix().
void finley::Assemble_addToSystemMatrix_CSR | ( | Paso_SystemMatrix * | in, |
const int | NN_Equa, | ||
const int * | Nodes_Equa, | ||
const int | num_Equa, | ||
const int | NN_Sol, | ||
const int * | Nodes_Sol, | ||
const int | num_Sol, | ||
const double * | array | ||
) |
References Paso_SystemMatrix::block_size, Paso_SystemMatrix::col_block_size, Paso_SystemMatrix::col_coupleBlock, Paso_Pattern::index, INDEX4, Paso_SystemMatrix::mainBlock, Paso_SystemMatrixPattern::mainPattern, MATRIX_FORMAT_OFFSET1, Paso_Pattern::numInput, Paso_Pattern::numOutput, Paso_SystemMatrix::pattern, Paso_SparseMatrix::pattern, Paso_Pattern::ptr, Paso_SystemMatrix::row_block_size, Paso_SystemMatrix::row_coupleBlock, Paso_SystemMatrix::type, and Paso_SparseMatrix::val.
Referenced by Assemble_addToSystemMatrix().
void finley::Assemble_addToSystemMatrix_Trilinos | ( | Paso_SystemMatrix * | in, |
const int | NN_Equa, | ||
const int * | Nodes_Equa, | ||
const int | num_Equa, | ||
const int | NN_Sol, | ||
const int * | Nodes_Sol, | ||
const int | num_Sol, | ||
const double * | array | ||
) |
void finley::Assemble_AverageElementData | ( | ElementFile * | elements, |
escript::Data & | out, | ||
const escript::Data & | in | ||
) |
References escript::Data::actsExpanded(), Finley_resetError(), Finley_setError(), escript::Data::getDataPointSize(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), finley::util::hasReducedIntegrationOrder(), INDEX2, finley::ElementFile::numElements, Finley_ShapeFunction::numQuadNodes, escript::Data::numSamplesEqual(), Finley_ReferenceElement::Parametrization, Finley_ShapeFunction::QuadWeights, Finley_ReferenceElementSet::referenceElement, Finley_ReferenceElementSet::referenceElementReducedQuadrature, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and TYPE_ERROR.
Referenced by finley::MeshAdapter::interpolateOnDomain().
void finley::Assemble_CopyElementData | ( | ElementFile * | elements, |
escript::Data & | out, | ||
const escript::Data & | in | ||
) |
References escript::Data::actsExpanded(), Finley_resetError(), Finley_setError(), escript::Data::getDataPointSize(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), finley::util::hasReducedIntegrationOrder(), finley::ElementFile::numElements, Finley_ShapeFunction::numQuadNodes, escript::Data::numSamplesEqual(), Finley_ReferenceElement::Parametrization, Finley_ReferenceElementSet::referenceElement, Finley_ReferenceElementSet::referenceElementReducedQuadrature, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), and TYPE_ERROR.
Referenced by finley::MeshAdapter::interpolateOnDomain().
void finley::Assemble_CopyNodalData | ( | NodeFile * | nodes, |
escript::Data & | out, | ||
const escript::Data & | in | ||
) |
References escript::Data::actsExpanded(), finley::NodeFile::degreesOfFreedomConnector, finley::NodeFile::degreesOfFreedomDistribution, finley::NodeFile::degreesOfFreedomMapping, Esys_noError(), FINLEY_DEGREES_OF_FREEDOM, FINLEY_NODES, Finley_noError(), FINLEY_REDUCED_DEGREES_OF_FREEDOM, FINLEY_REDUCED_NODES, Finley_resetError(), Finley_setError(), escript::Data::getDataPointSize(), escript::Data::getFunctionSpace(), finley::NodeFile::getNumDegreesOfFreedom(), finley::NodeFile::getNumNodes(), finley::NodeFile::getNumReducedDegreesOfFreedom(), finley::NodeFile::getNumReducedNodes(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), Finley_NodeMapping::map, finley::NodeFile::MPIInfo, finley::NodeFile::nodesMapping, Finley_NodeMapping::numNodes, finley::NodeFile::numNodes, escript::Data::numSamplesEqual(), Finley_NodeMapping::numTargets, Paso_Coupler_alloc(), Paso_Coupler_finishCollect(), Paso_Coupler_free(), Paso_Coupler_startCollect(), Paso_Distribution_getMyNumComponents(), finley::NodeFile::reducedDegreesOfFreedomConnector, finley::NodeFile::reducedDegreesOfFreedomDistribution, finley::NodeFile::reducedDegreesOfFreedomMapping, finley::NodeFile::reducedNodesMapping, escript::Data::requireWrite(), Esys_MPIInfo::size, Finley_NodeMapping::target, and TYPE_ERROR.
Referenced by finley::MeshAdapter::interpolateOnDomain().
void finley::Assemble_getSize | ( | NodeFile * | nodes, |
ElementFile * | elements, | ||
escript::Data & | out | ||
) |
References escript::Data::actsExpanded(), finley::NodeFile::Coordinates, FINLEY_CONTACT_ELEMENTS_2, Finley_noError(), Finley_ReferenceElementSet_borrowReferenceElement(), Finley_resetError(), Finley_setError(), 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, Finley_ShapeFunction::numQuadNodes, escript::Data::numSamplesEqual(), Finley_ShapeFunctionInfo::numShapes, Finley_ReferenceElementInfo::numSubElements, Finley_ShapeFunctionInfo::numVertices, Finley_ReferenceElementInfo::offsets, Finley_ReferenceElement::Parametrization, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), Finley_ShapeFunction::Type, Finley_ReferenceElement::Type, and TYPE_ERROR.
Referenced by finley::MeshAdapter::setToSize().
void finley::Assemble_gradient | ( | NodeFile * | nodes, |
ElementFile * | elements, | ||
escript::Data & | grad_data, | ||
const escript::Data & | data | ||
) |
References escript::Data::actsExpanded(), finley::ElementFile_Jacobians::BasisFunctions, Finley_ReferenceElement::BasisFunctions, finley::ElementFile::borrowJacobians(), finley::NodeFile::degreesOfFreedomMapping, finley::ElementFile_Jacobians::DSDX, FINLEY_CONTACT_ELEMENTS_2, FINLEY_DEGREES_OF_FREEDOM, FINLEY_NODES, Finley_noError(), FINLEY_REDUCED_CONTACT_ELEMENTS_2, FINLEY_REDUCED_DEGREES_OF_FREEDOM, FINLEY_REDUCED_NODES, Finley_ReferenceElementSet_borrowReferenceElement(), Finley_resetError(), Finley_setError(), escript::Data::getDataPointSize(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRO(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), finley::util::hasReducedIntegrationOrder(), INDEX2, INDEX4, INDEX5, Finley_ReferenceElement::LinearBasisFunctions, Finley_ReferenceElementInfo::linearNodes, finley::ElementFile::MPIInfo, finley::ElementFile::Nodes, finley::NodeFile::nodesMapping, finley::ElementFile_Jacobians::numDim, finley::ElementFile::numElements, finley::ElementFile::numNodes, finley::ElementFile_Jacobians::numQuadTotal, escript::Data::numSamplesEqual(), Finley_ShapeFunctionInfo::numShapes, finley::ElementFile_Jacobians::numShapesTotal, Finley_ReferenceElementInfo::numSides, finley::ElementFile_Jacobians::numSub, Finley_NodeMapping::numTargets, finley::ElementFile_Jacobians::offsets, finley::NodeFile::reducedDegreesOfFreedomMapping, finley::NodeFile::reducedNodesMapping, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), Esys_MPIInfo::size, Finley_ReferenceElementInfo::subElementNodes, SYSTEM_ERROR, Finley_NodeMapping::target, Finley_ShapeFunction::Type, Finley_ReferenceElement::Type, and TYPE_ERROR.
Referenced by finley::MeshAdapter::setToGradient().
void finley::Assemble_integrate | ( | NodeFile * | nodes, |
ElementFile * | elements, | ||
const escript::Data & | data, | ||
double * | out | ||
) |
References escript::Data::actsExpanded(), finley::ElementFile::borrowJacobians(), FALSE, Finley_noError(), Finley_resetError(), Finley_setError(), escript::Data::getDataPointSize(), escript::Data::getSampleDataRO(), finley::util::hasReducedIntegrationOrder(), INDEX2, finley::NodeFile::MPIInfo, finley::ElementFile::numElements, finley::ElementFile_Jacobians::numQuadTotal, escript::Data::numSamplesEqual(), finley::ElementFile::Owner, Esys_MPIInfo::rank, TYPE_ERROR, and finley::ElementFile_Jacobians::volume.
Referenced by finley::MeshAdapter::setToIntegrals().
void finley::Assemble_interpolate | ( | NodeFile * | nodes, |
ElementFile * | elements, | ||
const escript::Data & | data, | ||
escript::Data & | interpolated_data | ||
) |
References escript::Data::actsExpanded(), Finley_ReferenceElement::BasisFunctions, finley::NodeFile::borrowTargetDegreesOfFreedom(), finley::NodeFile::borrowTargetNodes(), finley::NodeFile::borrowTargetReducedDegreesOfFreedom(), finley::NodeFile::borrowTargetReducedNodes(), FINLEY_CONTACT_ELEMENTS_2, FINLEY_DEGREES_OF_FREEDOM, FINLEY_NODES, Finley_noError(), FINLEY_REDUCED_DEGREES_OF_FREEDOM, FINLEY_REDUCED_NODES, Finley_ReferenceElementSet_borrowReferenceElement(), Finley_resetError(), Finley_setError(), 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_ReferenceElement::LinearBasisFunctions, Finley_ReferenceElementInfo::linearNodes, Finley_ReferenceElement::LinearType, finley::ElementFile::MPIInfo, finley::ElementFile::Nodes, finley::ElementFile::numElements, finley::ElementFile::numNodes, Finley_ShapeFunction::numQuadNodes, escript::Data::numSamplesEqual(), Finley_ShapeFunctionInfo::numShapes, Finley_ReferenceElementInfo::numSides, Finley_ReferenceElementInfo::numSubElements, Finley_ReferenceElementInfo::offsets, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), Finley_ShapeFunction::S, Esys_MPIInfo::size, finley::util::smallMatSetMult1(), Finley_ReferenceElementInfo::subElementNodes, Finley_ShapeFunction::Type, Finley_ReferenceElement::Type, and TYPE_ERROR.
Referenced by finley::MeshAdapter::interpolateOnDomain().
void finley::Assemble_jacobians_1D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References ABS, DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_2D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References ABS, DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_2D_M1D_E1D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_2D_M1D_E1D_C | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_2D_M1D_E2D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_2D_M1D_E2D_C | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_3D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References ABS, DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_3D_M2D_E2D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_3D_M2D_E2D_C | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_3D_M2D_E3D | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_jacobians_3D_M2D_E3D_C | ( | double * | coordinates, |
int | numQuad, | ||
double * | QuadWeights, | ||
int | numShape, | ||
int | numElements, | ||
int | numNodes, | ||
int * | nodes, | ||
double * | DSDv, | ||
int | numTest, | ||
double * | DTDv, | ||
double * | dTdX, | ||
double * | volume, | ||
int * | element_id | ||
) |
References DIM, Finley_setError(), INDEX2, INDEX3, INDEX4, LOCDIM, and ZERO_DIVISION_ERROR.
Referenced by finley::ElementFile::borrowJacobians().
void finley::Assemble_LumpedSystem | ( | NodeFile * | nodes, |
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_noError(), FINLEY_POINTS, FINLEY_REDUCED_ELEMENTS, FINLEY_REDUCED_FACE_ELEMENTS, Finley_resetError(), Finley_setError(), 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, Finley_ShapeFunction::S, S, TYPE_ERROR, and finley::ElementFile_Jacobians::volume.
Referenced by finley::MeshAdapter::addPDEToLumpedSystem().
void finley::Assemble_NodeCoordinates | ( | NodeFile * | nodes, |
escript::Data & | x | ||
) |
References escript::Data::actsExpanded(), finley::NodeFile::Coordinates, FINLEY_NODES, Finley_resetError(), Finley_setError(), escript::Data::getDataPointShape(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRW(), escript::FunctionSpace::getTypeCode(), INDEX2, finley::NodeFile::numDim, finley::NodeFile::numNodes, escript::Data::numSamplesEqual(), escript::Data::requireWrite(), and TYPE_ERROR.
Referenced by finley::MeshAdapter::setToX().
void finley::Assemble_PDE | ( | NodeFile * | nodes, |
ElementFile * | elements, | ||
Paso_SystemMatrix * | 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_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(), Assemble_PDE_System_C(), blocktimer_increment(), blocktimer_time(), FINLEY_CONTACT_ELEMENTS_1, FINLEY_CONTACT_ELEMENTS_2, FINLEY_ELEMENTS, FINLEY_FACE_ELEMENTS, Finley_noError(), FINLEY_POINTS, FINLEY_REDUCED_CONTACT_ELEMENTS_1, FINLEY_REDUCED_CONTACT_ELEMENTS_2, FINLEY_REDUCED_ELEMENTS, FINLEY_REDUCED_FACE_ELEMENTS, Finley_resetError(), Finley_setError(), escript::Data::getFunctionSpace(), escript::FunctionSpace::getTypeCode(), 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, setNumSamplesError(), setShapeError(), TYPE_ERROR, UNKNOWN, and VALUE_ERROR.
Referenced by finley::MeshAdapter::addPDEToRHS(), finley::MeshAdapter::addPDEToSystem(), and finley::MeshAdapter::addPDEToTransportProblem().
void finley::Assemble_PDE_Points | ( | const AssembleParameters & | p, |
escript::Data & | d_dirac, | ||
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, and finley::AssembleParameters::S.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_Single_1D | ( | const AssembleParameters & | p, |
escript::Data & | A, | ||
escript::Data & | B, | ||
escript::Data & | C, | ||
escript::Data & | D, | ||
escript::Data & | X, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_Single_2D | ( | const AssembleParameters & | p, |
escript::Data & | A, | ||
escript::Data & | B, | ||
escript::Data & | C, | ||
escript::Data & | D, | ||
escript::Data & | X, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_Single_3D | ( | const AssembleParameters & | p, |
escript::Data & | A, | ||
escript::Data & | B, | ||
escript::Data & | C, | ||
escript::Data & | D, | ||
escript::Data & | X, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_Single_C | ( | const AssembleParameters & | p, |
escript::Data & | D, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_System_1D | ( | const AssembleParameters & | p, |
escript::Data & | A, | ||
escript::Data & | B, | ||
escript::Data & | C, | ||
escript::Data & | D, | ||
escript::Data & | X, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_System_2D | ( | const AssembleParameters & | p, |
escript::Data & | A, | ||
escript::Data & | B, | ||
escript::Data & | C, | ||
escript::Data & | D, | ||
escript::Data & | X, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_System_3D | ( | const AssembleParameters & | p, |
escript::Data & | A, | ||
escript::Data & | B, | ||
escript::Data & | C, | ||
escript::Data & | D, | ||
escript::Data & | X, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_PDE_System_C | ( | const AssembleParameters & | p, |
escript::Data & | D, | ||
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, Finley_ShapeFunction::S, S, and finley::ElementFile_Jacobians::volume.
Referenced by Assemble_PDE().
void finley::Assemble_setNormal | ( | NodeFile * | nodes, |
ElementFile * | elements, | ||
escript::Data & | normal | ||
) |
References escript::Data::actsExpanded(), finley::NodeFile::Coordinates, Finley_ShapeFunction::dSdv, FINLEY_CONTACT_ELEMENTS_2, Finley_noError(), Finley_ReferenceElementSet_borrowReferenceElement(), Finley_resetError(), Finley_setError(), 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_ShapeFunctionInfo::numDim, finley::NodeFile::numDim, finley::ElementFile::numElements, finley::ElementFile::numNodes, Finley_ShapeFunction::numQuadNodes, escript::Data::numSamplesEqual(), Finley_ShapeFunctionInfo::numShapes, Finley_ReferenceElementInfo::offsets, Finley_ReferenceElement::Parametrization, finley::ElementFile::referenceElementSet, escript::Data::requireWrite(), finley::util::smallMatMult(), Finley_ShapeFunction::Type, Finley_ReferenceElement::Type, and TYPE_ERROR.
Referenced by finley::MeshAdapter::setToNormal().
escript::Domain_ptr finley::brick | ( | int | n0 = 1 , |
int | n1 = 1 , |
||
int | n2 = 1 , |
||
int | order = 1 , |
||
double | l0 = 1.0 , |
||
double | l1 = 1.0 , |
||
double | l2 = 1.0 , |
||
int | periodic0 = 0 , |
||
int | periodic1 = 0 , |
||
int | periodic2 = 0 , |
||
int | integrationOrder = -1 , |
||
int | reducedIntegrationOrder = -1 , |
||
int | useElementsOnFace = 0 , |
||
int | useFullElementOrder = 0 , |
||
int | optimize = 0 , |
||
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].
n0,n1,n2 | number of elements in each dimension |
order | =1, =-1 or =2 gives the order of shape function (-1= 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 integrationOrder<0 the integration order is selected independently. |
reducedIntegrationOrder | order of the reduced quadrature scheme. If reducedIntegrationOrder<0 the integration order is selected independently. |
useElementsOnFace | whether or not to use elements on face |
useFullElementOrder | whether to use second order elements |
optimize | whether to apply optimization |
points | |
tags | |
tagnamestonums |
References finley::MeshAdapter::addDiracPoints(), checkFinleyError(), FALSE, Finley_Mesh_addTagMap(), Finley_RectangularMesh_Hex20(), Finley_RectangularMesh_Hex8(), finley::MeshAdapter::getMesh(), escript::AbstractDomain::getPtr(), setFinleyError(), TRUE, and VALUE_ERROR.
escript::Domain_ptr finley::brick_driver | ( | const boost::python::list & | args | ) |
Python driver for brick()
args | see brick() definition for order of params |
References dudley::brick().
Referenced by BOOST_PYTHON_MODULE().
void finley::checkFinleyError | ( | ) |
Convert a C finley error into a C++ exception.
References Finley_getErrorMessage(), Finley_noError(), and Finley_resetError().
Referenced by finley::MeshAdapter::addDiracPoints(), finley::MeshAdapter::addPDEToLumpedSystem(), finley::MeshAdapter::addPDEToRHS(), finley::MeshAdapter::addPDEToSystem(), finley::MeshAdapter::addPDEToTransportProblem(), brick(), finley::MeshAdapter::dump(), finley::MeshAdapter::getDim(), finley::MeshAdapter::getTag(), glueFaces(), finley::MeshAdapter::interpolateOnDomain(), joinFaces(), loadMesh(), meshMerge(), finley::MeshAdapter::newSystemMatrix(), finley::MeshAdapter::newTransportProblem(), readGmsh(), readMesh(), rectangle(), finley::MeshAdapter::setNewX(), finley::MeshAdapter::setTagMap(), finley::MeshAdapter::setTags(), finley::MeshAdapter::setToGradient(), finley::MeshAdapter::setToIntegrals(), finley::MeshAdapter::setToNormal(), finley::MeshAdapter::setToSize(), finley::MeshAdapter::setToX(), and finley::MeshAdapter::write().
|
inline |
References Esys_MPIInfo_free(), and Finley_Mesh_free().
|
static |
References INDEX2.
Referenced by finley::NodeFile::gather(), and finley::NodeFile::gather_global().
escript::Domain_ptr finley::glueFaces | ( | const boost::python::list & | meshList, |
double | safetyFactor = 0.2 , |
||
double | tolerance = 1.e-8 , |
||
int | optimize = 0 |
||
) |
Detects matching faces in the mesh, removes them from the mesh and joins the elements touched by the face elements.
meshList | Input - The list of meshes. |
safetyFactor | Input - ?? |
tolerance | Input - ?? |
optimize | Input - switches on the optimization of node labels |
References checkFinleyError(), FALSE, Finley_Mesh_glueFaces(), finley::MeshAdapter::getFinley_Mesh(), meshMerge(), and TRUE.
Referenced by BOOST_PYTHON_MODULE().
int finley::IndexList_count | ( | const IndexList & | in, |
int | range_min, | ||
int | range_max | ||
) |
counts the number of row indices in the IndexList in
Referenced by IndexList_createPattern().
Paso_Pattern * finley::IndexList_createPattern | ( | int | n0, |
int | n, | ||
const IndexList * | index_list, | ||
int | range_min, | ||
int | range_max, | ||
int | index_offset | ||
) |
creates a Paso_pattern from a range of indices
References Finley_noError(), IndexList_count(), IndexList_toArray(), MATRIX_FORMAT_DEFAULT, Paso_Pattern_alloc(), and Paso_Pattern_free().
Referenced by Finley_makePattern(), Finley_Mesh_optimizeDOFDistribution(), and Finley_Mesh_optimizeDOFLabeling().
void finley::IndexList_insertElements | ( | IndexList * | index_list, |
ElementFile * | elements, | ||
bool | reduce_row_order, | ||
int * | row_map, | ||
bool | reduce_col_order, | ||
int * | col_map | ||
) |
References Finley_ReferenceElement::BasisFunctions, finley::ElementFile::Color, Finley_ReferenceElementSet_borrowReferenceElement(), INDEX2, IndexList_insertIndex(), Finley_ReferenceElement::LinearBasisFunctions, Finley_ReferenceElementInfo::linearNodes, finley::ElementFile::minColor, finley::ElementFile::Nodes, finley::ElementFile::numElements, finley::ElementFile::numNodes, Finley_ShapeFunctionInfo::numShapes, Finley_ReferenceElementInfo::numSides, Finley_ReferenceElementInfo::numSubElements, finley::ElementFile::referenceElementSet, Finley_ReferenceElementInfo::subElementNodes, Finley_ShapeFunction::Type, and Finley_ReferenceElement::Type.
Referenced by Finley_makePattern().
void finley::IndexList_insertElementsWithRowRangeNoMainDiagonal | ( | IndexList * | index_list, |
int | firstRow, | ||
int | lastRow, | ||
ElementFile * | elements, | ||
int * | row_map, | ||
int * | col_map | ||
) |
void finley::IndexList_insertIndex | ( | IndexList & | in, |
int | index | ||
) |
inserts a row index into the IndexList in if it does not exist
Referenced by IndexList_insertElements(), and IndexList_insertElementsWithRowRangeNoMainDiagonal().
void finley::IndexList_toArray | ( | const IndexList & | in, |
int * | array, | ||
int | range_min, | ||
int | range_max, | ||
int | index_offset | ||
) |
count the number of row indices in the IndexList in
Referenced by IndexList_createPattern().
escript::Domain_ptr finley::joinFaces | ( | const boost::python::list & | meshList, |
double | safetyFactor = 0.2 , |
||
double | tolerance = 1.e-8 , |
||
int | optimize = 0 |
||
) |
Detects matching faces in the mesh and replaces them by joint elements.
meshList | Input - The list of meshes. |
safetyFactor | Input - ?? |
tolerance | Input - ?? |
optimize | Input - switches on the optimization of node labels |
References checkFinleyError(), FALSE, Finley_Mesh_joinFaces(), finley::MeshAdapter::getFinley_Mesh(), meshMerge(), and TRUE.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr finley::loadMesh | ( | const std::string & | fileName | ) |
A suite of factory methods for creating various MeshAdapters.
Description: A suite of factory methods for creating various MeshAdapters.
recovers mesg from a dump file
fileName | Input - The name of the file. |
References blocktimer_increment(), blocktimer_time(), checkFinleyError(), dudley::cleanupAndThrow(), Finley_Mesh::ContactElements, ripley::Elements, Finley_Mesh::Elements, Esys_MPI_appendRankToFileName(), Esys_MPIInfo_alloc(), Esys_MPIInfo_free(), ripley::FaceElements, Finley_Mesh::FaceElements, Finley_Mesh_addTagMap(), Finley_Mesh_alloc(), Finley_Mesh_createMappings(), Finley_Mesh_free(), Finley_noError(), Finley_ReferenceElementSet_alloc(), Finley_ReferenceElementSet_dealloc(), Finley_resetError(), Finley_setError(), escript::AbstractDomain::getPtr(), INDEX2, IO_ERROR, LenErrorMsg_MAX, MPI_COMM_WORLD, Finley_Mesh::Nodes, ripley::Points, Finley_Mesh::Points, Esys_MPIInfo::rank, Esys_MPIInfo::size, TMPMEMALLOC, and TMPMEMFREE.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr finley::meshMerge | ( | const boost::python::list & | meshList | ) |
Merges a list of meshes into one list.
meshList | Input - The list of meshes. |
References checkFinleyError(), Finley_Mesh_merge(), escript::AbstractDomain::getPtr(), TMPMEMALLOC, and TMPMEMFREE.
Referenced by BOOST_PYTHON_MODULE(), glueFaces(), and joinFaces().
escript::Domain_ptr finley::readGmsh | ( | const std::string & | fileName, |
int | numDim, | ||
int | integrationOrder = -1 , |
||
int | reducedIntegrationOrder = -1 , |
||
int | optimize = 0 , |
||
int | useMacroElements = 0 |
||
) |
Read a gmsh mesh file.
fileName | Input - The name of the file. |
numDim | Input - spatial dimension |
integrationOrder | Input - order of the quadrature scheme. If integrationOrder<0 the integration order is selected independently. |
reducedIntegrationOrder | Input - order of the reduced quadrature scheme. If reducedIntegrationOrder<0 the integration order is selected independently. |
optimize | Input - switches on the optimization of node labels |
useMacroElements |
References blocktimer_increment(), blocktimer_time(), checkFinleyError(), FALSE, Finley_Mesh_readGmsh(), escript::AbstractDomain::getPtr(), TMPMEMALLOC, TMPMEMFREE, and TRUE.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr finley::readMesh | ( | const std::string & | fileName, |
int | integrationOrder = -1 , |
||
int | reducedIntegrationOrder = -1 , |
||
int | optimize = 0 |
||
) |
Read a mesh from a file. For MPI parallel runs fan out the mesh to multiple processes.
fileName | Input - The name of the file. |
integrationOrder | Input - order of the quadrature scheme. If integrationOrder<0 the integration order is selected independently. |
reducedIntegrationOrder | Input - order of the reduced quadrature scheme. If reducedIntegrationOrder<0 the integration order is selected independently. |
optimize | Input - switches on the optimization of node labels |
References blocktimer_increment(), blocktimer_time(), checkFinleyError(), FALSE, Finley_Mesh_read(), escript::AbstractDomain::getPtr(), TMPMEMALLOC, TMPMEMFREE, and TRUE.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr finley::rectangle | ( | int | n0 = 1 , |
int | n1 = 1 , |
||
int | order = 1 , |
||
double | l0 = 1.0 , |
||
double | l1 = 1.0 , |
||
int | periodic0 = false , |
||
int | periodic1 = false , |
||
int | integrationOrder = -1 , |
||
int | reducedIntegrationOrder = -1 , |
||
int | useElementsOnFace = 0 , |
||
int | useFullElementOrder = 0 , |
||
int | optimize = 0 , |
||
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 elements over the brick [0,l0] x [0,l1].
n0,n1 | number of elements in each dimension |
l0,l1 | length of each side of brick |
order | =1, =-1 or =2 gives the order of shape function (-1= macro elements of order 1) |
periodic0,periodic1 | whether or not the boundary conditions of the dimension are periodic |
integrationOrder | order of the quadrature scheme. If integrationOrder<0 the integration order is selected independently. |
reducedIntegrationOrder | order of the reduced quadrature scheme. If reducedIntegrationOrder<0 the integration order is selected independently. |
useElementsOnFace | whether or not to use elements on face |
useFullElementOrder | |
optimize | |
points | |
tags | |
tagnamestonums |
References finley::MeshAdapter::addDiracPoints(), checkFinleyError(), FALSE, Finley_Mesh_addTagMap(), Finley_RectangularMesh_Rec4(), Finley_RectangularMesh_Rec8(), finley::MeshAdapter::getMesh(), escript::AbstractDomain::getPtr(), Finley_Mesh::Points, setFinleyError(), TRUE, and VALUE_ERROR.
escript::Domain_ptr finley::rectangle_driver | ( | const boost::python::list & | args | ) |
Python driver for rectangle()
args | see rectangle() definition for order of params |
References dudley::rectangle().
Referenced by BOOST_PYTHON_MODULE().
|
static |
References INDEX2.
Referenced by finley::NodeFile::gather_global(), and finley::NodeFile::scatter().
void finley::setFinleyError | ( | Finley_ErrorCodeType | errorCode, |
const std::string & | errMess | ||
) |
Provide a C++ interface to the finley C funcion of the same name. Needed because of constness problems.
References __const, and Finley_setError().
Referenced by brick(), and rectangle().
|
inline |
References Finley_setError(), and TYPE_ERROR.
Referenced by Assemble_PDE().
|
inline |
References Finley_setError(), and TYPE_ERROR.
Referenced by Assemble_PDE().