PABLO Uniform is an example of user class derived from ParaTree to map ParaTree in a uniform (square/cubic) domain. Pablo Uniform takes as input in constructor the coordinates of the origin (X,Y,Z) and the length of the side L. More...
#include <PabloUniform.hpp>
Public Member Functions | |
PabloUniform (const std::string &logfile=DEFAULT_LOG_FILE, MPI_Comm comm=MPI_COMM_WORLD) | |
PabloUniform (double X, double Y, double Z, double L, uint8_t dim=2, const std::string &logfile=DEFAULT_LOG_FILE, MPI_Comm comm=MPI_COMM_WORLD) | |
PabloUniform (uint8_t dim, const std::string &logfile=DEFAULT_LOG_FILE, MPI_Comm comm=MPI_COMM_WORLD) | |
void | dump (std::ostream &stream, bool full=true) override |
double | getArea (const Intersection *inter) const |
double | getArea (const Octant *oct) const |
double | getArea (uint32_t idx) const |
void | getBoundingBox (darray3 &P0, darray3 &P1) const |
darray3 | getCenter (const Intersection *inter) const |
darray3 | getCenter (const Octant *oct) const |
void | getCenter (const Octant *oct, darray3 ¢er) const |
darray3 | getCenter (uint32_t idx) const |
void | getCenter (uint32_t idx, darray3 ¢er) const |
darray3 | getCoordinates (const Octant *oct) const |
darray3 | getCoordinates (uint32_t idx) const |
int | getDumpVersion () const override |
darray3 | getFaceCenter (const Octant *oct, uint8_t iface) const |
void | getFaceCenter (const Octant *oct, uint8_t iface, darray3 ¢er) const |
darray3 | getFaceCenter (uint32_t idx, uint8_t iface) const |
void | getFaceCenter (uint32_t idx, uint8_t iface, darray3 ¢er) const |
double | getL () const |
double | getLocalMaxSize () const |
double | getLocalMinSize () const |
darray3 | getNode (const Octant *oct, uint8_t inode) const |
void | getNode (const Octant *oct, uint8_t inode, darray3 &node) const |
darray3 | getNode (uint32_t idx, uint8_t inode) const |
void | getNode (uint32_t idx, uint8_t inode, darray3 &node) const |
darray3 | getNodeCoordinates (uint32_t inode) const |
darr3vector | getNodes (const Intersection *inter) const |
darr3vector | getNodes (const Octant *oct) const |
void | getNodes (const Octant *oct, darr3vector &nodes) const |
darr3vector | getNodes (uint32_t idx) const |
void | getNodes (uint32_t idx, darr3vector &nodes) const |
darray3 | getNormal (const Intersection *inter) const |
darray3 | getNormal (const Octant *oct, uint8_t iface) const |
void | getNormal (const Octant *oct, uint8_t iface, darray3 &normal) const |
darray3 | getNormal (uint32_t idx, uint8_t iface) const |
void | getNormal (uint32_t idx, uint8_t iface, darray3 &normal) const |
darray3 | getOrigin () const |
Octant * | getPointOwner (darray3 point) |
Octant * | getPointOwner (darray3 point, bool &isghost) |
uint32_t | getPointOwnerIdx (darray3 point) const |
uint32_t | getPointOwnerIdx (darray3 point, bool &isghost) const |
int | getPointOwnerRank (darray3 point) |
double | getSize (const Intersection *inter) const |
double | getSize (const Octant *oct) const |
double | getSize (uint32_t idx) const |
double | getVolume (const Octant *oct) const |
double | getVolume (uint32_t idx) const |
double | getX (const Octant *oct) const |
double | getX (uint32_t idx) const |
double | getX0 () const |
double | getY (const Octant *oct) const |
double | getY (uint32_t idx) const |
double | getY0 () const |
double | getZ (const Octant *oct) const |
double | getZ (uint32_t idx) const |
double | getZ0 () const |
double | levelToSize (uint8_t level) const |
void | reset () override |
void | restore (std::istream &stream) override |
void | setL (double L) |
void | setOrigin (const darray3 &origin) |
void | write (const std::string &filename) |
void | writeTest (const std::string &filename, dvector data) |
Public Member Functions inherited from bitpit::ParaTree | |
ParaTree (const ParaTree &other) | |
ParaTree (const std::string &logfile=DEFAULT_LOG_FILE, MPI_Comm comm=MPI_COMM_WORLD) | |
ParaTree (std::istream &stream, const std::string &logfile=DEFAULT_LOG_FILE, MPI_Comm comm=MPI_COMM_WORLD) | |
ParaTree (uint8_t dim, const std::string &logfile=DEFAULT_LOG_FILE, MPI_Comm comm=MPI_COMM_WORLD) | |
virtual | ~ParaTree () |
bool | adapt (bool mapper_flag=false) |
bool | adaptGlobalCoarse (bool mapper_flag=false) |
bool | adaptGlobalRefine (bool mapper_flag=false) |
bool | check21Balance () |
bool | checkToAdapt () |
void | clearConnectivity (bool release=true) |
template<class Impl > | |
void | communicate (DataCommInterface< Impl > &userData) |
void | computeConnectivity () |
void | computeIntersections () |
uint64_t | computeNodePersistentKey (const Octant *oct, uint8_t node) const |
uint64_t | computeNodePersistentKey (uint32_t idx, uint8_t node) const |
LoadBalanceRanges | evalLoadBalanceRanges (dvector *weights) |
LoadBalanceRanges | evalLoadBalanceRanges (uint8_t level, dvector *weights) |
void | expectedOctantAdapt (const Octant *octant, int8_t marker, octvector *result) const |
void | findAllCodimensionNeighbours (const Octant *oct, u32vector &neighbours, bvector &isghost) |
void | findAllCodimensionNeighbours (uint32_t idx, u32vector &neighbours, bvector &isghost) |
void | findAllNodeNeighbours (const Octant *oct, uint32_t node, u32vector &neighbours, bvector &isghost) const |
void | findAllNodeNeighbours (uint32_t idx, uint32_t node, u32vector &neighbours, bvector &isghost) |
void | findGhostAllCodimensionNeighbours (Octant *oct, u32vector &neighbours, bvector &isghost) |
void | findGhostAllCodimensionNeighbours (uint32_t idx, u32vector &neighbours, bvector &isghost) |
void | findGhostNeighbours (const Octant *oct, uint8_t face, uint8_t codim, u32vector &neighbours, bvector &isghost) const |
void | findGhostNeighbours (uint32_t idx, uint8_t face, uint8_t codim, u32vector &neighbours) const |
void | findGhostNeighbours (uint32_t idx, uint8_t face, uint8_t codim, u32vector &neighbours, bvector &isghost) const |
void | findNeighbours (const Octant *oct, uint8_t face, uint8_t codim, u32vector &neighbours, bvector &isghost) const |
void | findNeighbours (uint32_t idx, uint8_t face, uint8_t codim, u32vector &neighbours) const |
void | findNeighbours (uint32_t idx, uint8_t face, uint8_t codim, u32vector &neighbours, bvector &isghost) const |
int | findOwner (uint64_t morton) const |
void | freeComm () |
double | getArea (const Intersection *inter) const |
double | getArea (const Octant *oct) const |
double | getArea (uint32_t idx) const |
bool | getBalance (const Octant *oct) const |
bool | getBalance (uint32_t idx) const |
uint8_t | getBalanceCodimension () const |
const std::map< int, std::vector< uint32_t > > & | getBordersPerProc () const |
bool | getBound (const Intersection *inter) const |
bool | getBound (const Octant *oct) const |
bool | getBound (const Octant *oct, uint8_t face) const |
bool | getBound (uint32_t idx) const |
bool | getBound (uint32_t idx, uint8_t face) const |
darray3 | getCenter (const Intersection *inter) const |
darray3 | getCenter (const Octant *oct) const |
void | getCenter (const Octant *oct, darray3 ¢erCoords) const |
darray3 | getCenter (uint32_t idx) const |
void | getCenter (uint32_t idx, darray3 ¢erCoords) const |
MPI_Comm | getComm () const |
const u32vector2D & | getConnectivity () const |
const u32vector & | getConnectivity (Octant *oct) const |
const u32vector & | getConnectivity (uint32_t idx) const |
darray3 | getCoordinates (const Octant *oct) const |
darray3 | getCoordinates (uint32_t idx) const |
uint8_t | getDim () const |
const int8_t(* | getEdgecoeffs () const)[3] |
void | getEdgecoeffs (int8_t edgecoeffs[12][3]) const |
const uint8_t(* | getEdgeface () const)[2] |
void | getEdgeface (uint8_t edgeface[12][2]) const |
uint8_t | getFace (const Intersection *inter) const |
darray3 | getFaceCenter (const Octant *oct, uint8_t face) const |
void | getFaceCenter (const Octant *oct, uint8_t face, darray3 ¢erCoords) const |
darray3 | getFaceCenter (uint32_t idx, uint8_t face) const |
void | getFaceCenter (uint32_t idx, uint8_t face, darray3 ¢erCoords) const |
const uint8_t(* | getFacenode () const)[4] |
void | getFacenode (uint8_t facenode[6][4]) const |
uint8_t | getFamilySplittingNode (const Octant *) const |
bool | getFiner (const Intersection *inter) const |
uint64_t | getFirstDescMorton () const |
const u32vector2D & | getGhostConnectivity () const |
const u32vector & | getGhostConnectivity (const Octant *oct) const |
const u32vector & | getGhostConnectivity (uint32_t idx) const |
uint64_t | getGhostGlobalIdx (uint32_t idx) const |
int | getGhostLayer (const Octant *oct) const |
uint32_t | getGhostLocalIdx (uint64_t gidx) const |
Octant * | getGhostOctant (uint32_t idx) |
const Octant * | getGhostOctant (uint32_t idx) const |
uint64_t | getGlobalIdx (const Octant *oct) const |
uint64_t | getGlobalIdx (uint32_t idx) const |
uint64_t | getGlobalNumOctants () const |
uint32_t | getIdx (const Octant *oct) const |
uint32_t | getIn (const Intersection *inter) const |
octantIterator | getInternalOctantsBegin () |
octantIterator | getInternalOctantsEnd () |
Intersection * | getIntersection (uint32_t idx) |
bool | getIsGhost (const Intersection *inter) const |
bool | getIsGhost (const Octant *oct) const |
bool | getIsNewC (const Octant *oct) const |
bool | getIsNewC (uint32_t idx) const |
bool | getIsNewR (const Octant *oct) const |
bool | getIsNewR (uint32_t idx) const |
double | getL () const |
uint64_t | getLastDescMorton () const |
uint64_t | getLastDescMorton (const Octant *oct) const |
uint64_t | getLastDescMorton (uint32_t idx) const |
Operation | getLastOperation () const |
uint8_t | getLevel (const Intersection *inter) const |
uint8_t | getLevel (const Octant *oct) const |
uint8_t | getLevel (uint32_t idx) const |
const LoadBalanceRanges & | getLoadBalanceRanges () const |
uint32_t | getLocalIdx (uint64_t gidx) const |
uint32_t | getLocalIdx (uint64_t gidx, int rank) const |
void | getLocalIdx (uint64_t gidx, uint32_t &lidx, int &rank) const |
uint8_t | getLocalMaxDepth () const |
double | getLocalMaxSize () const |
double | getLocalMinSize () const |
Logger & | getLog () |
void | getMapping (uint32_t idx, u32vector &mapper, bvector &isghost) const |
void | getMapping (uint32_t idx, u32vector &mapper, bvector &isghost, ivector &rank) const |
int8_t | getMarker (const Octant *oct) const |
int8_t | getMarker (uint32_t idx) const |
int8_t | getMaxDepth () const |
uint32_t | getMaxLength () const |
int | getMaxLevel () const |
uint64_t | getMorton (const Octant *oct) const |
uint64_t | getMorton (uint32_t idx) const |
uint8_t | getNchildren () const |
uint8_t | getNedges () const |
uint8_t | getNfaces () const |
uint8_t | getNnodes () const |
uint8_t | getNnodesperface () const |
darray3 | getNode (const Octant *oct, uint8_t node) const |
void | getNode (const Octant *oct, uint8_t node, darray3 &nodeCoords) const |
darray3 | getNode (uint32_t idx, uint8_t node) const |
void | getNode (uint32_t idx, uint8_t node, darray3 &nodeCoords) const |
const int8_t(* | getNodecoeffs () const)[3] |
void | getNodecoeffs (int8_t nodecoeffs[8][3]) const |
darray3 | getNodeCoordinates (uint32_t node) const |
const uint8_t(* | getNodeface () const)[3] |
void | getNodeface (uint8_t nodeface[8][3]) const |
const u32array3 & | getNodeLogicalCoordinates (uint32_t node) const |
const u32arr3vector & | getNodes () const |
darr3vector | getNodes (const Intersection *inter) const |
darr3vector | getNodes (const Octant *oct) const |
void | getNodes (const Octant *oct, darr3vector &nodesCoords) const |
darr3vector | getNodes (uint32_t idx) const |
void | getNodes (uint32_t idx, darr3vector &nodesCoords) const |
std::size_t | getNofGhostLayers () const |
darray3 | getNormal (const Intersection *inter) const |
darray3 | getNormal (const Octant *oct, uint8_t face) const |
void | getNormal (const Octant *oct, uint8_t face, darray3 &normal) const |
darray3 | getNormal (uint32_t idx, uint8_t face) const |
void | getNormal (uint32_t idx, uint8_t face, darray3 &normal) const |
const int8_t(* | getNormals () const)[3] |
void | getNormals (int8_t normals[6][3]) const |
int | getNproc () const |
uint32_t | getNumGhosts () const |
uint32_t | getNumIntersections () const |
uint32_t | getNumNodes () const |
uint32_t | getNumOctants () const |
Octant * | getOctant (uint32_t idx) |
const Octant * | getOctant (uint32_t idx) const |
const uint8_t * | getOppface () const |
void | getOppface (uint8_t oppface[6]) const |
darray3 | getOrigin () const |
uint32_t | getOut (const Intersection *inter) const |
bool | getOutIsGhost (const Intersection *inter) const |
int | getOwnerRank (uint64_t globalIdx) const |
u32vector | getOwners (const Intersection *inter) const |
bool | getParallel () const |
const std::vector< uint64_t > & | getPartitionFirstDesc () const |
const std::vector< uint64_t > & | getPartitionLastDesc () const |
const std::vector< uint64_t > & | getPartitionRangeGlobalIdx () const |
bool | getPbound (const Intersection *inter) const |
bool | getPbound (const Octant *oct) const |
bool | getPbound (const Octant *oct, uint8_t face) const |
bool | getPbound (uint32_t idx) const |
bool | getPbound (uint32_t idx, uint8_t face) const |
octantIterator | getPboundOctantsBegin () |
octantIterator | getPboundOctantsEnd () |
bvector | getPeriodic () const |
bool | getPeriodic (uint8_t i) const |
octantID | getPersistentIdx (const Octant *oct) const |
octantID | getPersistentIdx (uint32_t idx) const |
Octant * | getPointOwner (const darray3 &point) |
Octant * | getPointOwner (const darray3 &point, bool &isghost) |
Octant * | getPointOwner (const dvector &point) |
Octant * | getPointOwner (const dvector &point, bool &isghost) |
uint32_t | getPointOwnerIdx (const darray3 &point) const |
uint32_t | getPointOwnerIdx (const darray3 &point, bool &isghost) const |
uint32_t | getPointOwnerIdx (const double *point) const |
uint32_t | getPointOwnerIdx (const double *point, bool &isghost) const |
uint32_t | getPointOwnerIdx (const dvector &point) const |
uint32_t | getPointOwnerIdx (const dvector &point, bool &isghost) const |
int | getPointOwnerRank (const darray3 &point) |
void | getPreMapping (u32vector &idx, std::vector< int8_t > &markers, std::vector< bool > &isghost) |
int8_t | getPreMarker (Octant *oct) |
int8_t | getPreMarker (uint32_t idx) |
int | getRank () const |
bool | getSerial () const |
double | getSize (const Intersection *inter) const |
double | getSize (const Octant *oct) const |
double | getSize (uint32_t idx) const |
uint64_t | getStatus () const |
double | getTol () const |
double | getVolume (const Octant *oct) const |
double | getVolume (uint32_t idx) const |
double | getX (const Octant *oct) const |
double | getX (uint32_t idx) const |
double | getX0 () const |
double | getY (const Octant *oct) const |
double | getY (uint32_t idx) const |
double | getY0 () const |
double | getZ (const Octant *oct) const |
double | getZ (uint32_t idx) const |
double | getZ0 () const |
bool | isCommSet () const |
bool | isEdgeOnOctant (const Octant *edgeOctant, uint8_t edgeIndex, const Octant *octant) const |
bool | isFaceOnOctant (const Octant *faceOctant, uint8_t faceIndex, const Octant *octant) const |
bool | isNodeOnOctant (const Octant *nodeOctant, uint8_t nodeIndex, const Octant *octant) const |
double | levelToSize (uint8_t level) const |
void | loadBalance (const dvector *weight=NULL) |
template<class Impl > | |
void | loadBalance (DataLBInterface< Impl > &userData, dvector *weight=NULL) |
template<class Impl > | |
void | loadBalance (DataLBInterface< Impl > &userData, uint8_t &level, dvector *weight=NULL) |
void | loadBalance (uint8_t &level, const dvector *weight=NULL) |
void | preadapt () |
void | printHeader () |
template<class Impl > | |
void | privateLoadBalance (const uint32_t *partition, DataLBInterface< Impl > *userData=nullptr) |
void | replaceComm (MPI_Comm communicator, MPI_Comm *previousCommunicator=nullptr) |
void | setBalance (Octant *oct, bool balance) |
void | setBalance (uint32_t idx, bool balance) |
void | setBalanceCodimension (uint8_t b21codim) |
void | setComm (MPI_Comm communicator) |
void | setMarker (Octant *oct, int8_t marker) |
void | setMarker (uint32_t idx, int8_t marker) |
void | setNofGhostLayers (std::size_t nofGhostLayers) |
void | setPeriodic (uint8_t i) |
void | settleMarkers () |
void | setTol (double tol=1.0e-14) |
void | updateConnectivity () |
void | write (const std::string &filename) |
void | writeTest (const std::string &filename, dvector data) |
Additional Inherited Members | |
Public Types inherited from bitpit::ParaTree | |
typedef std::unordered_map< int, std::array< uint32_t, 2 > > | ExchangeRanges |
enum | Operation { OP_NONE , OP_INIT , OP_PRE_ADAPT , OP_ADAPT_MAPPED , OP_ADAPT_UNMAPPED , OP_LOADBALANCE_FIRST , OP_LOADBALANCE } |
Static Public Attributes inherited from bitpit::ParaTree | |
static BITPIT_PUBLIC_API const std::string | DEFAULT_LOG_FILE = "PABLO" |
PABLO Uniform is an example of user class derived from ParaTree to map ParaTree in a uniform (square/cubic) domain. Pablo Uniform takes as input in constructor the coordinates of the origin (X,Y,Z) and the length of the side L.
Class PabloUniform has a dimensional parameter int dim and it accepts only two values: dim=2 and dim=3, for 2D and 3D respectively.
Definition at line 61 of file PabloUniform.hpp.
bitpit::PabloUniform::PabloUniform | ( | const std::string & | logfile = DEFAULT_LOG_FILE, |
MPI_Comm | comm = MPI_COMM_WORLD ) |
Default empty constructor of PabloUniform.
[in] | logfile | The file name for the log of this object. PABLO.log is the default value. |
[in] | comm | The MPI communicator used by the parallel octree. MPI_COMM_WORLD is the default value. |
Definition at line 53 of file PabloUniform.cpp.
bitpit::PabloUniform::PabloUniform | ( | uint8_t | dim, |
const std::string & | logfile = DEFAULT_LOG_FILE, | ||
MPI_Comm | comm = MPI_COMM_WORLD ) |
Default constructor of PabloUniform. It sets the Origin in (0,0,0) and side of length 1.
[in] | dim | The space dimension of the octree. |
[in] | logfile | The file name for the log of this object. PABLO.log is the default value. |
[in] | comm | The MPI communicator used by the parallel octree. MPI_COMM_WORLD is the default value. |
Definition at line 69 of file PabloUniform.cpp.
bitpit::PabloUniform::PabloUniform | ( | double | X, |
double | Y, | ||
double | Z, | ||
double | L, | ||
uint8_t | dim = 2, | ||
const std::string & | logfile = DEFAULT_LOG_FILE, | ||
MPI_Comm | comm = MPI_COMM_WORLD ) |
Custom constructor of PabloUniform. It sets the Origin in (X,Y,Z) and side of length L.
[in] | X | x-coordinate of the origin in physical domain, |
[in] | Y | y-coordinate of the origin in physical domain, |
[in] | Z | z-coordinate of the origin in physical domain, |
[in] | L | Length of the side in physical domain. |
[in] | dim | The space dimension of the octree. |
[in] | logfile | The file name for the log of this object. PABLO.log is the default value. |
[in] | comm | The MPI communicator used by the parallel octree. MPI_COMM_WORLD is the default value. |
Definition at line 89 of file PabloUniform.cpp.
|
overridevirtual |
Write the octree to the specified stream.
stream | is the stream to write to |
full | is the flag for a complete dump with mapping structureof last operation of the tree |
Reimplemented from bitpit::ParaTree.
Definition at line 137 of file PabloUniform.cpp.
double bitpit::PabloUniform::getArea | ( | const Intersection * | inter | ) | const |
Get the area of an intersection (for 2D case the same value of getSize).
[in] | inter | Pointer to target intersection. |
Definition at line 749 of file PabloUniform.cpp.
double bitpit::PabloUniform::getArea | ( | const Octant * | oct | ) | const |
Get the area of an octant (for 2D case the same value of getSize).
[in] | oct | Pointer to the target octant |
Definition at line 518 of file PabloUniform.cpp.
double bitpit::PabloUniform::getArea | ( | uint32_t | idx | ) | const |
Get the area of an octant (for 2D case the same value of getSize).
[in] | idx | Local index of target octant. |
Definition at line 305 of file PabloUniform.cpp.
void bitpit::PabloUniform::getBoundingBox | ( | darray3 & | P0, |
darray3 & | P1 ) const |
Get the coordinates of the extreme points of a bounding box containing the local tree
[out] | P0 | Array with coordinates of the first point (lowest coordinates); |
[out] | P1 | Array with coordinates of the last point (highest coordinates). |
Definition at line 690 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getCenter | ( | const Intersection * | inter | ) | const |
Get the coordinates of the center of an intersection.
[in] | inter | Pointer to target intersection. |
Definition at line 758 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getCenter | ( | const Octant * | oct | ) | const |
Get the coordinates of the center of an octant.
[in] | oct | Pointer to the target octant |
Definition at line 548 of file PabloUniform.cpp.
void bitpit::PabloUniform::getCenter | ( | const Octant * | oct, |
darray3 & | center ) const |
Get the coordinates of the center of an octant.
[in] | oct | Pointer to the target octant |
[out] | center | Coordinates of the center of octant. |
Definition at line 536 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getCenter | ( | uint32_t | idx | ) | const |
Get the coordinates of the center of an octant.
[in] | idx | Local index of target octant. |
Definition at line 335 of file PabloUniform.cpp.
void bitpit::PabloUniform::getCenter | ( | uint32_t | idx, |
darray3 & | center ) const |
Get the coordinates of the center of an octant.
[in] | idx | Local index of target octant. |
[out] | center | Coordinates of the center of octant. |
Definition at line 323 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getCoordinates | ( | const Octant * | oct | ) | const |
Get the coordinates of an octant, i.e. the coordinates of its node 0.
[in] | oct | Pointer to the target octant |
Definition at line 459 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getCoordinates | ( | uint32_t | idx | ) | const |
Get the coordinates of an octant, i.e. the coordinates of its node 0.
[in] | idx | Local index of target octant. |
Definition at line 246 of file PabloUniform.cpp.
|
overridevirtual |
Get the version associated to the binary dumps.
Reimplemented from bitpit::ParaTree.
Definition at line 124 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getFaceCenter | ( | const Octant * | oct, |
uint8_t | iface ) const |
Get the coordinates of the center of a face of an octant.
[in] | oct | Pointer to the target octant |
[in] | iface | Index of the target face. |
Definition at line 576 of file PabloUniform.cpp.
void bitpit::PabloUniform::getFaceCenter | ( | const Octant * | oct, |
uint8_t | iface, | ||
darray3 & | center ) const |
Get the coordinates of the center of a face of an octant.
[in] | oct | Pointer to the target octant |
[in] | iface | Index of the target face. |
[out] | center | Coordinates of the center of the iface-th face af octant. |
Definition at line 563 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getFaceCenter | ( | uint32_t | idx, |
uint8_t | iface ) const |
Get the coordinates of the center of a face of an octant.
[in] | idx | Local index of target octant. |
[in] | iface | Index of the target face. |
Definition at line 363 of file PabloUniform.cpp.
void bitpit::PabloUniform::getFaceCenter | ( | uint32_t | idx, |
uint8_t | iface, | ||
darray3 & | center ) const |
Get the coordinates of the center of a face of an octant.
[in] | idx | Local index of target octant. |
[in] | iface | Index of the target face. |
[out] | center | Coordinates of the center of the iface-th face of octant. |
Definition at line 350 of file PabloUniform.cpp.
double bitpit::PabloUniform::getL | ( | ) | const |
Get the length of the domain.
Definition at line 206 of file PabloUniform.cpp.
double bitpit::PabloUniform::getLocalMaxSize | ( | ) | const |
Get the local current maximum size of the octree.
Definition at line 672 of file PabloUniform.cpp.
double bitpit::PabloUniform::getLocalMinSize | ( | ) | const |
Get the local current minimum size of the octree.
Definition at line 680 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getNode | ( | const Octant * | oct, |
uint8_t | inode ) const |
Get the coordinates of single node of an octant.
[in] | oct | Pointer to the target octant |
[in] | inode | Index of the target node. |
Definition at line 591 of file PabloUniform.cpp.
void bitpit::PabloUniform::getNode | ( | const Octant * | oct, |
uint8_t | inode, | ||
darray3 & | node ) const |
Get the coordinates of the center of a face of an octant.
[in] | oct | Pointer to the target octant |
[in] | inode | Index of the target node. |
[out] | node | Coordinates of the center of the inode-th of octant. |
Definition at line 606 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getNode | ( | uint32_t | idx, |
uint8_t | inode ) const |
Get the coordinates of a node of an octant.
[in] | idx | Local index of target octant. |
[in] | inode | Index of the target node. |
Definition at line 378 of file PabloUniform.cpp.
void bitpit::PabloUniform::getNode | ( | uint32_t | idx, |
uint8_t | inode, | ||
darray3 & | node ) const |
Get the coordinates of a node of an octant.
[in] | idx | Local index of target octant. |
[in] | inode | Index of the target node. |
[out] | node | Coordinates of of the inode-th node of octant. |
Definition at line 393 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getNodeCoordinates | ( | uint32_t | inode | ) | const |
Get the physical coordinates of a node
[in] | inode | Local index of node |
Definition at line 864 of file PabloUniform.cpp.
darr3vector bitpit::PabloUniform::getNodes | ( | const Intersection * | inter | ) | const |
Get the coordinates of the nodes of an intersection.
[in] | inter | Pointer to target intersection. |
Definition at line 771 of file PabloUniform.cpp.
darr3vector bitpit::PabloUniform::getNodes | ( | const Octant * | oct | ) | const |
Get the coordinates of the nodes of an octant.
[in] | oct | Pointer to the target octant |
Definition at line 633 of file PabloUniform.cpp.
void bitpit::PabloUniform::getNodes | ( | const Octant * | oct, |
darr3vector & | nodes ) const |
Get the coordinates of the nodes of an octant.
[in] | oct | Pointer to the target octant |
[out] | nodes | Coordinates of the nodes of octant. |
Definition at line 618 of file PabloUniform.cpp.
darr3vector bitpit::PabloUniform::getNodes | ( | uint32_t | idx | ) | const |
Get the coordinates of the nodes of an octant.
[in] | idx | Local index of target octant. |
Definition at line 420 of file PabloUniform.cpp.
void bitpit::PabloUniform::getNodes | ( | uint32_t | idx, |
darr3vector & | nodes ) const |
Get the coordinates of the nodes of an octant.
[in] | idx | Local index of target octant. |
[out] | nodes | Coordinates of the nodes of octant. |
Definition at line 405 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getNormal | ( | const Intersection * | inter | ) | const |
Get the normal of an intersection.
[in] | inter | Pointer to target intersection. |
Definition at line 787 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getNormal | ( | const Octant * | oct, |
uint8_t | iface ) const |
Get the normal of a face of an octant.
[in] | oct | Pointer to the target octant |
[in] | iface | Index of the face for normal computing. |
Definition at line 661 of file PabloUniform.cpp.
void bitpit::PabloUniform::getNormal | ( | const Octant * | oct, |
uint8_t | iface, | ||
darray3 & | normal ) const |
Get the normal of a face of an octant.
[in] | oct | Pointer to the target octant |
[in] | iface | Index of the face for normal computing. |
[out] | normal | Coordinates of the normal of face. |
Definition at line 651 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getNormal | ( | uint32_t | idx, |
uint8_t | iface ) const |
Get the normal of a face of an octant.
[in] | idx | Local index of target octant. |
[in] | iface | Index of the face for normal computing. |
Definition at line 447 of file PabloUniform.cpp.
void bitpit::PabloUniform::getNormal | ( | uint32_t | idx, |
uint8_t | iface, | ||
darray3 & | normal ) const |
Get the normal of a face of an octant.
[in] | idx | Local index of target octant. |
[in] | iface | Index of the face for normal computing. |
[out] | normal | Coordinates of the normal of face. |
Definition at line 437 of file PabloUniform.cpp.
darray3 bitpit::PabloUniform::getOrigin | ( | ) | const |
Get the coordinates of the origin of the octree.
Definition at line 174 of file PabloUniform.cpp.
Octant * bitpit::PabloUniform::getPointOwner | ( | darray3 | point | ) |
Get the octant owner of an input point.
[in] | point | Coordinates of target point. |
Definition at line 799 of file PabloUniform.cpp.
Octant * bitpit::PabloUniform::getPointOwner | ( | darray3 | point, |
bool & | isghost ) |
Get the octant owner of an input point.
[in] | point | Coordinates of target point. |
[out] | isghost | Boolean flag, true if the octant found is ghost |
Definition at line 811 of file PabloUniform.cpp.
uint32_t bitpit::PabloUniform::getPointOwnerIdx | ( | darray3 | point | ) | const |
Get the octant owner of an input point.
[in] | point | Coordinates of target point. |
Definition at line 825 of file PabloUniform.cpp.
uint32_t bitpit::PabloUniform::getPointOwnerIdx | ( | darray3 | point, |
bool & | isghost ) const |
Get the octant owner of an input point.
[in] | point | Coordinates of target point. |
[out] | isghost | Boolean flag, true if the octant found is ghost |
Definition at line 838 of file PabloUniform.cpp.
int bitpit::PabloUniform::getPointOwnerRank | ( | darray3 | point | ) |
Get the octant owner rank of an input point.
[in] | point | Coordinates of target point. |
Definition at line 849 of file PabloUniform.cpp.
double bitpit::PabloUniform::getSize | ( | const Intersection * | inter | ) | const |
Get the size of an intersection.
[in] | inter | Pointer to target intersection. |
Definition at line 740 of file PabloUniform.cpp.
double bitpit::PabloUniform::getSize | ( | const Octant * | oct | ) | const |
Get the size of an octant, i.e. the side length.
[in] | oct | Pointer to the target octant |
Definition at line 509 of file PabloUniform.cpp.
double bitpit::PabloUniform::getSize | ( | uint32_t | idx | ) | const |
Get the size of an octant, i.e. the side length.
[in] | idx | Local index of target octant. |
Definition at line 296 of file PabloUniform.cpp.
double bitpit::PabloUniform::getVolume | ( | const Octant * | oct | ) | const |
Get the volume of an octant.
[in] | oct | Pointer to the target octant |
Definition at line 527 of file PabloUniform.cpp.
double bitpit::PabloUniform::getVolume | ( | uint32_t | idx | ) | const |
Get the volume of an octant.
[in] | idx | Local index of target octant. |
Definition at line 314 of file PabloUniform.cpp.
double bitpit::PabloUniform::getX | ( | const Octant * | oct | ) | const |
Get the coordinate X of an octant, i.e. the coordinates of its node 0.
[in] | oct | Pointer to the target octant |
Definition at line 473 of file PabloUniform.cpp.
double bitpit::PabloUniform::getX | ( | uint32_t | idx | ) | const |
Get the coordinate X of an octant, i.e. the coordinates of its node 0.
[in] | idx | Local index of target octant. |
Definition at line 260 of file PabloUniform.cpp.
double bitpit::PabloUniform::getX0 | ( | ) | const |
Get the coordinate X of the origin of the octree.
Definition at line 182 of file PabloUniform.cpp.
double bitpit::PabloUniform::getY | ( | const Octant * | oct | ) | const |
Get the coordinate Y of an octant, i.e. the coordinates of its node 0.
[in] | oct | Pointer to the target octant |
Definition at line 485 of file PabloUniform.cpp.
double bitpit::PabloUniform::getY | ( | uint32_t | idx | ) | const |
Get the coordinate Y of an octant, i.e. the coordinates of its node 0.
[in] | idx | Local index of target octant. |
Definition at line 272 of file PabloUniform.cpp.
double bitpit::PabloUniform::getY0 | ( | ) | const |
Get the coordinate Y of the origin of the octree.
Definition at line 190 of file PabloUniform.cpp.
double bitpit::PabloUniform::getZ | ( | const Octant * | oct | ) | const |
Get the coordinate Z of an octant, i.e. the coordinates of its node 0.
[in] | oct | Pointer to the target octant |
Definition at line 497 of file PabloUniform.cpp.
double bitpit::PabloUniform::getZ | ( | uint32_t | idx | ) | const |
Get the coordinate Z of an octant, i.e. the coordinates of its node 0.
[in] | idx | Local index of target octant. |
Definition at line 284 of file PabloUniform.cpp.
double bitpit::PabloUniform::getZ0 | ( | ) | const |
Get the coordinate Z of the origin of the octree.
Definition at line 198 of file PabloUniform.cpp.
double bitpit::PabloUniform::levelToSize | ( | uint8_t | level | ) | const |
Get the size of an octant corresponding to a target level.
[in] | level | Input level. |
Definition at line 233 of file PabloUniform.cpp.
|
overridevirtual |
Reset the octree
Reimplemented from bitpit::ParaTree.
Definition at line 106 of file PabloUniform.cpp.
|
overridevirtual |
Restore the octree from the specified stream.
stream | is the stream to read from |
Reimplemented from bitpit::ParaTree.
Definition at line 152 of file PabloUniform.cpp.
void bitpit::PabloUniform::setL | ( | double | L | ) |
Set the length of the domain.
[in] | L | Length of the octree. |
Definition at line 214 of file PabloUniform.cpp.
void bitpit::PabloUniform::setOrigin | ( | const darray3 & | origin | ) |
Set the origin of the domain.
[in] | origin | Origin of the octree. |
Definition at line 224 of file PabloUniform.cpp.
void bitpit::PabloUniform::write | ( | const std::string & | filename | ) |
Write the physical octree mesh in .vtu format in a user-defined file. If the connectivity is not stored, the method temporary computes it. If the connectivity of ghost octants is already computed, the method writes the ghosts on file.
[in] | filename | Name of output file (PABLO will add the total number of processes p000# and the current rank s000#). |
Definition at line 881 of file PabloUniform.cpp.
void bitpit::PabloUniform::writeTest | ( | const std::string & | filename, |
dvector | data ) |
Write the physical octree mesh in .vtu format with data for test in a user-defined file. If the connectivity is not stored, the method temporary computes it. The method doesn't write the ghosts on file.
[in] | filename | Name of output file (PABLO will add the total number of processes p000# and the current rank s000#). |
[in] | data | Vector of double with user data. |
Definition at line 1035 of file PabloUniform.cpp.