dune-alugrid 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | List of all members
Dune::ReferenceGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > > Class Template Reference

#include <dune/alugrid/3d/gridfactory.hh>

Inheritance diagram for Dune::ReferenceGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >:
Inheritance graph

Public Types

typedef BaseType::Grid Grid
 
typedef BaseType::MPICommunicatorType MPICommunicatorType
 
typedef Grid::ctype ctype
 
typedef unsigned int VertexId
 
typedef unsigned int GlobalIdType
 
typedef ALUGridTransformation< ctype, dimensionworldTransformation
 
typedef Transformation::WorldVector WorldVector
 type of vector for world coordinates
 
typedef Transformation::WorldMatrix WorldMatrix
 type of matrix from world coordinates to world coordinates
 
typedef Grid::CollectiveCommunication Communication
 
typedef decltype(std::declval< Dune::GridFactoryInterface< Grid > * >() ->createGrid() GridPtrType)
 

Public Member Functions

 ReferenceGridFactory ()
 Default constructor.
 
virtual void insertVertex (const VertexInputType &pos)
 insert a vertex into the coarse grid
 
void insertVertex (const VertexInputType &pos, const VertexId globalId)
 insert a vertex into the coarse grid including the vertex's globally unique id
 
virtual void insertElement (const GeometryType &geometry, const std::vector< VertexId > &vertices)
 insert an element into the coarse grid
 
virtual void insertBoundary (const GeometryType &geometry, const std::vector< VertexId > &faceVertices, int boundaryId=1)
 insert a boundary element into the coarse grid
 
virtual void insertBoundary (int element, int face, int boundaryId=1)
 mark a face as boundary (and assign a boundary id)
 
void insertProcessBorder (int element, int face)
 
virtual void insertProcessBorder (const std::vector< VertexId > &vertices)
 
virtual void insertBoundaryProjection (const GeometryType &type, const std::vector< VertexId > &vertices, const DuneBoundaryProjectionType *projection)
 insert a boundary projection into the macro grid
 
virtual void insertBoundaryProjection (const DuneBoundaryProjectionType &bndProjection, const bool isSurfaceProjection=(dimension !=dimensionworld))
 insert a boundary projection object, (a copy is made)
 
virtual void insertBoundarySegment (const std::vector< VertexId > &vertices)
 insert a boundary segment into the macro grid
 
virtual void insertBoundarySegment (const std::vector< VertexId > &vertices, const std::shared_ptr< BoundarySegment< dimension, dimensionworld > > &boundarySegment)
 insert a shaped boundary segment into the macro grid
 
void insertFaceTransformation (const WorldMatrix &matrix, const WorldVector &shift)
 add a face transformation (for periodic identification)
 
GridPtrType createGrid ()
 finalize the grid creation and hand over the grid
 
GridPtrType createGrid (const bool addMissingBoundaries, const std::string dgfName="")
 
GridPtrType createGrid (const bool addMissingBoundaries, bool temporary, const std::string dgfName="")
 
virtual unsigned int insertionIndex (const typename Codim< 0 >::Entity &entity) const
 
virtual unsigned int insertionIndex (const typename Codim< dimension >::Entity &entity) const
 
virtual unsigned int insertionIndex (const typename Grid::LevelIntersection &intersection) const
 
virtual unsigned int insertionIndex (const typename Grid::LeafIntersection &intersection) const
 
virtual bool wasInserted (const typename Grid::LevelIntersection &intersection) const
 
virtual bool wasInserted (const typename Grid::LeafIntersection &intersection) const
 
const std::vector< unsigned int > & ordering () const
 
void setLongestEdgeFlag (bool flag=true)
 set longest edge marking for biscetion grids (default is off)
 
Communication comm () const
 Return the Communication used by the grid factory.
 

Static Public Attributes

static const ALU3dGridElementType elementType
 
static const unsigned int dimension
 
static const unsigned int dimensionworld
 

Member Typedef Documentation

◆ Communication

typedef Grid::CollectiveCommunication Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::Communication
inherited

◆ ctype

typedef Grid::ctype Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::ctype
inherited

◆ GlobalIdType

typedef unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::GlobalIdType
inherited

◆ Grid

template<int dim, int dimw, ALUGridElementType eltype, ALUGridRefinementType refinementtype, class Comm >
typedef BaseType::Grid Dune::ReferenceGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::Grid

◆ GridPtrType

typedef decltype(std::declval< Dune::GridFactoryInterface< Grid >* >()->createGrid() Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::GridPtrType)
inherited

◆ MPICommunicatorType

template<int dim, int dimw, ALUGridElementType eltype, ALUGridRefinementType refinementtype, class Comm >
typedef BaseType::MPICommunicatorType Dune::ReferenceGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::MPICommunicatorType

◆ Transformation

typedef ALUGridTransformation< ctype, dimensionworld > Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::Transformation
inherited

◆ VertexId

typedef unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::VertexId
inherited

◆ WorldMatrix

typedef Transformation::WorldMatrix Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::WorldMatrix
inherited

type of matrix from world coordinates to world coordinates

◆ WorldVector

typedef Transformation::WorldVector Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::WorldVector
inherited

type of vector for world coordinates

Constructor & Destructor Documentation

◆ ReferenceGridFactory()

template<int dim, int dimw, ALUGridElementType eltype, ALUGridRefinementType refinementtype, class Comm >
Dune::ReferenceGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::ReferenceGridFactory ( )
inline

Default constructor.

Member Function Documentation

◆ comm()

Communication Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::comm ( ) const
inlineinherited

Return the Communication used by the grid factory.

Use the Communication available from the grid.

◆ createGrid() [1/3]

alu_inline ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::GridPtrType Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::createGrid
inherited

finalize the grid creation and hand over the grid

The caller takes responsibility for deleing the grid.

◆ createGrid() [2/3]

alu_inline ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::GridPtrType Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::createGrid ( const bool  addMissingBoundaries,
bool  temporary,
const std::string  dgfName = "" 
)
inherited

◆ createGrid() [3/3]

alu_inline ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::GridPtrType Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::createGrid ( const bool  addMissingBoundaries,
const std::string  dgfName = "" 
)
inherited

◆ insertBoundary() [1/2]

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertBoundary ( const GeometryType &  geometry,
const std::vector< VertexId > &  faceVertices,
int  boundaryId = 1 
)
virtualinherited

insert a boundary element into the coarse grid

Note
The order of the vertices must coincide with the vertex order in the corresponding DUNE reference element.
Parameters
[in]geometryGeometryType of the boundary element
[in]faceVerticesvertices of the boundary element
[in]boundaryIdboundary identifier of the boundary element, the default value is 1

◆ insertBoundary() [2/2]

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertBoundary ( int  element,
int  face,
int  boundaryId = 1 
)
virtualinherited

mark a face as boundary (and assign a boundary id)

Parameters
[in]elementindex of the element, the face belongs to
[in]facelocal number of the face within the element
[in]boundaryIdboundary id to assign to the face, the default value is 1

◆ insertBoundaryProjection() [1/2]

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertBoundaryProjection ( const DuneBoundaryProjectionType &  bndProjection,
const bool  isSurfaceProjection = (dimension != dimensionworld) 
)
virtualinherited

insert a boundary projection object, (a copy is made)

Parameters
[in]bndProjectioninstance of an ALUGridBoundaryProjection projecting vertices to a curved

◆ insertBoundaryProjection() [2/2]

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertBoundaryProjection ( const GeometryType &  type,
const std::vector< VertexId > &  vertices,
const DuneBoundaryProjectionType *  projection 
)
virtualinherited

insert a boundary projection into the macro grid

Parameters
[in]typegeometry type of boundary face
[in]verticesvertices of the boundary face
[in]projectionboundary projection
Note
The grid takes control of the projection object.

◆ insertBoundarySegment() [1/2]

void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertBoundarySegment ( const std::vector< VertexId > &  vertices)
inlinevirtualinherited

insert a boundary segment into the macro grid

Parameters
[in]verticesvertex indices of boundary face

◆ insertBoundarySegment() [2/2]

void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertBoundarySegment ( const std::vector< VertexId > &  vertices,
const std::shared_ptr< BoundarySegment< dimension, dimensionworld > > &  boundarySegment 
)
inlinevirtualinherited

insert a shaped boundary segment into the macro grid

Parameters
[in]verticesvertex indices of boundary face
[in]boundarySegmentgeometric realization of shaped boundary

◆ insertElement()

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertElement ( const GeometryType &  geometry,
const std::vector< VertexId > &  vertices 
)
virtualinherited

insert an element into the coarse grid

Note
The order of the vertices must coincide with the vertex order in the corresponding DUNE reference element.
Parameters
[in]geometryGeometryType of the new element
[in]verticesvertices of the new element

◆ insertFaceTransformation()

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertFaceTransformation ( const WorldMatrix matrix,
const WorldVector shift 
)
inherited

add a face transformation (for periodic identification)

A face transformation is an affine mapping T from world coordinates to world coordinates. The grid factory then glues two faces f and g if T( f ) = g or T( g ) = f.

Parameters
[in]matrixmatrix describing the linear part of T
[in]shiftvector describing T( 0 )

◆ insertionIndex() [1/4]

virtual unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertionIndex ( const typename Codim< 0 >::Entity &  entity) const
inlinevirtualinherited

◆ insertionIndex() [2/4]

virtual unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertionIndex ( const typename Codim< dimension >::Entity &  entity) const
inlinevirtualinherited

◆ insertionIndex() [3/4]

virtual unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertionIndex ( const typename Grid::LeafIntersection &  intersection) const
inlinevirtualinherited

◆ insertionIndex() [4/4]

virtual unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertionIndex ( const typename Grid::LevelIntersection &  intersection) const
inlinevirtualinherited

◆ insertProcessBorder() [1/2]

void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertProcessBorder ( const std::vector< VertexId > &  vertices)
inlinevirtualinherited

◆ insertProcessBorder() [2/2]

void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertProcessBorder ( int  element,
int  face 
)
inlineinherited

◆ insertVertex() [1/2]

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertVertex ( const VertexInputType &  pos)
virtualinherited

insert a vertex into the coarse grid

Parameters
[in]posposition of the vertex

◆ insertVertex() [2/2]

alu_inline void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::insertVertex ( const VertexInputType &  pos,
const VertexId  globalId 
)
inherited

insert a vertex into the coarse grid including the vertex's globally unique id

Parameters
[in]posposition of the vertex
[in]globalIdglobally unique id for vertex

◆ ordering()

const std::vector< unsigned int > & Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::ordering ( ) const
inlineinherited

◆ setLongestEdgeFlag()

void Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::setLongestEdgeFlag ( bool  flag = true)
inlineinherited

set longest edge marking for biscetion grids (default is off)

◆ wasInserted() [1/2]

virtual bool Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::wasInserted ( const typename Grid::LeafIntersection &  intersection) const
inlinevirtualinherited

◆ wasInserted() [2/2]

virtual bool Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::wasInserted ( const typename Grid::LevelIntersection &  intersection) const
inlinevirtualinherited

Member Data Documentation

◆ dimension

const unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::dimension
staticinherited

◆ dimensionworld

const unsigned int Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::dimensionworld
staticinherited

◆ elementType

const ALU3dGridElementType Dune::ALU3dGridFactory< ALUGrid< dim, dimw, eltype, refinementtype, Comm > >::elementType
staticinherited

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