Flow123d
Public Types | Public Member Functions | Private Attributes | List of all members
FEValueHandler< elemdim, spacedim, Value > Class Template Reference

#include <fe_value_handler.hh>

Collaboration diagram for FEValueHandler< elemdim, spacedim, Value >:
Collaboration graph
[legend]

Public Types

typedef Space< spacedim >::Point Point
 

Public Member Functions

 FEValueHandler ()
 Constructor. More...
 
void initialize (FEValueInitData init_data)
 Initialize data members. More...
 
const Value::return_type & value (const Point &p, const ElementAccessor< spacedim > &elm)
 Returns one value in one given point. More...
 
void value_list (const Armor::array &point_list, const ElementAccessor< spacedim > &elm, std::vector< typename Value::return_type > &value_list)
 Returns std::vector of scalar values in several points at once. More...
 
unsigned int compute_quadrature (std::vector< arma::vec::fixed< 3 >> &q_points, std::vector< double > &q_weights, const ElementAccessor< spacedim > &elm, unsigned int order=3)
 Compute real coordinates and weights (use QGauss) for given element. More...
 
 ~FEValueHandler ()
 Destructor. More...
 

Private Attributes

std::shared_ptr< DOFHandlerMultiDimdh_
 DOF handler object. More...
 
VectorMPI data_vec_
 Store data of Field. More...
 
Value value_
 Last value, prevents passing large values (vectors) by value. More...
 
Value::return_type r_value_
 
unsigned int range_begin_
 Begin of dof range of actual component. More...
 
unsigned int range_end_
 End of dof range of actual component. More...
 
std::shared_ptr< FiniteElement< elemdim > > fe_
 Pointer to FiniteElement object used to computing values. More...
 

Detailed Description

template<int elemdim, int spacedim, class Value>
class FEValueHandler< elemdim, spacedim, Value >

Helper class that allows compute finite element values specified by element dimension.

Definition at line 57 of file fe_value_handler.hh.

Member Typedef Documentation

◆ Point

template<int elemdim, int spacedim, class Value >
typedef Space<spacedim>::Point FEValueHandler< elemdim, spacedim, Value >::Point

Definition at line 60 of file fe_value_handler.hh.

Constructor & Destructor Documentation

◆ FEValueHandler()

template<int elemdim, int spacedim, class Value >
FEValueHandler< elemdim, spacedim, Value >::FEValueHandler

Constructor.

Definition at line 87 of file fe_value_handler.cc.

◆ ~FEValueHandler()

template<int elemdim, int spacedim, class Value >
FEValueHandler< elemdim, spacedim, Value >::~FEValueHandler

Destructor.

Definition at line 201 of file fe_value_handler.cc.

Member Function Documentation

◆ compute_quadrature()

template<int elemdim, int spacedim, class Value >
unsigned int FEValueHandler< elemdim, spacedim, Value >::compute_quadrature ( std::vector< arma::vec::fixed< 3 >> &  q_points,
std::vector< double > &  q_weights,
const ElementAccessor< spacedim > &  elm,
unsigned int  order = 3 
)

Compute real coordinates and weights (use QGauss) for given element.

Definition at line 150 of file fe_value_handler.cc.

Here is the caller graph for this function:

◆ initialize()

template<int elemdim, int spacedim, class Value >
void FEValueHandler< elemdim, spacedim, Value >::initialize ( FEValueInitData  init_data)

Initialize data members.

Definition at line 93 of file fe_value_handler.cc.

Here is the caller graph for this function:

◆ value()

template<int elemdim, int spacedim, class Value >
const Value::return_type & FEValueHandler< elemdim, spacedim, Value >::value ( const Point p,
const ElementAccessor< spacedim > &  elm 
)
inline

Returns one value in one given point.

Definition at line 108 of file fe_value_handler.cc.

Here is the caller graph for this function:

◆ value_list()

template<int elemdim, int spacedim, class Value >
void FEValueHandler< elemdim, spacedim, Value >::value_list ( const Armor::array point_list,
const ElementAccessor< spacedim > &  elm,
std::vector< typename Value::return_type > &  value_list 
)

Returns std::vector of scalar values in several points at once.

Definition at line 121 of file fe_value_handler.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ data_vec_

template<int elemdim, int spacedim, class Value >
VectorMPI FEValueHandler< elemdim, spacedim, Value >::data_vec_
private

Store data of Field.

Definition at line 83 of file fe_value_handler.hh.

◆ dh_

template<int elemdim, int spacedim, class Value >
std::shared_ptr<DOFHandlerMultiDim> FEValueHandler< elemdim, spacedim, Value >::dh_
private

DOF handler object.

Definition at line 81 of file fe_value_handler.hh.

◆ fe_

template<int elemdim, int spacedim, class Value >
std::shared_ptr<FiniteElement<elemdim> > FEValueHandler< elemdim, spacedim, Value >::fe_
private

Pointer to FiniteElement object used to computing values.

Definition at line 92 of file fe_value_handler.hh.

◆ r_value_

template<int elemdim, int spacedim, class Value >
Value::return_type FEValueHandler< elemdim, spacedim, Value >::r_value_
private

Definition at line 86 of file fe_value_handler.hh.

◆ range_begin_

template<int elemdim, int spacedim, class Value >
unsigned int FEValueHandler< elemdim, spacedim, Value >::range_begin_
private

Begin of dof range of actual component.

Definition at line 88 of file fe_value_handler.hh.

◆ range_end_

template<int elemdim, int spacedim, class Value >
unsigned int FEValueHandler< elemdim, spacedim, Value >::range_end_
private

End of dof range of actual component.

Definition at line 90 of file fe_value_handler.hh.

◆ value_

template<int elemdim, int spacedim, class Value >
Value FEValueHandler< elemdim, spacedim, Value >::value_
private

Last value, prevents passing large values (vectors) by value.

Definition at line 85 of file fe_value_handler.hh.


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