3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Types | Public Member Functions | Static Public Attributes | List of all members
Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB > Class Template Reference

An intersection object resulting from the intersection of two primitives in an entity set. More...

#include <dumux/geometry/intersectingentities.hh>

Description

template<int dimworld, class CoordTypeA, class CoordTypeB = CoordTypeA>
class Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >

An intersection object resulting from the intersection of two primitives in an entity set.

Note
this is used as return type for some of the intersectingEntities overloads below

Public Types

using ctype = typename Dune::PromotionTraits< CoordTypeA, CoordTypeB >::PromotedType
 
using GlobalPosition = Dune::FieldVector< ctype, dimworld >
 

Public Member Functions

template<class Corners >
 IntersectionInfo (std::size_t a, std::size_t b, Corners &&c)
 
std::size_t first () const
 Get the index of the intersecting entity belonging to this grid. More...
 
std::size_t second () const
 Get the index of the intersecting entity belonging to the other grid. More...
 
const std::vector< GlobalPosition > & corners () const
 Get the corners of the intersection geometry. More...
 
bool cornersMatch (const std::vector< GlobalPosition > &otherCorners) const
 Check if the corners of this intersection match with the given corners. More...
 

Static Public Attributes

static constexpr int dimensionworld = dimworld
 

Member Typedef Documentation

◆ ctype

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
using Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::ctype = typename Dune::PromotionTraits<CoordTypeA, CoordTypeB>::PromotedType

◆ GlobalPosition

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
using Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::GlobalPosition = Dune::FieldVector<ctype, dimworld>

Constructor & Destructor Documentation

◆ IntersectionInfo()

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
template<class Corners >
Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::IntersectionInfo ( std::size_t  a,
std::size_t  b,
Corners &&  c 
)
inlineexplicit

Member Function Documentation

◆ corners()

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
const std::vector< GlobalPosition > & Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::corners ( ) const
inline

Get the corners of the intersection geometry.

◆ cornersMatch()

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
bool Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::cornersMatch ( const std::vector< GlobalPosition > &  otherCorners) const
inline

Check if the corners of this intersection match with the given corners.

Note
This is useful to check if the intersection geometry of two intersections coincide.

◆ first()

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
std::size_t Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::first ( ) const
inline

Get the index of the intersecting entity belonging to this grid.

◆ second()

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
std::size_t Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::second ( ) const
inline

Get the index of the intersecting entity belonging to the other grid.

Member Data Documentation

◆ dimensionworld

template<int dimworld, class CoordTypeA , class CoordTypeB = CoordTypeA>
constexpr int Dumux::IntersectionInfo< dimworld, CoordTypeA, CoordTypeB >::dimensionworld = dimworld
staticconstexpr

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