Reference documentation for deal.II version Git 689de043d4 2020-08-10 16:46:15 +0200
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Functions
GridTools::internal::FixUpDistortedChildCells Namespace Reference

Functions

template<typename Iterator , int spacedim>
double objective_function (const Iterator &object, const Point< spacedim > &object_mid_point)
 
template<typename Iterator >
Point< Iterator::AccessorType::space_dimension > get_face_midpoint (const Iterator &object, const unsigned int f, std::integral_constant< int, 1 >)
 
template<typename Iterator >
Point< Iterator::AccessorType::space_dimension > get_face_midpoint (const Iterator &object, const unsigned int f, std::integral_constant< int, 2 >)
 
template<typename Iterator >
Point< Iterator::AccessorType::space_dimension > get_face_midpoint (const Iterator &object, const unsigned int f, std::integral_constant< int, 3 >)
 
template<typename Iterator >
double minimal_diameter (const Iterator &object)
 
template<typename Iterator >
bool fix_up_object (const Iterator &object)
 
template<int dim, int spacedim>
void fix_up_faces (const typename ::Triangulation< dim, spacedim >::cell_iterator &cell, std::integral_constant< int, dim >, std::integral_constant< int, spacedim >)
 

Function Documentation

◆ objective_function()

template<typename Iterator , int spacedim>
double GridTools::internal::FixUpDistortedChildCells::objective_function ( const Iterator &  object,
const Point< spacedim > &  object_mid_point 
)

Definition at line 3096 of file grid_tools.cc.

◆ get_face_midpoint() [1/3]

template<typename Iterator >
Point<Iterator::AccessorType::space_dimension> GridTools::internal::FixUpDistortedChildCells::get_face_midpoint ( const Iterator &  object,
const unsigned int  f,
std::integral_constant< int, 1 >   
)

Return the location of the midpoint of the 'f'th face (vertex) of this 1d object.

Definition at line 3192 of file grid_tools.cc.

◆ get_face_midpoint() [2/3]

template<typename Iterator >
Point<Iterator::AccessorType::space_dimension> GridTools::internal::FixUpDistortedChildCells::get_face_midpoint ( const Iterator &  object,
const unsigned int  f,
std::integral_constant< int, 2 >   
)

Return the location of the midpoint of the 'f'th face (line) of this 2d object.

Definition at line 3208 of file grid_tools.cc.

◆ get_face_midpoint() [3/3]

template<typename Iterator >
Point<Iterator::AccessorType::space_dimension> GridTools::internal::FixUpDistortedChildCells::get_face_midpoint ( const Iterator &  object,
const unsigned int  f,
std::integral_constant< int, 3 >   
)

Return the location of the midpoint of the 'f'th face (quad) of this 3d object.

Definition at line 3224 of file grid_tools.cc.

◆ minimal_diameter()

template<typename Iterator >
double GridTools::internal::FixUpDistortedChildCells::minimal_diameter ( const Iterator &  object)

Compute the minimal diameter of an object by looking for the minimal distance between the mid-points of its faces. This minimal diameter is used to determine the step length for our grid cell improvement algorithm, and it should be small enough that the point moves around within the cell even if it is highly elongated – thus, the diameter of the object is not a good measure, while the minimal diameter is. Note that the algorithm below works for both cells that are long rectangles with parallel sides where the nearest distance is between opposite edges as well as highly slanted parallelograms where the shortest distance is between neighboring edges.

Definition at line 3257 of file grid_tools.cc.

◆ fix_up_object()

template<typename Iterator >
bool GridTools::internal::FixUpDistortedChildCells::fix_up_object ( const Iterator &  object)

Try to fix up a single cell by moving around its midpoint. Return whether we succeeded with this.

Definition at line 3284 of file grid_tools.cc.

◆ fix_up_faces()

template<int dim, int spacedim>
void GridTools::internal::FixUpDistortedChildCells::fix_up_faces ( const typename ::Triangulation< dim, spacedim >::cell_iterator &  cell,
std::integral_constant< int, dim >  ,
std::integral_constant< int, spacedim >   
)

Definition at line 3466 of file grid_tools.cc.