ryujin 2.1.1 revision dbf0e3ba7acdb60b6d558e4257815df4a8f8daf9
Public Member Functions | List of all members
ryujin::Geometries::RectangularDomain< dim > Class Template Reference

#include <source/geometries/geometry_rectangular_domain.h>

Inheritance diagram for ryujin::Geometries::RectangularDomain< dim >:
Inheritance graph
[legend]
Collaboration diagram for ryujin::Geometries::RectangularDomain< dim >:
Collaboration graph
[legend]

Public Member Functions

 RectangularDomain (const std::string &name, const std::string &subsection)
 
 RectangularDomain (const std::string subsection)
 
void create_coarse_triangulation (dealii::Triangulation< dim > &triangulation) const override
 
Geometry< dim >::HP_Collection populate_hp_collections (const unsigned int, const bool, typename ryujin::Discretization< dim >::Collection &) const override
 
- Public Member Functions inherited from ryujin::Geometry< dim >
 Geometry (const std::string &name, const std::string &subsection)
 
virtual void create_coarse_triangulation (dealii::Triangulation< dim > &triangulation) const =0
 
virtual void update_dof_handler (dealii::DoFHandler< dim > &) const
 
virtual HP_Collection populate_hp_collections (const unsigned int, const bool, typename ryujin::Discretization< dim >::Collection &) const
 

Additional Inherited Members

- Public Types inherited from ryujin::Geometry< dim >
enum class  HP_Collection { standard_quadrilaterals , standard_simplices , populated_by_geometry }
 

Detailed Description

template<int dim>
class ryujin::Geometries::RectangularDomain< dim >

A simple rectangular domain that is used for most validation and benchmark configurations.

The rectangular domain is defined by two points, the bottom left corner \((x_1,y_1,z_1)\) and the top right corner \((x_2,y_2,z_2)\).

A mesh grading can be enforced by defining an optional pull back and push forward operation.

By convention the rectangular domain is orient with the x-axis to from "left to right", the y-axis from "bottom to top" and the z-axis from "the back towards the front".

The class allows to prescribe any of the supported boundary condition on any of the 2, 4, or 6 faces.

Definition at line 37 of file geometry_rectangular_domain.h.

Constructor & Destructor Documentation

◆ RectangularDomain() [1/2]

template<int dim>
ryujin::Geometries::RectangularDomain< dim >::RectangularDomain ( const std::string &  name,
const std::string &  subsection 
)
inline

Definition at line 40 of file geometry_rectangular_domain.h.

References ryujin::dirichlet.

◆ RectangularDomain() [2/2]

template<int dim>
ryujin::Geometries::RectangularDomain< dim >::RectangularDomain ( const std::string  subsection)
inline

Definition at line 126 of file geometry_rectangular_domain.h.

Member Function Documentation

◆ create_coarse_triangulation()

template<int dim>
void ryujin::Geometries::RectangularDomain< dim >::create_coarse_triangulation ( dealii::Triangulation< dim > &  triangulation) const
inlineoverridevirtual

Create a coarse triangulation representing the current Geometry. This virtual method needs to be implemented in a derived classes.

Implements ryujin::Geometry< dim >.

Definition at line 132 of file geometry_rectangular_domain.h.

References ryujin::periodic.

◆ populate_hp_collections()

template<int dim>
Geometry< dim >::HP_Collection ryujin::Geometries::RectangularDomain< dim >::populate_hp_collections ( const unsigned int  ,
const bool  ,
typename ryujin::Discretization< dim >::Collection &   
) const
inlineoverridevirtual

Populate all hp::*Collection objects for finite elements, mappings, and quadratures. As this is a formidable zoo of different collection objects, we get a writable reference to the discretization object to set them directly.

Reimplemented from ryujin::Geometry< dim >.

Definition at line 277 of file geometry_rectangular_domain.h.


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