escript
Revision_
|
Represents a full Ripley domain including nodes and elements. More...
#include <RipleyDomain.h>
Public Member Functions | |
RipleyDomain () | |
RipleyDomain (const RipleyDomain &m) | |
virtual | ~RipleyDomain () |
virtual bool | initFromEscript (const escript::AbstractDomain *domain) |
Initialises the domain using an escript domain instance. | |
virtual bool | initFromFile (const std::string &filename) |
Reads the domain from a dump file. | |
virtual bool | writeToSilo (DBfile *dbfile, const std::string &pathInSilo, const StringVec &labels, const StringVec &units, bool writeMeshData) |
Writes the domain to a Silo file. | |
virtual void | reorderGhostZones (int ownIndex) |
Reorders elements so that 'ghost' elements (i.e. those that do not belong to ownIndex) appear last. | |
virtual void | removeGhostZones (int ownIndex) |
Removes 'ghost' elements and nodes. | |
virtual StringVec | getMeshNames () const |
Returns the names of all meshes within this domain. | |
virtual StringVec | getVarNames () const |
Returns the names of all 'special' domain variables. | |
virtual ElementData_ptr | getElementsByName (const std::string &name) const |
Returns element data with given name. | |
virtual NodeData_ptr | getMeshByName (const std::string &name) const |
Returns the node mesh with given name. | |
virtual DataVar_ptr | getDataVarByName (const std::string &name) const |
Creates and returns a variable with domain data. | |
virtual Centering | getCenteringForFunctionSpace (int fsCode) const |
Returns whether data on given function space is node or cell centered. | |
virtual NodeData_ptr | getMeshForFunctionSpace (int fsCode) const |
Returns the node mesh for given function space code. | |
virtual ElementData_ptr | getElementsForFunctionSpace (int fsCode) const |
Returns the element data for given function space code. | |
virtual NodeData_ptr | getNodes () const |
Returns a pointer to the full nodes. | |
virtual std::string | getSiloPath () const |
Returns the absolute path within Silo file if writeToSilo() or setSiloPath() was called before, the empty string otherwise. | |
virtual void | setSiloPath (const std::string &path) |
Sets the silo path to be used when saving to a Silo file. | |
Private Attributes | |
bool | initialized |
RipleyNodes_ptr | nodes |
RipleyElements_ptr | cells |
RipleyElements_ptr | faces |
std::string | siloPath |
Represents a full Ripley domain including nodes and elements.
This class represents a Ripley domain including nodes, cells, and face elements. It provides functionality to read a domain from a file (generated by the domain's dump() method) or directly through an instance of RipleyDomain.
Once initialised, the domain can be saved to a Silo file or its nodes and elements accessed through the respective methods.
weipa::RipleyDomain::RipleyDomain | ( | const RipleyDomain & | m | ) |
References cells, faces, initialized, and nodes.
virtual weipa::RipleyDomain::~RipleyDomain | ( | ) | [inline, virtual] |
Centering weipa::RipleyDomain::getCenteringForFunctionSpace | ( | int | fsCode | ) | const [virtual] |
Returns whether data on given function space is node or cell centered.
Implements weipa::DomainChunk.
References weipa::NODE_CENTERED, ripley::Nodes, ripley::ReducedNodes, and weipa::ZONE_CENTERED.
DataVar_ptr weipa::RipleyDomain::getDataVarByName | ( | const std::string & | name | ) | const [virtual] |
Creates and returns a variable with domain data.
Implements weipa::DomainChunk.
References cells, ripley::Elements, ripley::FaceElements, faces, getElementsByName(), getNodes(), initialized, weipa::NODE_CENTERED, ripley::Nodes, nodes, and weipa::ZONE_CENTERED.
ElementData_ptr weipa::RipleyDomain::getElementsByName | ( | const std::string & | name | ) | const [virtual] |
Returns element data with given name.
Implements weipa::DomainChunk.
Referenced by getDataVarByName(), and getMeshByName().
ElementData_ptr weipa::RipleyDomain::getElementsForFunctionSpace | ( | int | fsCode | ) | const [virtual] |
Returns the element data for given function space code.
Implements weipa::DomainChunk.
References cells, ripley::Elements, ripley::FaceElements, faces, initialized, ripley::Nodes, ripley::ReducedElements, ripley::ReducedFaceElements, and ripley::ReducedNodes.
Referenced by getMeshForFunctionSpace().
NodeData_ptr weipa::RipleyDomain::getMeshByName | ( | const std::string & | name | ) | const [virtual] |
Returns the node mesh with given name.
Implements weipa::DomainChunk.
References getElementsByName(), and initialized.
NodeData_ptr weipa::RipleyDomain::getMeshForFunctionSpace | ( | int | fsCode | ) | const [virtual] |
Returns the node mesh for given function space code.
Implements weipa::DomainChunk.
References getElementsForFunctionSpace(), and initialized.
StringVec weipa::RipleyDomain::getMeshNames | ( | ) | const [virtual] |
Returns the names of all meshes within this domain.
Implements weipa::DomainChunk.
References cells, faces, and initialized.
virtual NodeData_ptr weipa::RipleyDomain::getNodes | ( | ) | const [inline, virtual] |
Returns a pointer to the full nodes.
Implements weipa::DomainChunk.
References nodes.
Referenced by getDataVarByName().
virtual std::string weipa::RipleyDomain::getSiloPath | ( | ) | const [inline, virtual] |
Returns the absolute path within Silo file if writeToSilo() or setSiloPath() was called before, the empty string otherwise.
Implements weipa::DomainChunk.
References siloPath.
StringVec weipa::RipleyDomain::getVarNames | ( | ) | const [virtual] |
Returns the names of all 'special' domain variables.
Implements weipa::DomainChunk.
References cells, faces, initialized, and nodes.
bool weipa::RipleyDomain::initFromEscript | ( | const escript::AbstractDomain * | domain | ) | [virtual] |
Initialises the domain using an escript domain instance.
Implements weipa::DomainChunk.
References cells, ripley::Elements, ripley::FaceElements, faces, initialized, and nodes.
bool weipa::RipleyDomain::initFromFile | ( | const std::string & | filename | ) | [virtual] |
Reads the domain from a dump file.
Implements weipa::DomainChunk.
void weipa::RipleyDomain::removeGhostZones | ( | int | ownIndex | ) | [virtual] |
Removes 'ghost' elements and nodes.
Implements weipa::DomainChunk.
References cells, faces, initialized, and nodes.
void weipa::RipleyDomain::reorderGhostZones | ( | int | ownIndex | ) | [virtual] |
Reorders elements so that 'ghost' elements (i.e. those that do not belong to ownIndex) appear last.
Implements weipa::DomainChunk.
References cells, faces, and initialized.
virtual void weipa::RipleyDomain::setSiloPath | ( | const std::string & | path | ) | [inline, virtual] |
Sets the silo path to be used when saving to a Silo file.
Implements weipa::DomainChunk.
References siloPath.
bool weipa::RipleyDomain::writeToSilo | ( | DBfile * | dbfile, |
const std::string & | pathInSilo, | ||
const StringVec & | labels, | ||
const StringVec & | units, | ||
bool | writeMeshData | ||
) | [virtual] |
Writes the domain to a Silo file.
Implements weipa::DomainChunk.
References cells, faces, initialized, and siloPath.
RipleyElements_ptr weipa::RipleyDomain::cells [private] |
RipleyElements_ptr weipa::RipleyDomain::faces [private] |
bool weipa::RipleyDomain::initialized [private] |
RipleyNodes_ptr weipa::RipleyDomain::nodes [private] |
Referenced by getDataVarByName(), getNodes(), getVarNames(), initFromEscript(), removeGhostZones(), and RipleyDomain().
std::string weipa::RipleyDomain::siloPath [private] |
Referenced by getSiloPath(), setSiloPath(), and writeToSilo().