Overture
Version 25
|
#include <AdvancingFront.h>
Classes | |
struct | cmpFace |
Protected Member Functions | |
real | computeNormalizedGrowthDistance (real, real) |
void | gatherExistingCandidates (const Face &face, real distance, ArraySimple< real > &pIdealTrans, ArraySimple< real > &pIdealPhys, ArraySimple< real > &T, ArraySimple< real > &Tinv, vector< int > &existing_candidates, vector< int > &existing_candidates_neighb, vector< int > &local_nodes) |
void | computeVertexCandidates (const ArraySimple< real > ¤tFaceVerticesTrans, const ArraySimple< real > &pIdealTrans, vector< int > &existing_candidates, const ArraySimple< real > &T, ArraySimple< real > &new_candidates, real rad) |
bool | makeTriTetFromExistingVertices (const Face ¤tFace, int newElementID, const vector< int > &existing_candidates, const vector< int > &local_nodes, vector< PriorityQueue::iterator > &oldFrontFaces) |
bool | makeTriTetFromNewVertex (const Face ¤tFace, int newElementID, ArraySimple< real > &new_candidates, vector< int > &local_nodes) |
bool | makeTriOnSurface (const Face ¤tFace, int newElementID, const vector< int > &existing_candidates, ArraySimple< real > &new_candidates, vector< PriorityQueue::iterator > &oldFrontFaces) |
bool | isFaceConsistent (const ArraySimple< int > &, const Face &filterFace) |
bool | isFaceConsistent (const ArraySimple< real > &, const Face &filterFace) |
bool | isFaceConsistent2D (const ArraySimple< real > &p1, const ArraySimple< real > &p2, const int filterFace) const |
bool | isFaceConsistent2D (int v1, int v2, int filterFace) const |
bool | isFaceConsistent3D (const ArraySimple< int > &, const Face &filterFace) |
bool | isFaceConsistent3D (const ArraySimple< real > &, const Face &filterFace) |
bool | isOnFacePlane (const Face &face, ArraySimple< real > &vertex) |
bool | checkVertexDirection (const Face &face, const ArraySimple< real > &vertex) const |
ArraySimpleFixed< real, 3, 1, 1, 1 > | computeSurfaceNormal (const ArraySimpleFixed< real, 3, 1, 1, 1 > &vert, int subsurf=-1) |
void | computeFaceNormal (const ArraySimple< real > &vertices, ArraySimple< real > &normal, int subsurf=-1) |
void | addFaceToFront (Face &) |
bool | auxiliaryCheck (ArraySimple< real > &candNormal, ArraySimple< real > &faceNormal) |
int | resizeFaces (int newSize) |
int | addPoint (const ArraySimple< real > &newPt) |
void | addFaceToElement (int face, int elem) |
void | removeFaceFromFront (PriorityQueue::iterator &) |
int | transformCoordinatesToParametricSpace (realArray &xyz_in, realArray &xyz_param) |
void | computeFaceTransformation (const Face &face, ArraySimple< real > &T, ArraySimple< real > &Tinv) |
void | computeFaceNormalTransformation (const realArray &vertices, ArraySimple< real > &T, double stretch=1.0) |
real | computeElementQuality (int element) |
void | improveQuality () |
bool | newElementVertexCheck (const Face ¤tFace, vector< int > &local_nodes, ArraySimpleFixed< real, 3, 1, 1, 1 > &pc, int filterNode=-1) |
void | removeUnusedNodes () |
Protected Attributes | |
AdvancingFrontParameters | parameters |
int | nFacesFront |
int | nFacesTotal |
int | nFacesEst |
int | nptsTotal |
int | nptsEst |
int | nElements |
int | nElementsEst |
int | rangeDimension |
int | domainDimension |
int | nFacesPerElementMax |
int | nVerticesPerFaceMax |
int | nexpansions |
real | averageFaceSize |
vector< Face * > | faces |
vector< int > | foo |
vector< vector< int > > | elements |
realArray | elementQuality |
PriorityQueue | front |
realArray | xyz |
realArray | faceNormals |
intArray | initialFaceSurfaceMapping |
real | timing [numberOfTimings] |
map< int, vector < PriorityQueue::iterator > , cmpFace > | pointFaceMapping |
GeometricADT< Face * > | faceSearcher |
GeometricADT< int > | vertexSearcher |
CompositeGrid | controlGrid |
realCompositeGridFunction | controlFunction |
MappingInformation | backgroundMappings |
|
protected |
AdvancingFront::AdvancingFront | ( | ) |
AdvancingFront::AdvancingFront | ( | intArray & | initialFaces, |
realArray & | xyz_in, | ||
MappingInformation * | backgroundMappings_ = NULL |
||
) |
|
virtual |
|
protected |
|
protected |
References GeometricADTError::debug_print(), Face::getID(), Face::getNumberOfVertices(), Face::getVertex(), max(), min(), normal, and REAL_MAX.
|
protected |
References GeometricADTError::debug_print(), and ArraySimple< T >::resize().
int AdvancingFront::advanceFront | ( | int | nSteps = 1 | ) |
References AssertException(), PriorityBatchQueue< T >::clear(), debug_af, fabs(), getCPU(), Face::getID(), Face::getNumberOfVertices(), MappingProjectionParameters::getRealArray(), Face::getVertex(), Face::getZ2ID(), makeTriTetFromNewVertex(), max(), min(), CompositeSurface::project(), MappingProjectionParameters::r, REAL_MAX, ArraySimple< T >::resize(), Face::setZ2ID(), ArraySimple< T >::size(), and MappingProjectionParameters::x.
Referenced by Ugen::generateWithAdvancingFront(), and main().
|
protected |
References Face::getID(), Face::getNumberOfVertices(), and Face::getVertex().
|
protected |
References Face::getVertex(), REAL_EPSILON, and triangleArea2D().
|
protected |
References MeshQualityMetrics::computeJacobian(), MeshQualityMetrics::computeJacobianProperties(), MeshQualityMetrics::computeWeight(), Face::getNumberOfVertices(), Face::getVertex(), Face::getZ2ID(), UnstructuredMapping::pyramid, MeshQualityMetrics::setReferenceTransformation(), UnstructuredMapping::tetrahedron, and UnstructuredMapping::triangle.
|
protected |
References center, debug_af, Mapping::getClassName(), getCPU(), MappingProjectionParameters::getIntArray(), MappingProjectionParameters::getRealArray(), Mapping::getSignForJacobian(), MappingProjectionParameters::normal, pow(), Mapping::project(), r, MappingProjectionParameters::r, REAL_MAX, s, ArraySimple< T >::size(), MappingProjectionParameters::subSurfaceIndex, MappingProjectionParameters::x, MappingProjectionParameters::xr, and xr.
|
protected |
References pow().
|
protected |
References AssertException(), getCPU(), Face::getNumberOfVertices(), and Face::getVertex().
References delta.
|
protected |
References A, Mapping::getClassName(), MappingProjectionParameters::getIntArray(), MappingProjectionParameters::getRealArray(), Mapping::getSignForJacobian(), MappingProjectionParameters::normal, pow(), Mapping::project(), r, MappingProjectionParameters::r, REAL_MAX, s, MappingProjectionParameters::subSurfaceIndex, MappingProjectionParameters::x, MappingProjectionParameters::xr, and xr.
int AdvancingFront::computeTransformationAtPoint | ( | realArray & | midPt, |
ArraySimple< real > & | T | ||
) |
References dx, getIndex(), gridIndexRange, and ArraySimple< T >::size().
|
protected |
References c, MeshQualityMetrics::computeJacobian(), MeshQualityMetrics::computeJacobianProperties(), MeshQualityMetrics::computeWeight(), debug_af, get_circle_center(), get_circle_center_on_plane(), getCPU(), ArraySimple< T >::resize(), ArraySimple< T >::size(), UnstructuredMapping::tetrahedron, and UnstructuredMapping::triangle.
void AdvancingFront::destroyFront | ( | ) |
References ArraySimple< T >::redim().
Referenced by Ugen::updateHybrid().
bool AdvancingFront::existsInFront | ( | const ArraySimple< int > & | faceVertices | ) |
References faceVerticesAreSame().
bool AdvancingFront::existsInFront | ( | const int | p1, |
const int | p2 | ||
) |
bool AdvancingFront::expandFront | ( | ) |
References faceAddition::deletedElement, faceAddition::face, Face::getID(), Face::getZ1ID(), and NULL.
Referenced by Ugen::updateHybrid().
|
protected |
intArray AdvancingFront::generateElementFaceList | ( | ) |
intArray AdvancingFront::generateElementList | ( | bool | removeUnusedNodes = true | ) |
References Face::getNumberOfVertices(), Face::getVertex(), and Face::getZ2ID().
Referenced by Ugen::buildHybridInterfaceMappings(), Ugen::generateWithAdvancingFront(), and main().
|
inline |
References averageFaceSize.
|
inline |
References controlFunction.
Referenced by Ugen::generateWithAdvancingFront(), Ugen::initializeGeneration(), main(), and PlotIt::plot().
|
inline |
References domainDimension.
Referenced by Ugen::buildHybridInterfaceMappings(), Ugen::generateWithAdvancingFront(), PlotIt::plot(), and PlotIt::plotAdvancingFront().
|
inline |
References elements.
Referenced by PlotIt::plotAdvancingFront().
|
inline |
References faceNormals.
Referenced by PlotIt::plotAdvancingFront().
|
inline |
References faces.
Referenced by Ugen::buildHybridInterfaceMappings(), PlotIt::plotAdvancingFront(), and Ugen::updateHybrid().
|
inline |
References front.
Referenced by PlotIt::plotAdvancingFront().
PriorityQueue::iterator AdvancingFront::getFrontIteratorForFace | ( | const ArraySimple< int > & | faceVertices | ) |
References faceVerticesAreSame().
|
inline |
References nElements.
Referenced by Ugen::generateWithAdvancingFront(), main(), and Ugen::updateHybrid().
|
inline |
References nFacesTotal.
Referenced by Ugen::generateWithAdvancingFront(), main(), and Ugen::updateHybrid().
|
inline |
References nptsTotal.
Referenced by Ugen::buildHybridInterfaceMappings(), Ugen::generateWithAdvancingFront(), Ugen::getUnstructuredMapping(), main(), and PlotIt::plotAdvancingFront().
|
inline |
References parameters.
Referenced by main(), PlotIt::plot(), PlotIt::plotAdvancingFront(), Ugen::sealHoles(), and Ugen::updateHybrid().
|
inline |
References parameters.
|
inline |
References rangeDimension.
Referenced by Ugen::generateWithAdvancingFront(), Ugen::getUnstructuredMapping(), PlotIt::plot(), and PlotIt::plotAdvancingFront().
|
inline |
References xyz.
Referenced by Ugen::buildHybridInterfaceMappings(), Ugen::generateWithAdvancingFront(), Ugen::getUnstructuredMapping(), main(), PlotIt::plot(), and PlotIt::plotAdvancingFront().
|
protected |
References Face::getID(), Face::getZ1ID(), Face::getZ2ID(), NULL, Face::reverseVertices(), Face::setZ1ID(), and Face::setZ2ID().
void AdvancingFront::initialize | ( | intArray & | initialFaces, |
realArray & | xyz_in, | ||
MappingInformation * | backgroundMappings_ = NULL , |
||
intArray & | initialFaceSurfaceMapping_ = Overture::nullIntegerDistributedArray() |
||
) |
References assert, AssertException(), boundingBox, debug_af, GeometricADTError::debug_print(), GeometricADT< T >::delElement(), ListOfMappingRC::getLength(), Face::getNumberOfVertices(), Mapping::getRangeBound(), Face::getVertex(), insertFace(), MappingInformation::mappingList, max(), min(), NULL, per, REAL_MIN, ArraySimple< T >::redim(), and Face::setVertex().
Referenced by Ugen::initializeGeneration(), and main().
int AdvancingFront::insertFace | ( | const ArraySimple< int > & | vertexIDs, |
int | z1, | ||
int | z2 | ||
) |
|
protected |
|
protected |
|
protected |
References AssertException(), debug_af, fabs(), intersect2D(), isBetweenOpenInterval2D(), max(), min(), ArraySimple< T >::size(), and triangleArea2D().
|
protected |
References debug_af, intersect2D(), isBetweenOpenInterval2D(), max(), and min().
|
protected |
|
protected |
bool AdvancingFront::isFrontEmpty | ( | ) | const |
Referenced by Ugen::generateWithAdvancingFront(), and main().
|
protected |
References get_circle_center(), getCPU(), and Face::getVertex().
|
protected |
|
protected |
|
protected |
|
protected |
void AdvancingFront::plot | ( | PlotStuff & | ps, |
PlotStuffParameters & | psp | ||
) |
|
protected |
References AssertException(), boundingBox, debug_af, GeometricADT< T >::delElement(), fabs(), max(), min(), and REAL_MAX.
|
protected |
References assert, Face::getNumberOfVertices(), Face::getVertex(), ArraySimple< T >::resize(), and Face::setVertex().
|
protected |
|
inline |
|
protected |
bool AdvancingFront::vertexIsOnFront | ( | int | v | ) |
|
protected |
Referenced by getAverageFaceSize().
|
protected |
|
protected |
Referenced by getControlFunction(), and setControlFunction().
|
protected |
Referenced by setControlFunction().
|
protected |
Referenced by getDomainDimension().
|
protected |
|
protected |
Referenced by getElements().
|
protected |
Referenced by getFaceNormals().
|
protected |
Referenced by getFaces().
|
protected |
|
protected |
|
protected |
Referenced by getFront().
|
protected |
|
protected |
Referenced by getNumberOfElements().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by getNumberOfFaces().
|
protected |
|
protected |
Referenced by getNumberOfVertices().
|
protected |
|
protected |
Referenced by getParameters().
|
protected |
|
protected |
Referenced by getRangeDimension().
|
protected |
|
protected |
|
protected |
Referenced by getVertices().