Flow123d  JS_before_hm-1804-gf2ad740aa
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...
 
double compute_measure ()
 
unsigned int ips_in_face () const
 Returns idx of face when all IPs lie on it; -1 otherwise. More...
 
unsigned int duplicities () const
 
void set_duplicities (unsigned int n_duplicities)
 
void set_ips_in_face (unsigned int face_idx)
 
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...
 
unsigned int ips_in_face_
 Local index of face/side in which all IPs lie. More...
 
unsigned int n_duplicities_
 Number of duplicit intersections. More...
 

Friends

template<unsigned int , unsigned int >
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 49 of file compute_intersection.hh.

Constructor & Destructor Documentation

◆ IntersectionAux() [1/2]

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

Default constructor.

Definition at line 21 of file intersection_aux.cc.

◆ IntersectionAux() [2/2]

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 12 of file intersection_aux.cc.

◆ ~IntersectionAux()

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

Destructor.

Definition at line 27 of file intersection_aux.cc.

Member Function Documentation

◆ bulk_ele_idx()

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

Returns index of bulk element.

Definition at line 122 of file intersection_aux.hh.

Here is the caller graph for this function:

◆ component_ele_idx()

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

Returns index of component element.

Definition at line 118 of file intersection_aux.hh.

◆ compute_measure() [1/2]

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

Definition at line 34 of file intersection_aux.cc.

◆ compute_measure() [2/2]

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

◆ duplicities()

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::duplicities
inline

Definition at line 130 of file intersection_aux.hh.

◆ ips_in_face()

template<unsigned int dimA, unsigned int dimB>
unsigned int IntersectionAux< dimA, dimB >::ips_in_face
inline

Returns idx of face when all IPs lie on it; -1 otherwise.

Definition at line 126 of file intersection_aux.hh.

Here is the caller graph for this function:

◆ operator[]()

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 108 of file intersection_aux.hh.

◆ points() [1/2]

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

Returns intersection points by a reference.

Definition at line 100 of file intersection_aux.hh.

Here is the caller graph for this function:

◆ points() [2/2]

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

Returns intersection points by a constant reference.

◆ set_duplicities()

template<unsigned int dimA, unsigned int dimB>
void IntersectionAux< dimA, dimB >::set_duplicities ( unsigned int  n_duplicities)
inline

Definition at line 134 of file intersection_aux.hh.

Here is the caller graph for this function:

◆ set_ips_in_face()

template<unsigned int dimA, unsigned int dimB>
void IntersectionAux< dimA, dimB >::set_ips_in_face ( unsigned int  face_idx)
inline

Definition at line 138 of file intersection_aux.hh.

Here is the caller graph for this function:

◆ size()

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

Returns number of intersection points.

Definition at line 114 of file intersection_aux.hh.

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ ComputeIntersection

template<unsigned int dimA, unsigned int dimB>
template<unsigned int , unsigned int >
friend class ComputeIntersection
friend

Definition at line 94 of file intersection_aux.hh.

◆ operator<<

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

◆ bulk_element_idx_

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.

◆ component_element_idx_

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.

◆ i_points_

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.

◆ ips_in_face_

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

Local index of face/side in which all IPs lie.

Definition at line 46 of file intersection_aux.hh.

◆ n_duplicities_

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

Number of duplicit intersections.

Definition at line 48 of file intersection_aux.hh.


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