ryujin 2.1.1 revision b04fb4aba7bd97ddfa5994a6b4b6e8586eb15db2
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | 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, 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 update_dof_handler (dealii::DoFHandler< dim > &) const
 

Protected Attributes

dealii::Point< dim > point_left_
 
dealii::Point< dim > point_right_
 
unsigned int subdivisions_x_
 
unsigned int subdivisions_y_
 
unsigned int subdivisions_z_
 
std::string grading_push_forward_
 
std::string grading_pull_back_
 
Boundary boundary_back_
 
Boundary boundary_bottom_
 
Boundary boundary_front_
 
Boundary boundary_left_
 
Boundary boundary_right_
 
Boundary boundary_top_
 
bool use_simplices_
 
- Protected Attributes inherited from ryujin::Geometry< dim >
std::function< dealii::Point< dim >(const typename dealii::Triangulation< dim >::cell_iterator &, const dealii::Point< dim > &)> transformation_
 

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

◆ 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

◆ populate_hp_collections()

template<int dim>
Geometry< dim >::HP_Collection ryujin::Geometries::RectangularDomain< dim >::populate_hp_collections ( const unsigned int  ,
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.

References ryujin::Geometries::RectangularDomain< dim >::use_simplices_.

Member Data Documentation

◆ point_left_

template<int dim>
dealii::Point<dim> ryujin::Geometries::RectangularDomain< dim >::point_left_
protected

◆ point_right_

template<int dim>
dealii::Point<dim> ryujin::Geometries::RectangularDomain< dim >::point_right_
protected

◆ subdivisions_x_

template<int dim>
unsigned int ryujin::Geometries::RectangularDomain< dim >::subdivisions_x_
protected

◆ subdivisions_y_

template<int dim>
unsigned int ryujin::Geometries::RectangularDomain< dim >::subdivisions_y_
protected

◆ subdivisions_z_

template<int dim>
unsigned int ryujin::Geometries::RectangularDomain< dim >::subdivisions_z_
protected

◆ grading_push_forward_

template<int dim>
std::string ryujin::Geometries::RectangularDomain< dim >::grading_push_forward_
protected

◆ grading_pull_back_

template<int dim>
std::string ryujin::Geometries::RectangularDomain< dim >::grading_pull_back_
protected

◆ boundary_back_

template<int dim>
Boundary ryujin::Geometries::RectangularDomain< dim >::boundary_back_
protected

◆ boundary_bottom_

template<int dim>
Boundary ryujin::Geometries::RectangularDomain< dim >::boundary_bottom_
protected

◆ boundary_front_

template<int dim>
Boundary ryujin::Geometries::RectangularDomain< dim >::boundary_front_
protected

◆ boundary_left_

template<int dim>
Boundary ryujin::Geometries::RectangularDomain< dim >::boundary_left_
protected

◆ boundary_right_

template<int dim>
Boundary ryujin::Geometries::RectangularDomain< dim >::boundary_right_
protected

◆ boundary_top_

template<int dim>
Boundary ryujin::Geometries::RectangularDomain< dim >::boundary_top_
protected

◆ use_simplices_

template<int dim>
bool ryujin::Geometries::RectangularDomain< dim >::use_simplices_
protected

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