Public Member Functions | |
refineEdgeHexCell (const label cellI, const refineBoundaryLayers &ref) | |
construct from cell label and the refineBoundaryLayers More... | |
const DynList< DynList< DynList< label, 4 >, 6 >, 256 > & | newCells () const |
Private Member Functions | |
void | determineFacesInDirections () |
populate faceInDirection_nad wrongFaceOrientation_ More... | |
void | populateExistingFaces () |
void | generateMissingFaces () |
generate new internal faces and tore them to new cells More... | |
Private Attributes | |
const label | cellI_ |
label of cell More... | |
label | nLayersI_ |
number of cells in local direction i More... | |
label | nLayersJ_ |
number of cells in locatiol direction j More... | |
DynList< DynList< DynList< label, 4 >, 6 >, 256 > | cellsFromCell_ |
container for new cells More... | |
const refineBoundaryLayers & | bndLayers_ |
const reference to the boundary layer class More... | |
FixedList< label, 6 > | faceInDirection_ |
faces sorted into directions of a hex shape More... | |
FixedList< bool, 6 > | faceOrientation_ |
FixedList< DynList< DynList< label > >, 2 > | cellPoints_ |
points on cross-split faces More... | |
Definition at line 194 of file refineBoundaryLayers.H.
refineEdgeHexCell | ( | const label | cellI, |
const refineBoundaryLayers & | ref | ||
) |
construct from cell label and the refineBoundaryLayers
Definition at line 633 of file refineBoundaryLayersCells.C.
|
private |
populate faceInDirection_nad wrongFaceOrientation_
find the number of layers for this cell
set the number of newly create cells
find the shared edge between the boundary faces
faces at i = const in the local coordinate system
faces k = const in the local coordinate system
find the face attached to the starting point of the edge and the face attached to the end point of the edge
check the orientation of faces
checking face at direction k = 0
checking face in direction k = 1
set orientation flag for face in direction j = 0
checking face in direction j = nLayersJ_
set orientation flag for face in direction i = 0
checking face in direction i = nLayersI_
Definition at line 307 of file refineBoundaryLayersCells.C.
References refineBoundaryLayers::refineEdgeHexCell::bndLayers_, Foam::constant::universal::c, refineBoundaryLayers::refineEdgeHexCell::cellI_, refineBoundaryLayers::refineEdgeHexCell::cellsFromCell_, edge::end(), Foam::endl(), refineBoundaryLayers::refineEdgeHexCell::faceInDirection_, refineBoundaryLayers::refineEdgeHexCell::faceOrientation_, forAll, mesh, refineBoundaryLayers::mesh_, refineBoundaryLayers::nLayersAtBndFace_, refineBoundaryLayers::refineEdgeHexCell::nLayersI_, refineBoundaryLayers::refineEdgeHexCell::nLayersJ_, Foam::help::positionOfEdgeInFace(), Foam::Pout, Foam::help::shareAnEdge(), Foam::help::sharedEdge(), List::size(), and edge::start().
|
private |
populate new cells with new faces generated from already existing faces
store new faces at k = 0
store new faces at k = 1
store new faces at j = 0
store faces at j = nLayersJ
store new faces at i = 0
store new faces at i = nLayersI
Definition at line 444 of file refineBoundaryLayersCells.C.
References Foam::constant::universal::c, Foam::endl(), forAll, forAllRow, Foam::Pout, and VRWGraph::setSize().
|
private |
generate new internal faces and tore them to new cells
fill up the matrix of points for this cell the matrix is used for generation of new cells
fill in the data for a cross-split faces
generate new internal faces for this cell generate faces with normal in the i direction
generate a quad face
populate the points form cellPoints
generate faces with the normal in j direction
generate a quad face
populate the points form cellPoints
Definition at line 508 of file refineBoundaryLayersCells.C.
References DynList< T, staticSize >::append(), Foam::constant::universal::c, Foam::endl(), Foam::Pout, Foam::help::reverseFace(), and FixedList::size().
Definition at line 246 of file refineBoundaryLayers.H.
References refineBoundaryLayers::refineEdgeHexCell::cellsFromCell_.
Referenced by refineBoundaryLayers::generateNewCells().
|
private |
label of cell
Definition at line 198 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections().
|
private |
number of cells in local direction i
Definition at line 201 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections().
|
private |
number of cells in locatiol direction j
Definition at line 204 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections().
container for new cells
Definition at line 207 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections(), and refineBoundaryLayers::refineEdgeHexCell::newCells().
|
private |
const reference to the boundary layer class
Definition at line 210 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections().
faces sorted into directions of a hex shape
Definition at line 213 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections().
|
private |
information about orientation of faces false means the orientation as expected true means wrong orientation
Definition at line 218 of file refineBoundaryLayers.H.
Referenced by refineBoundaryLayers::refineEdgeHexCell::determineFacesInDirections().
points on cross-split faces
Definition at line 221 of file refineBoundaryLayers.H.
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.