escript
Revision_
|
Classes | |
class | DudleyAdapterException |
DudleyAdapterException exception class. More... | |
class | MeshAdapter |
MeshAdapter implements the AbstractContinuousDomain interface for the Dudley library. More... | |
struct | null_deleter |
Functions | |
void | setDudleyError (Dudley_ErrorCodeType errorCode, const std::string &errMess) |
Provide a C++ interface to the dudley C funcion of the same name. Needed because of constness problems. More... | |
void | checkDudleyError () |
Convert a C dudley error into a C++ exception. More... | |
void | checkPasoError () |
Convert a C paso error into a C++ exception. More... | |
void | cleanupAndThrow (Dudley_Mesh *mesh, string msg) |
Domain_ptr | loadMesh (const std::string &fileName) |
A suite of factory methods for creating various MeshAdapters. More... | |
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. More... | |
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. More... | |
Domain_ptr | brick (esysUtils::JMPI &mpi_info, double n0=1, double n1=1, double 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) |
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 boost::python::list &args) |
Python driver for brick() More... | |
Domain_ptr | rectangle_driver (const boost::python::list &args) |
Python driver for rectangle() More... | |
Domain_ptr | rectangle (esysUtils::JMPI &mpi_info, double n0=1, double 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) |
Creates a rectangular mesh with n0 x n1 elements over the brick [0,l0] x [0,l1]. More... | |
escript::Domain_ptr dudley::brick | ( | esysUtils::JMPI & | mpi_info, |
double | n0 = 1 , |
||
double | n1 = 1 , |
||
double | 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 |
||
) |
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 | Input - number of elements in each dimension |
order | Input - =1, =-1 or =2 gives the order of shape function (-1= macro elements of order 1) |
l0,l1,l2 | Input - length of each side of brick |
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. |
useElementsOnFace | Input - whether or not to use elements on face |
periodic0,periodic1,periodic2 | Input - whether or not boundary conditions of the dimension are periodic |
useFullElementOrder | |
optimize |
References checkDudleyError(), Dudley_TriangularMesh_Tet4(), FALSE, escript::AbstractDomain::getPtr(), and TRUE.
Referenced by brick_driver(), and finley::brick_driver().
escript::Domain_ptr dudley::brick_driver | ( | const boost::python::list & | args | ) |
Python driver for brick()
args | see brick() definition for order of params |
References brick(), esysUtils::makeInfo(), and MPI_COMM_WORLD.
Referenced by BOOST_PYTHON_MODULE().
void dudley::checkDudleyError | ( | ) |
Convert a C dudley error into a C++ exception.
References Dudley_getErrorMessage(), Dudley_noError(), and Dudley_resetError().
Referenced by dudley::MeshAdapter::addPDEToLumpedSystem(), dudley::MeshAdapter::addPDEToRHS(), dudley::MeshAdapter::addPDEToSystem(), dudley::MeshAdapter::addPDEToTransportProblem(), brick(), dudley::MeshAdapter::dump(), dudley::MeshAdapter::getDim(), dudley::MeshAdapter::getTag(), dudley::MeshAdapter::interpolateOnDomain(), dudley::MeshAdapter::isCellOriented(), loadMesh(), dudley::MeshAdapter::newSystemMatrix(), dudley::MeshAdapter::newTransportProblem(), dudley::MeshAdapter::probeInterpolationOnDomain(), readGmsh(), readMesh(), rectangle(), dudley::MeshAdapter::setNewX(), dudley::MeshAdapter::setTagMap(), dudley::MeshAdapter::setTags(), dudley::MeshAdapter::setToGradient(), dudley::MeshAdapter::setToIntegrals(), dudley::MeshAdapter::setToNormal(), dudley::MeshAdapter::setToSize(), dudley::MeshAdapter::setToX(), and dudley::MeshAdapter::write().
void dudley::checkPasoError | ( | ) |
Convert a C paso error into a C++ exception.
References Esys_getErrorMessage(), Esys_noError(), and Esys_resetError().
Referenced by finley::MeshAdapter::newSystemMatrix(), dudley::MeshAdapter::newSystemMatrix(), finley::MeshAdapter::newTransportProblem(), and dudley::MeshAdapter::newTransportProblem().
|
inline |
References Dudley_Mesh_free().
Referenced by loadMesh().
escript::Domain_ptr dudley::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 esysUtils::appendRankToFileName(), blocktimer_increment(), blocktimer_time(), checkDudleyError(), cleanupAndThrow(), Dudley_ElementFile::Color, Dudley_NodeFile::Coordinates, Dudley_ElementFile_alloc(), Dudley_ElementFile_allocTable(), Dudley_ElementFile_setTagsInUse(), Dudley_Mesh_addTagMap(), Dudley_Mesh_alloc(), Dudley_Mesh_createMappings(), Dudley_Mesh_free(), Dudley_NodeFile_allocTable(), Dudley_NodeFile_setTagsInUse(), Dudley_noError(), Dudley_resetError(), Dudley_setError(), Dudley_Mesh::Elements, Dudley_Mesh::FaceElements, escript::AbstractDomain::getPtr(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedDOFIndex, Dudley_NodeFile::globalReducedNodesIndex, Dudley_NodeFile::Id, Dudley_ElementFile::Id, INDEX2, IO_ERROR, LenErrorMsg_MAX, esysUtils::makeInfo(), Dudley_ElementFile::maxColor, Dudley_ElementFile::minColor, MPI_COMM_WORLD, Dudley_ElementFile::Nodes, Dudley_Mesh::Nodes, Dudley_ElementFile::Owner, Dudley_Mesh::Points, Dudley_NodeFile::Tag, and Dudley_ElementFile::Tag.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr dudley::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(), checkDudleyError(), Dudley_Mesh_readGmsh(), FALSE, escript::AbstractDomain::getPtr(), and TRUE.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr dudley::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(), checkDudleyError(), Dudley_Mesh_read(), FALSE, escript::AbstractDomain::getPtr(), and TRUE.
Referenced by BOOST_PYTHON_MODULE().
escript::Domain_ptr dudley::rectangle | ( | esysUtils::JMPI & | mpi_info, |
double | n0 = 1 , |
||
double | 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 |
||
) |
Creates a rectangular mesh with n0 x n1 elements over the brick [0,l0] x [0,l1].
n0,n1 | Input - number of elements in each dimension [We only except floats for py transition] |
order | Input - =1, =-1 or =2 gives the order of shape function (-1= macro elements of order 1) |
l0,l1 | Input - length of each side of brick |
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. |
periodic0,periodic1 | Input - whether or not the boundary conditions of the dimension are periodic |
useElementsOnFace | Input - whether or not to use elements on face |
useFullElementOrder | |
optimize |
References checkDudleyError(), Dudley_TriangularMesh_Tri3(), FALSE, and TRUE.
Referenced by rectangle_driver(), and finley::rectangle_driver().
escript::Domain_ptr dudley::rectangle_driver | ( | const boost::python::list & | args | ) |
Python driver for rectangle()
args | see rectangle() definition for order of params |
References esysUtils::makeInfo(), MPI_COMM_WORLD, and rectangle().
Referenced by BOOST_PYTHON_MODULE().
void dudley::setDudleyError | ( | Dudley_ErrorCodeType | errorCode, |
const std::string & | errMess | ||
) |
Provide a C++ interface to the dudley C funcion of the same name. Needed because of constness problems.
References Dudley_setError().