#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/latest/src/axom/quest/IntersectionShaper.hpp>
◆ BoundingBoxType
◆ HexahedronType
◆ OctahedronType
◆ PolyhedronType
◆ Point2D
◆ Point3D
◆ TetrahedronType
◆ SegmentMesh
◆ RuntimePolicy
◆ RefinementType
◆ IntersectionShaper()
axom::quest::IntersectionShaper::IntersectionShaper |
( |
const klee::ShapeSet & |
shapeSet, |
|
|
sidre::MFEMSidreDataCollection * |
dc |
|
) |
| |
|
inline |
◆ setLevel()
void axom::quest::IntersectionShaper::setLevel |
( |
int |
level | ) |
|
|
inline |
◆ setExecPolicy()
void axom::quest::IntersectionShaper::setExecPolicy |
( |
RuntimePolicy |
policy | ) |
|
|
inline |
◆ setFreeMaterialName()
void axom::quest::IntersectionShaper::setFreeMaterialName |
( |
const std::string & |
name | ) |
|
|
inline |
Set the name of the material used to account for free volume fractions.
- Parameters
-
name | The new name of the material. This name cannot contain underscores and it cannot be set once shaping has started. |
- Note
- This should not be called once any shaping has occurred.
References SLIC_ERROR.
◆ getRevolvedVolume()
double axom::quest::IntersectionShaper::getRevolvedVolume |
( |
| ) |
const |
|
inline |
Return the revolved volume that was computed during dynamic refinement.
- Returns
- The revolved volume (or zero).
◆ getApproximateRevolvedVolume()
double axom::quest::IntersectionShaper::getApproximateRevolvedVolume |
( |
| ) |
const |
|
inline |
Return the revolved volume for the m_surfaceMesh at m_level circle refinement.
- Note
- loadShape should have been called before this method.
- Returns
- The revolved volume (or zero).
References axom::quest::Shaper::m_surfaceMesh.
◆ loadShape()
virtual void axom::quest::IntersectionShaper::loadShape |
( |
const klee::Shape & |
shape | ) |
|
|
inlineoverridevirtual |
◆ applyReplacementRules()
void axom::quest::IntersectionShaper::applyReplacementRules |
( |
const klee::Shape & |
shape | ) |
|
|
inlineoverridevirtual |
◆ finalizeShapeQuery()
void axom::quest::IntersectionShaper::finalizeShapeQuery |
( |
| ) |
|
|
inlineoverridevirtual |
◆ prepareShapeQuery()
◆ runShapeQuery()
void axom::quest::IntersectionShaper::runShapeQuery |
( |
const klee::Shape & |
shape | ) |
|
|
inlineoverridevirtual |
◆ adjustVolumeFractions()
void axom::quest::IntersectionShaper::adjustVolumeFractions |
( |
| ) |
|
|
inlineoverridevirtual |
◆ setSamplesPerKnotSpan()
void axom::quest::Shaper::setSamplesPerKnotSpan |
( |
int |
nSamples | ) |
|
|
inherited |
◆ setVertexWeldThreshold()
void axom::quest::Shaper::setVertexWeldThreshold |
( |
double |
threshold | ) |
|
|
inherited |
◆ setVerbosity()
void axom::quest::Shaper::setVerbosity |
( |
bool |
isVerbose | ) |
|
|
inlineinherited |
◆ setPercentError()
void axom::quest::Shaper::setPercentError |
( |
double |
percent | ) |
|
|
inherited |
◆ setRefinementType()
◆ isVerbose()
bool axom::quest::Shaper::isVerbose |
( |
| ) |
const |
|
inlineinherited |
◆ getDC()
sidre::MFEMSidreDataCollection* axom::quest::Shaper::getDC |
( |
| ) |
|
|
inlineinherited |
◆ getSurfaceMesh()
mint::Mesh* axom::quest::Shaper::getSurfaceMesh |
( |
| ) |
const |
|
inlineinherited |
◆ isValidFormat()
virtual bool axom::quest::Shaper::isValidFormat |
( |
const std::string & |
format | ) |
const |
|
virtualinherited |
Predicate to determine if the specified format is valid.
- Parameters
-
format | A string listing the format to check |
◆ allReduceSum()
double axom::quest::Shaper::allReduceSum |
( |
double |
val | ) |
const |
|
inherited |
Helper to apply a parallel sum reduction to a quantity.
- Note
- This is the identity function when running without MPI
◆ loadShapeInternal()
void axom::quest::Shaper::loadShapeInternal |
( |
const klee::Shape & |
shape, |
|
|
double |
percentError, |
|
|
double & |
revolvedVolume |
|
) |
| |
|
protectedinherited |
Loads the shape from file into m_surfaceMesh and computes a revolvedVolume for the shape.
- Parameters
-
| shape | The shape. |
| percentError | A percent error to use when refining the shape. If it positive then Axom will try to refine dynamically according to this error. Otherwise, it will use the segmentsPerKnotSpan value. |
[out] | revolvedvolume | A revolved volume for the shape, if possible. |
◆ applyTransforms() [1/2]
void axom::quest::Shaper::applyTransforms |
( |
const klee::Shape & |
shape | ) |
|
|
protectedinherited |
Computes transforms for the shape and applies them to the surface mesh.
- Parameters
-
◆ applyTransforms() [2/2]
void axom::quest::Shaper::applyTransforms |
( |
const numerics::Matrix< double > & |
transform | ) |
|
|
protectedinherited |
Computes transforms for the shape and applies them to the surface mesh.
- Parameters
-
shape | The shape. |
transform | A 4x4 matrix containing the transformation to apply. |
◆ getTransforms()
Get a matrix that contains the shape's concatenated transforms.
- Parameters
-
shape | The shape whose transforms are being concatenated. |
- Returns
- A 4x4 matrix that represents the transforms.
◆ getRank()
int axom::quest::Shaper::getRank |
( |
| ) |
const |
|
protectedinherited |
Helper function to get the rank associated with the current process.
- Note
- This function can be called even in non-mpi configurations
◆ DEFAULT_CIRCLE_REFINEMENT_LEVEL
constexpr int axom::quest::IntersectionShaper::DEFAULT_CIRCLE_REFINEMENT_LEVEL {7} |
|
staticconstexpr |
◆ DEFAULT_REVOLVED_VOLUME
constexpr double axom::quest::IntersectionShaper::DEFAULT_REVOLVED_VOLUME {0.} |
|
staticconstexpr |
◆ DEFAULT_SAMPLES_PER_KNOT_SPAN
constexpr int axom::quest::Shaper::DEFAULT_SAMPLES_PER_KNOT_SPAN {25} |
|
staticconstexprinherited |
◆ MINIMUM_PERCENT_ERROR
constexpr double axom::quest::Shaper::MINIMUM_PERCENT_ERROR {0.} |
|
staticconstexprinherited |
◆ MAXIMUM_PERCENT_ERROR
constexpr double axom::quest::Shaper::MAXIMUM_PERCENT_ERROR {100.} |
|
staticconstexprinherited |
◆ DEFAULT_VERTEX_WELD_THRESHOLD
constexpr double axom::quest::Shaper::DEFAULT_VERTEX_WELD_THRESHOLD {1e-9} |
|
staticconstexprinherited |
◆ m_shapeSet
◆ m_dc
sidre::MFEMSidreDataCollection* axom::quest::Shaper::m_dc |
|
protectedinherited |
◆ m_surfaceMesh
mint::Mesh* axom::quest::Shaper::m_surfaceMesh {nullptr} |
|
protectedinherited |
◆ m_samplesPerKnotSpan
◆ m_percentError
◆ m_refinementType
RefinementType axom::quest::Shaper::m_refinementType {RefinementUniformSegments} |
|
protectedinherited |
◆ m_vertexWeldThreshold
◆ m_verboseOutput
bool axom::quest::Shaper::m_verboseOutput {false} |
|
protectedinherited |
◆ m_comm
MPI_Comm axom::quest::Shaper::m_comm {MPI_COMM_SELF} |
|
protectedinherited |
The documentation for this class was generated from the following file: