Dune Core Modules (unstable)

Dune::BoundarySegment< dim, dimworld, ctype > Struct Template Referenceabstract

Base class for classes implementing geometries of boundary segments. More...

Public Member Functions

virtual ~BoundarySegment ()
 Dummy virtual destructor.
 
virtual FieldVector< ctype, dimworld > operator() (const FieldVector< ctype, dim-1 > &local) const =0
 A function mapping local coordinates on a boundary segment to world coordinates.
 
virtual void backup ([[maybe_unused]] ObjectStreamType &buffer) const
 write BoundarySegment's data to stream buffer More...
 

Protected Types

typedef BndSeg BoundarySegment
 type of BoundarySegment interface class
 
typedef Dune::ParameterizedObjectFactory< std::unique_ptr< BoundarySegment > ObjectStreamType &), int > FactoryType
 type of factory creating a unique_ptr from an ObjectStreamType
 

Static Protected Member Functions

static std::unique_ptr< BoundarySegment > restore (ObjectStreamType &in)
 create an object of BoundarySegment type from a previously registered factory linked to key. More...
 

Detailed Description

template<int dim, int dimworld, class ctype>
struct Dune::BoundarySegment< dim, dimworld, ctype >

Base class for classes implementing geometries of boundary segments.

Some grid implementations, as for example UGGrid, allow to use boundary segments of arbitrary geometry. That means that you can have grid boundaries approach smooth shapes when refining the grid.

Such curved boundary segments are specified by giving classes that implement them. Each boundary segment is implemented by an object of a class derived from BoundarySegment. The set of these objects is handed over to the grid upon grid construction.

Template Parameters
dimDimension of the grid
dimworldDimension of the Euclidean space the grid is embedded in
ctypetype of coordinate storage (default is double)

Member Function Documentation

◆ backup()

template<int dim, int dimworld, class ctype >
virtual void Dune::BoundarySegment< dim, dimworld, ctype >::backup ( [[maybe_unused] ] ObjectStreamType &  buffer) const
inlinevirtual

write BoundarySegment's data to stream buffer

Parameters
bufferbuffer to store data

References DUNE_THROW.

◆ restore()

template<class BndSeg >
static std::unique_ptr< BoundarySegment > Dune::BoundarySegmentBackupRestore< BndSeg >::restore ( ObjectStreamType &  in)
inlinestaticprotectedinherited

create an object of BoundarySegment type from a previously registered factory linked to key.

Parameters
instream buffer previously written with backup containing key and object data
Returns
Object derived from BoundarySegment.

The documentation for this struct was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (Mar 27, 23:31, 2024)