Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Member Functions | Protected Member Functions
concepts::HexSubdivision Class Reference

Interface for topological subdivision strategies for hexahedrons. More...

#include <hexsubdiv.hh>

Inheritance diagram for concepts::HexSubdivision:
Inheritance graph
[legend]
Collaboration diagram for concepts::HexSubdivision:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void createChildren (Hexahedron &q) const =0
 If no children of q exist, they are created.
virtual void removeChildren (Hexahedron &q) const =0
 If there are children, they are removed.

Protected Member Functions

bool faceSubdiv4 (Quad &q) const throw (StrategyChange)
 Takes a face and tries to subdivide it into 4 (by setting the strategy to QuadSubdiv4).
QuadfindFace (const Vertex *const v, Quad *const q[4], const uint tau, const uint rho, const uint vtxIdx) const
 Looks for the quad in q which contains the vertex v.
virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream.
void subFace0011 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B) const
 Gets the two children of q and sorts them.
void subFace1100 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B) const
 Gets the two children of q and sorts them.
void subFace0110 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B) const
 Gets the two children of q and sorts them.
void subFace1001 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B) const
 Gets the two children of q and sorts them.
void subFace0123 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B, Quad *&C, Quad *&D) const
 Gets the four children of q and sorts them.
void subFace1230 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B, Quad *&C, Quad *&D) const
 Gets the four children of q and sorts them.
void subFace2301 (Quad &q, Z2 rho, Z4 tau, Quad *&A, Quad *&B, Quad *&C, Quad *&D) const
 Gets the four children of q and sorts them.
void subdivFace0 (Hexahedron &h, Quad *&A, Quad *&B, Quad *&C, Quad *&D, bool normal) const
 Subdivides a face of a hexehedron h into 4 children.
void subdivFace1 (Hexahedron &h, Quad *&A, Quad *&B, Quad *&C, Quad *&D, bool normal) const
 Subdivides a face of a hexehedron h into 4 children.
void subdivFace2 (Hexahedron &h, Quad *&A, Quad *&B, Quad *&C, Quad *&D, bool normal) const
 Subdivides a face of a hexehedron h into 4 children.
void subdivFace3 (Hexahedron &h, Quad *&A, Quad *&B, Quad *&C, Quad *&D, bool normal) const
 Subdivides a face of a hexehedron h into 4 children.
void subdivFace4 (Hexahedron &h, Quad *&A, Quad *&B, Quad *&C, Quad *&D, bool normal) const
 Subdivides a face of a hexehedron h into 4 children.
void subdivFace5 (Hexahedron &h, Quad *&A, Quad *&B, Quad *&C, Quad *&D, bool normal) const
 Subdivides a face of a hexehedron h into 4 children.

Detailed Description

Interface for topological subdivision strategies for hexahedrons.

Every specialization of HexSubdivision should be a singleton whose instance can be get with a call to instance(). It implements the method how the children of a hexahedron are created. To have access to all members of the class Hexahedron, the specializations of HexSubdivision should be friend to Hexahedron.

See also:
Hexahedron
Test:

test::DeadLock1

test::DeadLock2

test::DeadLock3

Author:
Philipp Frauenfelder, 2002

Definition at line 38 of file hexsubdiv.hh.


Member Function Documentation

virtual void concepts::HexSubdivision::createChildren ( Hexahedron q) const [pure virtual]
bool concepts::HexSubdivision::faceSubdiv4 ( Quad q) const throw (StrategyChange) [protected]

Takes a face and tries to subdivide it into 4 (by setting the strategy to QuadSubdiv4).

Firstly, a normal subdivision in one shot into 4 children is tried. If this fails (by catching a StrategyChange exception), then a previous subdivision into 2 children was executed on this face. The orthogonal subdivision into 2 children is then reserved (by setting the strategy accordingly) on the two children of the face. This can be called a subdivision into 4 children in two shots.

Parameters:
qFace to be subdivided into 4
Returns:
true if the subdivision in one shot succeeded, false otherwise
Exceptions:
StrategyChangeif the subdivision in two shots fails too
Quad* concepts::HexSubdivision::findFace ( const Vertex *const  v,
Quad *const  q[4],
const uint  tau,
const uint  rho,
const uint  vtxIdx 
) const [protected]

Looks for the quad in q which contains the vertex v.

This is done by a loop over the four entries of q and checking the indicated vertex (given by the index location vtxIdx).

Parameters:
vVertex to look for
qList of quads to search through
tauOrientation flags of the quads
rhoRotation flags of the quads
vtxIdxIndex location of the vertex in the quads counted from vertex 0 in the quad in rho = 0 direction
Returns:
the matching quad
virtual std::ostream& concepts::OutputOperator::info ( std::ostream &  os) const [protected, virtual, inherited]

Returns information in an output stream.

Reimplemented in aglowav::M< d >, aglowav::Haar3d000< F >, aglowav::C2W< F >, aglowav::W2C< F >, aglowav::C2_tl2< F >, aglowav::C2tl2< F >, aglowav::CGt2< F >, aglowav::ComposeN< F >, aglowav::BiHaar3d< F >, aglowav2::Haar3d000< F >, aglowav2::Operator00< F >, aglowav2::Haar3d0< F >, aglowav2::C2W< F >, aglowav2::W2C< F >, concepts::gfem::GfemIdentity, concepts::gfem::GfemLaplace, concepts::gfem::GfemQuadGraphics, concepts::gfem::GfemQuadGraphicsFast, concepts::gfem::GfemRiesz, concepts::gfem::GfemSpace, concepts::gfem::GfemSpaceFast, concepts::gfem::InputUC_filename, concepts::gfem::InputSol_filename, concepts::gfem::PeriodicRect, concepts::gfem::Riesz< ScalarT >, PeriodicRect, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaNormalOuterSP2D< F >, concepts::ComposeFormulaMatVec< F, DIM, G >, concepts::ComposeFormulaVecEntry< F, DIM, G >, concepts::FormulaIncPlaneWaveSource, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaPMLCart, concepts::FormulaPMLBoxRestriction< F, G >, concepts::FormulaPMLRadia, Rectangle, EquivalentStress2d, PeriodicSquare, Advection< NumFlux >, PeriodiCube, concepts::NQuads, concepts::NQuads, concepts::FiveQuads, concepts::NQuads, concepts::OrigamiCube2D, concepts::QuadGrid2D, concepts::ThreeQuads, concepts::ThreeQuadsdym, concepts::SimpleLine, concepts::EddyGeometry2D, concepts::EddyGeometry2DRotational, concepts::EddyGeometry2DRectImport, concepts::EddyGeometry2DRotateImport, concepts::InputEddy2DGeometries, hp2D::Eddy2D_H, hp2D::InputEddy2D_H, hp2D::Eddy2D_eField, concepts::InputDomains, hp2D::Maxwell2D_H, hp2D::InputMaxwell2D_H, hp2D::Maxwell2D_eField, hp2D::Models< F >, hp2D::InputModels, hp2D::Poisson2D, concepts::InputSlot, concepts::ParseThinSheetThickness, concepts::ThinSheetRule, concepts::ThinSheetRuleCoord, concepts::ThinSheetEdges::List, concepts::ThinSheetEdges, concepts::DiffReactAsympModelSolBase< F >, concepts::DiffReactAsympModelSol< F >, concepts::DiffReactAsympCollModelSolBase< F >, concepts::DiffReactAsympCollModelSol_Cont< order, alpha, F >, concepts::DiffReactAsympCollModelSol_Discont< order, alpha, F >, concepts::DiffReactAsympModelOffset< order, F >, concepts::DiffReactAsympModelUBase< F >, concepts::DiffReactAsympModelU< order, F >, concepts::DiffReactAsympCollModelU_alpha0and1< order, alpha, F >, concepts::DiffReactAsympCollModelU_alpha2< order, F >, concepts::DiffReactAsympModelUepsN< F >, concepts::DiffReactAsympModelgrad_UBase< F >, concepts::DiffReactAsympCollModel_grad_U_alpha0and1< order, alpha, F >, concepts::DiffReactAsympCollModel_grad_U_alpha2< order, F >, concepts::DiffReactAsympModeluepsN< F >, concepts::DiffReactAsympModeluepsN_grad< F >, concepts::ElementFormulaTimesCurvature< F >, concepts::DiffReactAsympCollFormula< F >, concepts::DiffReactAsympCollGamma_0< F, N, d >, concepts::DiffReactAsympCollGamma_1< F, N, d >, concepts::DiffReactAsympCollDelta_0< F, N, d >, concepts::DiffReactAsympCollDelta_1< F, N, d >, concepts::ThinSheetFunction< F >, concepts::ThinSheetDiffussionFunction, concepts::ThinSheetDiffussionFunction0, hp2D::ThinSheetQuad, hp2D::DiffussionReaction, concepts::ThinMeshes2d, concepts::ThinEllipseMeshes2d, concepts::ThinStraightMeshes2d, concepts::ThinSheetQuad2d, concepts::ThinSheet, concepts::ThinSheetParabel, concepts::ThinSheetEllipse, concepts::ThinSheetEllipse2, hp2D::ThinSheetSpaceH1, concepts::ThreeQuads, Cube, Cube2, Cube3, EpsJumpZero< F >, TraceMass, ZeroTangentialValue< F >, EvaluateEa_of_x, CellA_M_alpha_of_x, CellA_M_of_x_MC, Constant3d000< F >, Constant3d001< F >, Constant3d002< F >, Linear3d000< F >, Linear3d001< F >, Constant3d< F >, TriangleP2Graphics, TriangleP2, TrianglesP2, concepts::ExceptionBase, concepts::MissingFeature, concepts::Assertion, concepts::FileOpenError, concepts::FortranException, concepts::NoConvergence, concepts::multiplies< F, G, H >, concepts::OutputMatlab< F >, concepts::OutputMatlab< Point< F, dim > >, concepts::OutputMatlab< Mapping< F, dim > >, concepts::OutputMatlab< F * >, concepts::OutputMatlab< std::string >, concepts::OutputMatlab< bool >, concepts::OutputMatlab< std::set< F > >, concepts::OutputMatlab< std::map< F, G > >, concepts::OutputMatlab< std::vector< F > >, concepts::OutputMatlab< std::queue< F > >, concepts::OutputTecplot< F >, concepts::OutputTecplot< std::complex< F > >, concepts::OutputTecplot< Array< F > >, concepts::OutputTecplot< Point< F, dim > >, test::TestSuiteError, bem::Dirac3d000< F >, bem::Linear3d000< F >, bem::Constant3d000< F >, bem::Constant3d001< F >, bem::Constant3d002< F >, bem::LinTriGraphics, bem::ConstTriGraphics, bem::D< F >, bem::D_1< F >, bem::Dirac3d< F >, bem::Linear3d< F >, bem::Constant3d< F >, bem::AdaptiveSpace< F >, bem::AdaptConst3d000< F >, bem::AdaptConst3d001< F >, bem::AdaptConst3d002< F >, bem::TriangleGraphics< F >, cluster::F01< NodeX, NodeY >, cluster::F02< NodeX, NodeY >, cluster::F03< NodeX, NodeY >, cluster::F04< NodeX, NodeY >, cluster::Operator01< NodeX, NodeY >, cluster::Operator02< NodeX, NodeY >, cluster::X01< Node >, cluster::Y01< Node >, constraints::ConstraintsList< F >, constraints::Element< F >, constraints::Space< F >, parallel::SFCDstr, concepts::AnasaziES< ScalarT >, eigensolver::ArPack< F, G, H >, eigensolver::ArPackFabric, eigensolver::ArPackppStd< T >, eigensolver::ArPackppSymGen, eigensolver::ArPackppGen< F, G, H >, eigensolver::ArPackSymm, eigensolver::Constrained, eigensolver::DirPowIt< F, G >, eigensolver::EigenSolver< F >, eigensolver::InexactInvFabric, eigensolver::InexactInv< F >, eigensolver::JdbSym, eigensolver::JdbSymFabric, eigensolver::SmallES< F >, concepts::BesselJ< n >, concepts::BesselY< n >, concepts::Boundary, concepts::ConstFormula< F >, concepts::ElementFormulaContainer< F, G >, concepts::ElementNotInDomainOfFormula, concepts::PointerToEmptyElementFormula, concepts::Frm_Product< F, H, J >, concepts::Frm_Sum< F, H, J >, concepts::FrmE_Inverse< F, G >, concepts::FrmE_Product< F, H, J, G >, concepts::FrmE_Sum< F, H, J, G >, concepts::FormulaSyntaxError, concepts::ParsedFormula< Real >, concepts::ParsedFormula< Cmplx >, concepts::PiecewiseFormulaBase< F >, test::Container< F >, concepts::VectorElementFormulaBase< F, dim, G >, concepts::VectorFormula< F, dim >, concepts::Function< F >, concepts::CmplxPart, concepts::RealPart, concepts::ImagPart, concepts::ComplexFunction, concepts::ElementFormulaVector< dim, F, G, H >, concepts::ElementFormulaVector< 1, F, G, H >, concepts::LinearForm< F, G >, concepts::Neumann< F >, concepts::SubVector< F >, concepts::Vector< F >, concepts::BoundaryConditions, concepts::Cell, concepts::EdgeNd, concepts::Edge1d, concepts::Edge2d, concepts::Triangle2d, concepts::Quad2dSubdiv4, concepts::Quad2dSubdiv2H, concepts::Quad2dSubdiv2V, concepts::Quad2d, concepts::InfiniteQuad2d, concepts::InfiniteRect2d, concepts::Triangle3d, concepts::NegativeJacobian, concepts::Tetrahedron3d, concepts::Hex3dSubdiv8, concepts::Hex3dSubdiv2x, concepts::Hex3dSubdiv2y, concepts::Hex3dSubdiv2z, concepts::Hex3dSubdiv4x, concepts::Hex3dSubdiv4y, concepts::Hex3dSubdiv4z, concepts::Hexahedron3d, concepts::Parallelepiped3d, concepts::CellCondition, concepts::CellConditions, concepts::Circle, concepts::Connector, concepts::EdgeMesh, concepts::CircleBoundary, concepts::Map1d, concepts::Map2d, concepts::MapEdge1d, concepts::MappingEdge2d, concepts::PartMappingEdge2d, concepts::InverseMappingEdge2d, concepts::MappingStraightEdge2d, concepts::CircleMappingEdge2d, concepts::EllipseMappingEdge2d, concepts::ParabelMappingEdge2d, concepts::MappingParallelEdge2d, concepts::MappingQuadEdge2d, concepts::VertexTriangle2d, concepts::MapTriangle2d, concepts::MappingQuad2d, concepts::MapQuad2d, concepts::VertexQuad2d, concepts::BlendingQuad2d, concepts::PartMappingQuad2d, concepts::InverseVertexQuadSector2d, concepts::Map3d, concepts::PiecewiseFormula0< F >, concepts::PiecewiseConstFormula< F >, concepts::PiecewiseConstDynArrayFormula< F >, concepts::PiecewiseFormula< F >::FormulaFactor, concepts::PiecewiseFormula< F >, concepts::PiecewiseElementFormula< F, G >, concepts::Operation< F >, concepts::OpMult< F >, concepts::OpAdd< F >, concepts::OpRecipr< F >, concepts::PiecewiseFormulaFun< F, G >, concepts::PiecewiseFormulaCombine< F, G, H, I >, concepts::CurvatureElementFormula, concepts::FrmE_NormalVector, concepts::FrmE_TangentialVector, concepts::HexSubdiv8, concepts::HexSubdiv2x, concepts::HexSubdiv2y, concepts::HexSubdiv2z, concepts::HexSubdiv4x, concepts::HexSubdiv4y, concepts::HexSubdiv4z, concepts::SquareTwoInfiniteRects, concepts::SquareOneInfiniteRect, concepts::Mesh, concepts::Import3DTetMesh, concepts::ConvertMeshQuads, concepts::Line, concepts::Import2dMeshBase, concepts::Import2dMesh, concepts::Import2dMeshEz4u, concepts::Ez4uException, concepts::Import2dMeshGeneral, concepts::Import3dMesh, concepts::PointInCell< dim >, concepts::PointInCell< 1 >, concepts::CellToCellMapping< sdim, tdim >, concepts::RelativeCells, concepts::MutableMesh1, concepts::MutableMesh2, concepts::QuadSubdiv4, concepts::QuadSubdiv2H, concepts::QuadSubdiv2V, concepts::InfQuadSubdiv2V, concepts::Semantics< T >, concepts::AttributeBool, concepts::Square, concepts::Square2, concepts::StrategyChange, concepts::Vertex, concepts::Edge, concepts::InfiniteEdge, concepts::Triangle, concepts::Quad, concepts::InfiniteQuad, concepts::Tetrahedron, concepts::Hexahedron, parallel::Mesh, parallel::Mesh1, parallel::Mesh2, parallel::Mesh3, graphics::OutputBase, graphics::BaseOutputCell< F >, graphics::BaseDataCell< F, G >, graphics::BaseElementFormulaCell< F, G >, graphics::BaseFormulaCell< F, G >, graphics::BaseMeshCell, graphics::MatlabGraphics, graphics::MatlabMesh, graphics::TecplotGraphics, graphics::TecplotMesh, graphics::VertexList, hp1D::Laplace< F >, hp1D::Identity< F >, hp1D::IdentityParallel< F >, hp1D::DualSpace, hp1D::Element< F >, hp1D::ElementFormulaInterpGrad< F >, hp1D::Value< F, G >, hp1D::Grad< F, G >, hp1D::Riesz< F >, hp1D::LinearFormGradInterp_Grad< F >, hp1D::GradLinearForm< F >, hp1D::LineGraphics, hp1D::StiffElementMatrix, hp1D::MassElementMatrix, hp1D::AdvectionElementMatrix, hp1D::pSpaceL2, hp1D::Space, hp2D::APrioriRefinement, hp2D::APrioriRefinementRule, hp2D::APrioriGeometricRefinement, hp2D::APrioriRegularRefinement, hp2D::BaseQuadGraphics< F >, hp2D::Advection< F >, hp2D::Identity< F >, hp2D::Laplace< F >, hp2D::LaplaceMatrix< F >, hp2D::BilinearFormOnePartDeriv< F >, hp2D::BilinearFormTwoPartDeriv< F >, hp2D::BuildH1VtxTColumns< F >, hp2D::BuildH1EdgeTColumns< F >, hp2D::BuildH1InnerTColumns< F >, hp2D::BuildH1InnerTColumnsLinTrunk< F >, hp2D::BuildH1InnerTColumnsHypTrunk< F >, hp2D::DivDiv< Weight >, hp2D::QuadEdgeBase, hp2D::QuadEdgeFirst, hp2D::QuadEdgeMean, hp2D::QuadEdgeJump, hp2D::EdgeGraphics, hp2D::PolyEdgeRule, hp2D::PolyEdgeMax, hp2D::PolyEdgeMin, hp2D::PolyEdgeMinNeighMaxChild, hp2D::Element< F >, hp2D::H1Extension< F >, hp2D::ElementFormulaInterpGrad< F, 2 >, hp2D::ElementFormulaInterpGradN< F, 2 >, hp2D::ElementFormulaEdgeMean< F >, hp2D::ElementFormulaSignNormalVector, hp2D::Value< F, G >, hp2D::Grad< F >, hp2D::PlCurl< F >, hp2D::Trace< F, G >, hp2D::TraceDeriv< F, G >, hp2D::NeumannTrace< F, G >, hp2D::hpAdaptiveSpace< F >, hp2D::hpAdaptiveSpaceDG< F >, hp2D::hpAdaptiveSpaceH1, hp2D::Riesz< F >, hp2D::NeumannTraceElement< F >::ShapeFunction, hp2D::NeumannTraceElement< F >, hp2D::BaseQuad< F >, hp2D::Quad< F >, hp2D::InfiniteQuad, hp2D::InfiniteLaguerreQuad, hp2D::QuadGraphics< F >, hp2D::InfiniteQuadGraphics, hp2D::RecomputeShapefct, hp2D::APrioriRefinementRuleFactory, hp2D::RotRot, hp2D::Space, hp2D::hpFull, hp2D::TraceSpace, concepts::DirichletElementFormula< F, G >, hp2Dedge::RotRot, hp2Dedge::Identity, hp2Dedge::Graduv, hp2Dedge::EdgeIdentity, hp2Dedge::DirichletCoefficients, hp2Dedge::DirichletRotRot, hp2Dedge::DirichletIdentity, hp2Dedge::Value< F, G, H >, hp2Dedge::Rot< F, G >, hp2D::hpAdaptiveSpaceHCurl, hp2D::hpAdaptiveSpaceHCurl_H1, hp2Dedge::Riesz, hp2Dedge::EdgeRiesz, hp2Dedge::KarniadakisDeriv2, hp2Dedge::Quad< F >, hp2Dedge::Edge< F >, hp2Dedge::QuadGraphics< F >, hp2Dedge::Space, hp3D::APrioriRefinement, hp3D::Laplace, hp3D::Identity, hp3D::DivDiv< Weight >, hp3D::Element< F >, hp3D::Hexahedron, hp3D::HexahedronGraphics, hp3D::Hook, hp3D::Riesz, hp3D::RotRot, hp3D::Space, hp3D::SpaceTransition, hp3D::ZeroTangentialValue< F >, concepts::Karniadakis< type, mode >, concepts::Laguerre, concepts::LaguerreBasis< mode >, concepts::Quadrature< type >, concepts::QuadratureRuleGaussLobatto, concepts::QuadratureRuleGaussJacobi, concepts::QuadratureRuleTrapeze, concepts::QuadRuleFactory, concepts::ShapeFunction1D< F >, linDG1D::Linear1d, linDG2D::Space, linDG2D::SpaceP1, linDG2D::SpaceP0, linDG2D::Triangle, linDG2D::TriangleP1, linDG2D::TriangleP0, linDG2D::TriangleGraphics, linDG3D::FvdgElement, linDG3D::FvdgP0TetElem, linDG3D::FvdgP1TetElem, linDG3D::FvdgP0TetGraphics, linDG3D::FvdgP1TetGraphics, linDG3D::FvdgSpace, linDG3D::FvdgSpaceP0, linDG3D::FvdgSpaceP1, linearFEM::Line, linearFEM::Triangle, linearFEM::Quad, linearFEM::Tetrahedron, linearFEM::LineGraphics, linearFEM::QuadGraphics, linearFEM::Linear1d, linearFEM::Linear2d, linearFEM::Linear3d, linearFEM::TetrahedronGraphics, linearFEM::TriangleGraphics, NotExistingMatrix, concepts::MatlabMatfileError, concepts::InputAdaptiveModels, hp2D::Eddy2D_E, hp2D::InputEddy2D_E, concepts::ModelControl< hp2D::Eddy2D_E >, concepts::EddyGeometry2D, concepts::EddyGeometry2DRotational, concepts::EddyGeometry2DRectImport, concepts::EddyGeometry2DRotateImport, concepts::InputEddy2DGeometries, hp2D::Eddy2D_H_Interior, hp2D::Eddy2D_H, hp2D::InputEddy2D_H, concepts::HField_CircularCoil, concepts::CurlHField_CircularCoil, concepts::DivGradHField_CircularCoil, hp2D::Eddy2D_eField, hp2D::Eddy2D_dissipation, hp2D::Maxwell2D_E, hp2D::InputMaxwell2D_E, concepts::ModelControl< hp2D::Maxwell2D_E >, hp2D::Maxwell2D_hField, hp2D::Maxwell2D_H_Base, hp2D::Maxwell2D_H, hp2D::Maxwell2D_H_DD, hp2D::InputMaxwell2D_H, concepts::ModelControl< hp2D::Maxwell2D_H_Base >, concepts::ModelControl< hp2D::Maxwell2D_H >, concepts::ModelControl< hp2D::Maxwell2D_H_DD >, hp2D::Maxwell2D_eField, hp2D::Maxwell2D_dissipation, concepts::Model< F >, concepts::ModelControlBase< F >, concepts::AfterIteration< F >, concepts::BiCGStab< F, G >, concepts::BiCGStabFabric< F, G >, concepts::BilinearForm< F, G >, concepts::BilinearFormLiCo< F, G >, concepts::CG< F >, concepts::CGFabric< F >, concepts::Operator< F >, concepts::VecOperator< F >, concepts::Compose< F, H >, concepts::Multiple< F >, concepts::LiCoI< F >, concepts::LiCo< F >, concepts::Constrained, concepts::DenseMatrix< F >, concepts::DiagonalMatrix< F >, concepts::DiagonalSolver< F >, concepts::DiagonalSolverFabric< F >, concepts::DDSolver< F, G >, concepts::GMRes< F >, concepts::GMResFabric< F >, concepts::_HashedSMatrix_iterator< _Tp, _Ref, _Ptr >, concepts::LapackChol, concepts::_Matrix_iterator_base< _Tp, _Ref, _Ptr >, concepts::_Matrix_iterator< _Tp, _Ref, _Ptr >, concepts::NRLSolver, concepts::Pardiso, concepts::PardisoFabric, concepts::Permutation< F >, concepts::TrivExtendRestrict< F >, concepts::PETSc, concepts::PETScMat, concepts::PETScFabric, concepts::SparseMatrix< F >, concepts::Spooles, concepts::SubMatrixN< F >, concepts::_SubMatrix_iterator< F, _Ref, _Ptr >, concepts::SuperLU< F >, concepts::SuperLUFabric< F >, concepts::Transpose< F >, concepts::Umfpack, concepts::UmfpackFabric, concepts::Dirichlet< F >, concepts::DDSpace< F >, concepts::DomainDecomp< F >, concepts::ElementAndFacette< F >, concepts::ElementFormulaLiCo< F, G, H, J >, concepts::ElementFormulaCompose< F, G, H >, concepts::ElementFormulaBoundary, concepts::ElementFormulaRotate2D< F >, concepts::FrmE_ScalarProductNormalEdge2d< F >, concepts::ElementFunction< F, G >, concepts::Squared< F, G >, concepts::AbsoluteComp< F, G >, concepts::Absolute< F, G >, concepts::HRefinement< F, dim >, concepts::PRefinement< F, dim >, concepts::CellIntegral< F >, concepts::CellFaceIntegral< F >, concepts::CellEdgeIntegral< F >, concepts::CellPostprocess< F >, concepts::GlobalPostprocess< F >, concepts::SMatrixBase< F >, concepts::SMatrix1D, concepts::SMatrixTensor< F, dim >, concepts::SMatrixCompose< F >, concepts::SMatrixGeneralTensor< F, dim >, concepts::SMatrixBlock< F, dim >, concepts::Space< F >, concepts::SpaceOnCells< F >, concepts::DummySpace< F >, concepts::SpaceDebug< F >, concepts::SpacePreBuilder, concepts::SpaceHelper< F, G >, concepts::SubspaceHelper< F, G >, concepts::BuildTColumnsBase< F, G >, concepts::Set< IndexRange >::index_iterator, concepts::Set< IndexRange >, concepts::TColumn< F >, concepts::TColumnTensor< F, dim >, concepts::TColumnBlock< F, dim >, concepts::TColumnSet< F, dim >, concepts::TMatrixBase< F >, concepts::TIndex< F >, concepts::TMatrix< F >::Control, concepts::TMatrix< F >::Data, concepts::TMatrix< F >, sparseqr::Driver, sparseqr::GivensRotations< F >, timestepping::Alpha, timestepping::Euler, timestepping::LimitingEuler, timestepping::Newmark, timestepping::Nystroem, timestepping::RungeKutta2, timestepping::RungeKutta4, timestepping::Theta, timestepping::TimeStepping, timestepping::TvdRK2, timestepping::LimitingTvdRK2, concepts::DynArrayBase, concepts::DynArray< T >, concepts::HashMap< F >, concepts::MissingParameter, concepts::InOutParameters, concepts::InputParser, concepts::InputParameter, concepts::InputFile, concepts::ProcessParameter, concepts::MultiIndex< dim >, concepts::MultiEntrance< dim, T >, concepts::MultiEntrance< 1, T >, concepts::MultiArray< dim, T >, concepts::MultiArray< 1, T >, concepts::OutputMatlab< Array< F > >, concepts::OutputMatlab< StiffArray< dim, F > >, concepts::ResultsTable, concepts::BaseSequence< F >, concepts::BaseSet< F >, concepts::StiffArray< dim, F >, concepts::StiffArray< 1, F >, concepts::ParseObjectFromString< F >, parallel::ComMPI, vectorial::BlockOperator< F >, vectorial::BramblePasciak, vectorial::BramblePasciakFabric, vectorial::CGUzawa, vectorial::CGUzawaFabric, vectorial::Graphics< F >, vectorial::LinearForm< F, G >, vectorial::TimeLinearForm, vectorial::TMatrixOffset< F >, vectorial::TMatrix< F >, vectorial::Element< F >, vectorial::BilinearForm< F, G >, vectorial::Space< F >, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaPMLCart, concepts::FormulaPMLBoxRestriction< F, G >, concepts::FormulaPMLRadia, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaNormalOuterSP2D< F >, concepts::ComposeFormulaMatVec< F, DIM, G >, concepts::ComposeFormulaVecEntry< F, DIM, G >, concepts::FormulaIncPlaneWaveSource, concepts::gfem::Riesz< Cmplx >, hp2D::Models< Cmplx >, hp2D::Models< Real >, concepts::DiffReactAsympCollModelU_alpha0and1< order, 1, F >, concepts::DiffReactAsympCollModelU_alpha0and1< order, 0, F >, concepts::DiffReactAsympCollModel_grad_U_alpha0and1< order, 1, F >, concepts::DiffReactAsympCollModel_grad_U_alpha0and1< order, 0, F >, concepts::ThinSheetFunction< Real >, eigensolver::ArPack< Real >, eigensolver::ArPackppStd< H >, eigensolver::ArPackppGen< H, F, concepts::Real >, eigensolver::EigenSolver< concepts::Cmplx >, eigensolver::EigenSolver< G >, eigensolver::EigenSolver< ScalarT >, eigensolver::EigenSolver< Real >, concepts::ElementFormulaContainer< Point< F, 2 > >, concepts::ElementFormulaContainer< concepts::Real >, concepts::ElementFormulaContainer< concepts::Point< Cmplx, 2 > >, concepts::ElementFormulaContainer< concepts::Mapping< F, 2 > >, concepts::ElementFormulaContainer< concepts::Mapping< G, 2 > >, concepts::ElementFormulaContainer< concepts::Point< concepts::Real, 2 > >, concepts::ElementFormulaContainer< Cmplx >, concepts::ElementFormulaContainer< concepts::Real2d >, concepts::ElementFormulaContainer< concepts::Mapping< typename concepts::Realtype< Cmplx >::type, 2 > >, concepts::ElementFormulaContainer< F >, concepts::ElementFormulaContainer< H >, concepts::ElementFormulaContainer< concepts::Point< F, 2 > >, concepts::ElementFormulaContainer< J >, concepts::ElementFormulaContainer< ScalarT >, concepts::ElementFormulaContainer< concepts::Mapping< typename concepts::Realtype< concepts::Real >::type, 2 > >, concepts::ElementFormulaContainer< concepts::Mapping< typename concepts::Realtype< Real >::type, 2 > >, concepts::ElementFormulaContainer< concepts::Mapping< typename concepts::Realtype< F >::type, 2 > >, concepts::ElementFormulaContainer< Real >, concepts::PiecewiseFormulaBase< concepts::Real >, concepts::PiecewiseFormulaBase< concepts::Point< Cmplx, 2 > >, concepts::PiecewiseFormulaBase< Point< H, dim > >, concepts::PiecewiseFormulaBase< Point< F, dim > >, concepts::PiecewiseFormulaBase< Cmplx >, concepts::PiecewiseFormulaBase< G >, concepts::PiecewiseFormulaBase< H >, concepts::PiecewiseFormulaBase< Real >, concepts::PiecewiseFormulaBase< Real2d >, concepts::VectorElementFormulaBase< F, 2, G >, concepts::VectorElementFormulaBase< F, 3, G >, concepts::Function< concepts::Cmplx >, concepts::Function< Cmplx >, concepts::Function< G >, concepts::Function< ScalarT >, concepts::Function< Real >, concepts::LinearForm< concepts::Real >, concepts::LinearForm< Cmplx >, concepts::LinearForm< F >, concepts::LinearForm< ScalarT >, concepts::LinearForm< Real >, concepts::Neumann< Real >, concepts::Vector< concepts::Cmplx >, concepts::Vector< Cmplx >, concepts::Vector< G >, concepts::Vector< ScalarT >, concepts::Vector< Real >, concepts::PiecewiseConstFormula< concepts::Real >, concepts::PiecewiseConstFormula< Cmplx >, concepts::PiecewiseConstFormula< Real >, concepts::PiecewiseConstFormula< Real2d >, concepts::PiecewiseFormula< Real >, concepts::PiecewiseFormula< Real2d >, concepts::PiecewiseFormulaFun< Cmplx, Real >, concepts::PiecewiseFormulaFun< Real, Real >, concepts::CellToCellMapping< 2, 2 >, concepts::Semantics< CellCondition >, concepts::Semantics< Boundary >, concepts::Semantics< bool >, graphics::BaseOutputCell< G >, graphics::BaseOutputCell< Real >, hp1D::Identity< Cmplx >, hp1D::Element< Real >, hp2D::Advection< concepts::Real >, hp2D::Advection< Cmplx >, hp2D::Identity< Cmplx >, hp2D::Identity< Real >, hp2D::Laplace< concepts::Real >, hp2D::Laplace< Cmplx >, hp2D::Element< Real >, hp2D::Grad< Cmplx >, hp2D::PlCurl< Cmplx >, hp2D::hpAdaptiveSpace< Real >, hp2D::BaseQuad< Real >, hp2D::Quad< Real >, hp2Dedge::Rot< Cmplx >, hp3D::Element< Real >, concepts::Karniadakis< 1, 1 >, concepts::Karniadakis< 1, 0 >, concepts::Quadrature< 0 >, concepts::Quadrature< 4 >, concepts::Quadrature< 5 >, concepts::ShapeFunction1D< Real >, concepts::Model< Cmplx >, concepts::ModelControlBase< Model< Cmplx > >, concepts::BilinearForm< concepts::Real >, concepts::BilinearForm< FX >, concepts::BilinearForm< Real, Real >, concepts::BilinearForm< F, Real >, concepts::BilinearForm< Cmplx, Real >, concepts::BilinearForm< Cmplx >, concepts::BilinearForm< F >, concepts::BilinearForm< concepts::Real, Real >, concepts::BilinearForm< Real >, concepts::Operator< concepts::Real >, concepts::Operator< FX >, concepts::Operator< TreeTraits< NodeX >::F >, concepts::Operator< T >, concepts::Operator< U >, concepts::Operator< Cmplx >, concepts::Operator< V >, concepts::Operator< G >, concepts::Operator< H >, concepts::Operator< Real >, concepts::VecOperator< Real >, concepts::Compose< F >, concepts::DenseMatrix< Cmplx >, concepts::DenseMatrix< Real >, concepts::DiagonalMatrix< Real >, concepts::_Matrix_iterator_base< F::type, _Ref, _Ptr >, concepts::Permutation< Real >, concepts::TrivExtendRestrict< Real >, concepts::SparseMatrix< concepts::Real >, concepts::SparseMatrix< FX >, concepts::SparseMatrix< Real >, concepts::Dirichlet< Real >, concepts::DDSpace< F::t_type >, concepts::DDSpace< G >, concepts::ElementFunction< F, Q::type >, concepts::ElementFunction< Cmplx, hp2Dedge::Quad<>::type >, concepts::ElementFunction< F >, concepts::ElementFunction< F, Quad< H >::type >, concepts::ElementFunction< F, Quad< G >::type >, concepts::ElementFunction< Cmplx, Quad< Real >::type >, concepts::ElementFunction< F, hp1D::Element< G >::type >, concepts::ElementFunction< I, G >, concepts::ElementFunction< Cmplx, F >, concepts::ElementFunction< F, Quad< Real >::type >, concepts::ElementFunction< H, G >, concepts::ElementFunction< Real, F >, concepts::CellPostprocess< concepts::Real >, concepts::CellPostprocess< G >, concepts::CellPostprocess< Real >, concepts::GlobalPostprocess< Real >, concepts::SMatrixBase< Real >, concepts::Space< concepts::Real >, concepts::Space< G >, concepts::Space< H >, concepts::Space< Real >, concepts::SpaceOnCells< Real >, concepts::DummySpace< concepts::Real >, concepts::DummySpace< G >, concepts::DummySpace< Real >, concepts::SpaceHelper< F, SpacePreBuilder >, concepts::SpaceHelper< Real, SpacePreBuilder >, concepts::SubspaceHelper< Real, SpacePreBuilder >, concepts::SubspaceHelper< F, SpacePreBuilder >, concepts::BuildTColumnsBase< F, SpacePreBuilder >, concepts::TColumn< bool >, concepts::TColumnTensor< bool, 2 >, concepts::TColumnSet< Real, 2 >, concepts::TMatrixBase< Real >, concepts::TMatrix< Real >, sparseqr::GivensRotations< Real >, concepts::DynArray< EdgeMap >, concepts::DynArray< concepts::AdaptiveControlP< 1 > >, concepts::DynArray< AdaptiveAdjust >, concepts::DynArray< F >, concepts::DynArray< bool >, concepts::DynArray< uint >, concepts::DynArray< Real >, concepts::DynArray< concepts::AdaptiveAdjustP< 1 > >, concepts::DynArray< concepts::AdaptiveAdjustP< 2 > >, concepts::DynArray< concepts::AdaptiveControl<> >, concepts::HashMap< concepts::Real >, concepts::HashMap< concepts::Sequence< UnderlyingElement > >, concepts::HashMap< double >, concepts::HashMap< const concepts::Edge * >, concepts::HashMap< concepts::StiffArray< 2, ushort > >, concepts::HashMap< Set< Connector1 * > >, concepts::HashMap< Cmplx >, concepts::HashMap< ushort >, concepts::HashMap< CtrlType_0 >, concepts::HashMap< CtrlType_1 >, concepts::HashMap< Z2 >, concepts::HashMap< uint >, concepts::HashMap< ElementFormulaContainer< F, G > >, concepts::HashMap< FormulaFactor >, concepts::HashMap< std::set< uint > >, concepts::HashMap< hp1D::Element< Real > * >, concepts::HashMap< CtrlType_2 >, concepts::HashMap< Real >, concepts::HashMap< Real2d >, concepts::HashMap< concepts::AdaptiveAdjustP< 2 > >, concepts::MultiArray< dim-1, T >, concepts::MultiArray< 1, Attribute >, concepts::MultiArray< 2, MappingEdge2d * >, concepts::MultiArray< 4, Quad * >, concepts::MultiArray< 2, int >, concepts::MultiArray< 2, Real >, concepts::MultiArray< 3, Triangle * >, concepts::MultiArray< 6, Attribute >, concepts::MultiArray< 8, Attribute >, concepts::MultiArray< 2, Edge * >, concepts::MultiArray< 2, Attribute >, concepts::MultiArray< 1, Vertex * >, concepts::MultiArray< 1, int >, concepts::MultiArray< 3, Attribute >, concepts::MultiArray< 4, Attribute >, concepts::MultiArray< 2, MultiIndex< 2 > >, concepts::BaseSequence< InputParameter * >, concepts::BaseSequence< CellConditions >, concepts::BaseSequence< UnderlyingElement >, concepts::BaseSequence< Sequence< Edge2d * > >, concepts::BaseSequence< Cell1 * >, concepts::BaseSequence< MappingEdge2d * >, concepts::BaseSequence< concepts::SparseMatrix< Real > * >, concepts::BaseSequence< const SparseMatrix< F > * >, concepts::BaseSequence< boost::shared_ptr< const Connector > >, concepts::BaseSequence< Edge * >, concepts::BaseSequence< concepts::Edge2d * >, concepts::BaseSequence< ElementFormula< Real2d > * >, concepts::BaseSequence< Edge2d * >, concepts::BaseSequence< const Connector * >, concepts::BaseSequence< const concepts::Connector * >, concepts::BaseSequence< const Key * >, concepts::BaseSequence< boost::shared_ptr< const Mesh > >, concepts::BaseSequence< ElementFormula< F > * >, concepts::BaseSequence< Cell * >, concepts::BaseSequence< concepts::CellConditions >, concepts::BaseSequence< F * >, concepts::BaseSequence< ElementFormula< Point< F, 2 > > * >, concepts::BaseSequence< ElementFormula< Real > * >, concepts::BaseSequence< Set< IndexRange > >, concepts::BaseSequence< Operator< F > * >, concepts::BaseSequence< Quad * >, concepts::BaseSequence< Connector3 * >, concepts::BaseSequence< const Connector2 * >, concepts::BaseSequence< Connector2 * >, concepts::BaseSequence< InverseVertexQuadSector2d >, concepts::BaseSequence< Connector1 * >, concepts::BaseSequence< Vertex * >, concepts::BaseSequence< Connector0 * >, concepts::BaseSequence< bool >, concepts::BaseSequence< uint >, concepts::BaseSequence< Vector< F > * >, concepts::BaseSequence< const Connector1 * >, concepts::BaseSequence< SubMatrixN< SparseMatrix< F > > * >, concepts::BaseSequence< List >, concepts::BaseSequence< Vector< F > >, concepts::BaseSequence< concepts::Set< uint > >, concepts::BaseSequence< Cell2 * >, concepts::BaseSequence< Real >, concepts::BaseSequence< const Connector0 * >, concepts::BaseSequence< Real2d >, concepts::BaseSequence< concepts::SparseMatrix< Cmplx > * >, concepts::BaseSet< IndexRange >, concepts::BaseSet< const Key * >, concepts::BaseSet< const concepts::Connector * >, concepts::BaseSet< const Connector * >, concepts::BaseSet< Connector * >, concepts::BaseSet< concepts::Cell2 * >, concepts::BaseSet< const Connector2 * >, concepts::BaseSet< Attribute >, concepts::BaseSet< Connector2 * >, concepts::BaseSet< Connector1 * >, concepts::BaseSet< Connector0 * >, concepts::BaseSet< uint >, concepts::BaseSet< const Connector1 * >, concepts::BaseSet< concepts::Attribute >, concepts::BaseSet< const Connector0 * >, concepts::StiffArray< dim, uint >, vectorial::TMatrixOffset< Real >, vectorial::TMatrix< Real >, and vectorial::Space< Real >.

virtual void concepts::HexSubdivision::removeChildren ( Hexahedron q) const [pure virtual]

If there are children, they are removed.

The additional faces, edges and vertices are removed as well.

Implemented in concepts::HexSubdiv8, concepts::HexSubdiv2x, concepts::HexSubdiv2y, concepts::HexSubdiv2z, concepts::HexSubdiv4x, concepts::HexSubdiv4y, and concepts::HexSubdiv4z.

void concepts::HexSubdivision::subdivFace0 ( Hexahedron h,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D,
bool  normal 
) const [protected]

Subdivides a face of a hexehedron h into 4 children.

normal is taken into account: true means that the face is to be subdivided in one shot, false means two shots.

Parameters:
hHexahedron of which the face has to be subdivided
AResult
BResult
CResult
DResult
normalone or two shots
void concepts::HexSubdivision::subdivFace1 ( Hexahedron h,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D,
bool  normal 
) const [protected]

Subdivides a face of a hexehedron h into 4 children.

normal is taken into account: true means that the face is to be subdivided in one shot, false means two shots.

Parameters:
hHexahedron of which the face has to be subdivided
AResult
BResult
CResult
DResult
normalone or two shots
void concepts::HexSubdivision::subdivFace2 ( Hexahedron h,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D,
bool  normal 
) const [protected]

Subdivides a face of a hexehedron h into 4 children.

normal is taken into account: true means that the face is to be subdivided in one shot, false means two shots.

Parameters:
hHexahedron of which the face has to be subdivided
AResult
BResult
CResult
DResult
normalone or two shots
void concepts::HexSubdivision::subdivFace3 ( Hexahedron h,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D,
bool  normal 
) const [protected]

Subdivides a face of a hexehedron h into 4 children.

normal is taken into account: true means that the face is to be subdivided in one shot, false means two shots.

Parameters:
hHexahedron of which the face has to be subdivided
AResult
BResult
CResult
DResult
normalone or two shots
void concepts::HexSubdivision::subdivFace4 ( Hexahedron h,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D,
bool  normal 
) const [protected]

Subdivides a face of a hexehedron h into 4 children.

normal is taken into account: true means that the face is to be subdivided in one shot, false means two shots.

Parameters:
hHexahedron of which the face has to be subdivided
AResult
BResult
CResult
DResult
normalone or two shots
void concepts::HexSubdivision::subdivFace5 ( Hexahedron h,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D,
bool  normal 
) const [protected]

Subdivides a face of a hexehedron h into 4 children.

normal is taken into account: true means that the face is to be subdivided in one shot, false means two shots.

Parameters:
hHexahedron of which the face has to be subdivided
AResult
BResult
CResult
DResult
normalone or two shots
void concepts::HexSubdivision::subFace0011 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B 
) const [protected]

Gets the two children of q and sorts them.

The sorting rule is given in the name and parametrized by the orientation flags rho and tau.

The code 0011 means the following:

rho \ tau 0 1 2 3
0 0011
1 1100

The indices 0 and 1 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A and B
void concepts::HexSubdivision::subFace0110 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B 
) const [protected]

Gets the two children of q and sorts them.

The sorting rule is given in the name and parametrized by the orientation flags rho and tau.

The code 0011 means the following:

rho \ tau 0 1 2 3
0 0011
1 1100

The indices 0 and 1 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A and B
void concepts::HexSubdivision::subFace0123 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D 
) const [protected]

Gets the four children of q and sorts them.

The sorting rule is given in the name and and parametrized by the orientation flags rho and tau.

The code 0123 means the following:

rho \ tau 0 1 2 3
0 0123
1 1230

The indices 0, 1, 2 and 3 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A, B, C and D
void concepts::HexSubdivision::subFace1001 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B 
) const [protected]

Gets the two children of q and sorts them.

The sorting rule is given in the name and parametrized by the orientation flags rho and tau.

The code 0011 means the following:

rho \ tau 0 1 2 3
0 0011
1 1100

The indices 0 and 1 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A and B
void concepts::HexSubdivision::subFace1100 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B 
) const [protected]

Gets the two children of q and sorts them.

The sorting rule is given in the name and parametrized by the orientation flags rho and tau.

The code 0011 means the following:

rho \ tau 0 1 2 3
0 0011
1 1100

The indices 0 and 1 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A and B
void concepts::HexSubdivision::subFace1230 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D 
) const [protected]

Gets the four children of q and sorts them.

The sorting rule is given in the name and and parametrized by the orientation flags rho and tau.

The code 0123 means the following:

rho \ tau 0 1 2 3
0 0123
1 1230

The indices 0, 1, 2 and 3 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A, B, C and D
void concepts::HexSubdivision::subFace2301 ( Quad q,
Z2  rho,
Z4  tau,
Quad *&  A,
Quad *&  B,
Quad *&  C,
Quad *&  D 
) const [protected]

Gets the four children of q and sorts them.

The sorting rule is given in the name and and parametrized by the orientation flags rho and tau.

The code 0123 means the following:

rho \ tau 0 1 2 3
0 0123
1 1230

The indices 0, 1, 2 and 3 denote the index in the call to Quad::child which has to be used to get the correct face back.

Returns:
A, B, C and D

The documentation for this class was generated from the following file:

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)