Flow123d  release_2.2.0-914-gf1a3a4f
Public Member Functions | Private Attributes | Friends | List of all members
IntersectionAux< dimA, dimB > Class Template Reference

Internal auxiliary class representing intersection object of simplex<dimA> and simplex<dimB>. More...

#include <compute_intersection.hh>

Collaboration diagram for IntersectionAux< dimA, dimB >:
Collaboration graph
[legend]

Public Member Functions

 IntersectionAux ()
 Default constructor. More...
 
 IntersectionAux (unsigned int component_element_idx, unsigned int bulk_element_idx)
 Constructor taking in element indices. More...
 
virtual ~IntersectionAux ()
 Destructor. More...
 
std::vector< IntersectionPointAux< dimA, dimB > > & points ()
 Returns intersection points by a reference. More...
 
const std::vector< IntersectionPointAux< dimA, dimB > > & points () const
 Returns intersection points by a constant reference. More...
 
const IntersectionPointAux< dimA, dimB > & operator[] (unsigned int index) const
 Returns intersection point of given index. More...
 
unsigned int size () const
 Returns number of intersection points. More...
 
unsigned int component_ele_idx () const
 Returns index of component element. More...
 
unsigned int bulk_ele_idx () const
 Returns index of bulk element. More...
 
unsigned int is_pathologic () const
 Returns index of bulk element. More...
 
double compute_measure ()
 
template<>
double compute_measure ()
 

Private Attributes

std::vector< IntersectionPointAux< dimA, dimB > > i_points_
 Vector of internal intersection points. More...
 
unsigned int component_element_idx_
 Index of intersecting element in the component. More...
 
unsigned int bulk_element_idx_
 Index of intersecting element in the bulk. More...
 
bool pathologic_
 Flag for pathologic case. More...
 

Friends

template<typename U , typename V >
class ComputeIntersection
 
template<unsigned int dimAA, unsigned int dimBB>
std::ostream & operator<< (std::ostream &os, const IntersectionAux< dimAA, dimBB > &intersection)
 Friend output operator. More...
 

Detailed Description

template<unsigned int dimA, unsigned int dimB>
class IntersectionAux< dimA, dimB >

Internal auxiliary class representing intersection object of simplex<dimA> and simplex<dimB>.

It contains topology information and auxiliary intersection points. Used in ComputeIntersection classes.

Definition at line 47 of file compute_intersection.hh.

Constructor & Destructor Documentation

template<unsigned int dimA, unsigned int dimB>
IntersectionAux< dimA, dimB >::IntersectionAux ( )

Default constructor.

Definition at line 19 of file intersection_aux.cc.

template<unsigned int dimA, unsigned int dimB>
IntersectionAux< dimA, dimB >::IntersectionAux ( unsigned int  component_element_idx,
unsigned int  bulk_element_idx 
)

Constructor taking in element indices.

Definition at line 11 of file intersection_aux.cc.

template<unsigned int dimA, unsigned int dimB>
IntersectionAux< dimA, dimB >::~IntersectionAux ( )
virtual

Destructor.

Definition at line 23 of file intersection_aux.cc.

Member Function Documentation

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::bulk_ele_idx ( ) const
inline

Returns index of bulk element.

Definition at line 109 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::component_ele_idx ( ) const
inline

Returns index of component element.

Definition at line 105 of file intersection_aux.hh.

template<>
double IntersectionAux< 1, 3 >::compute_measure ( )

Definition at line 31 of file intersection_aux.cc.

template<unsigned int dimA, unsigned int dimB>
double IntersectionAux< dimA, dimB >::compute_measure ( )

Computes the relative measure of intersection object. TODO: unifiy implementation with IntersectionLocalb

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::is_pathologic ( ) const
inline

Returns index of bulk element.

Definition at line 113 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
const IntersectionPointAux< dimA, dimB > & IntersectionAux< dimA, dimB >::operator[] ( unsigned int  index) const
inline

Returns intersection point of given index.

Definition at line 95 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
std::vector< IntersectionPointAux< dimA, dimB > > & IntersectionAux< dimA, dimB >::points ( )
inline

Returns intersection points by a reference.

Definition at line 87 of file intersection_aux.hh.

Here is the caller graph for this function:

template<unsigned int dimA, unsigned int dimB>
const std::vector< IntersectionPointAux< dimA, dimB > > & IntersectionAux< dimA, dimB >::points ( ) const
inline

Returns intersection points by a constant reference.

Definition at line 91 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::size ( ) const
inline

Returns number of intersection points.

Definition at line 101 of file intersection_aux.hh.

Here is the caller graph for this function:

Friends And Related Function Documentation

template<unsigned int dimA, unsigned int dimB>
template<typename U , typename V >
friend class ComputeIntersection
friend

Definition at line 81 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
template<unsigned int dimAA, unsigned int dimBB>
std::ostream& operator<< ( std::ostream &  os,
const IntersectionAux< dimAA, dimBB > &  intersection 
)
friend

Friend output operator.

Member Data Documentation

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::bulk_element_idx_
private

Index of intersecting element in the bulk.

Definition at line 44 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::component_element_idx_
private

Index of intersecting element in the component.

Definition at line 42 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
std::vector<IntersectionPointAux<dimA,dimB> > IntersectionAux< dimA, dimB >::i_points_
private

Vector of internal intersection points.

Definition at line 39 of file intersection_aux.hh.

template<unsigned int dimA, unsigned int dimB>
bool IntersectionAux< dimA, dimB >::pathologic_
private

Flag for pathologic case.

Definition at line 46 of file intersection_aux.hh.


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