Flow123d  release_2.2.0-19-g1279b7e
Public Types | Public Member Functions | Private Attributes | Static Private Attributes | List of all members
FieldFE< spacedim, Value > Class Template Reference

#include <field_fe.hh>

Inheritance diagram for FieldFE< spacedim, Value >:
Inheritance graph
[legend]
Collaboration diagram for FieldFE< spacedim, Value >:
Collaboration graph
[legend]

Public Types

typedef FieldAlgorithmBase< spacedim, Value >::Point Point
 
typedef FieldAlgorithmBase< spacedim, Value > FactoryBaseType
 
- Public Types inherited from FieldAlgorithmBase< spacedim, Value >
typedef Space< spacedim >::Point Point
 

Public Member Functions

 FieldFE (unsigned int n_comp=0)
 
void set_fe_data (const DOFHandlerMultiDim *dh, Mapping< 1, 3 > *map1, Mapping< 2, 3 > *map2, Mapping< 3, 3 > *map3, const Vec *data)
 
virtual Value::return_type const & value (const Point &p, const ElementAccessor< spacedim > &elm)
 
virtual void value_list (const std::vector< Point > &point_list, const ElementAccessor< spacedim > &elm, std::vector< typename Value::return_type > &value_list)
 
virtual ~FieldFE ()
 
- Public Member Functions inherited from FieldAlgorithmBase< spacedim, Value >
 FieldAlgorithmBase (unsigned int n_comp=0)
 
virtual void init_from_input (const Input::Record &rec, const struct FieldAlgoBaseInitData &init_data)
 
virtual bool set_time (const TimeStep &time)
 
virtual void set_mesh (const Mesh *mesh, bool boundary_domain)
 
void set_component_idx (unsigned int idx)
 
unsigned int n_comp () const
 
FieldResult field_result () const
 
virtual double next_change_time ()
 
virtual ~FieldAlgorithmBase ()
 

Private Attributes

const DOFHandlerMultiDimdh_
 
double * data_
 
const Vec * data_vec_
 
unsigned int * dof_indices
 
Mapping< 1, 3 > * map1_
 
Mapping< 2, 3 > * map2_
 
Mapping< 3, 3 > * map3_
 

Static Private Attributes

static const int registrar
 Registrar of class to factory. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from FieldAlgorithmBase< spacedim, Value >
static std::string template_name ()
 
static Input::Type::Abstractget_input_type ()
 
static const Input::Type::Instanceget_input_type_instance (Input::Type::Selection value_selection=Input::Type::Selection())
 
static const Input::Type::Recordget_field_algo_common_keys ()
 
static std::shared_ptr< FieldAlgorithmBase< spacedim, Value > > function_factory (const Input::AbstractRecord &rec, const struct FieldAlgoBaseInitData &init_data)
 
- Static Public Attributes inherited from FieldAlgorithmBase< spacedim, Value >
static const unsigned int spacedim_ =spacedim
 
static constexpr bool is_enum_valued = boost::is_same<typename Value::element_type, FieldEnum>::value
 
- Protected Member Functions inherited from FieldAlgorithmBase< spacedim, Value >
void init_unit_conversion_coefficient (const Input::Record &rec, const struct FieldAlgoBaseInitData &init_data)
 Init value of unit_conversion_coefficient_ from input. More...
 
- Protected Attributes inherited from FieldAlgorithmBase< spacedim, Value >
TimeStep time_
 Actual time level; initial value is -infinity. More...
 
Value value_
 Last value, prevents passing large values (vectors) by value. More...
 
Value::return_type r_value_
 
FieldResult field_result_
 Indicator of particular values (zero, one) constant over space. More...
 
unsigned int component_idx_
 Specify if the field is part of a MultiField and which component it is. More...
 
double unit_conversion_coefficient_
 Coeficient of conversion of user-defined unit. More...
 

Detailed Description

template<int spacedim, class Value>
class FieldFE< spacedim, Value >

Class representing fields given by finite element approximation.

Definition at line 36 of file field_fe.hh.

Member Typedef Documentation

template<int spacedim, class Value >
typedef FieldAlgorithmBase<spacedim, Value> FieldFE< spacedim, Value >::FactoryBaseType

Definition at line 40 of file field_fe.hh.

template<int spacedim, class Value >
typedef FieldAlgorithmBase<spacedim, Value>::Point FieldFE< spacedim, Value >::Point

Definition at line 39 of file field_fe.hh.

Constructor & Destructor Documentation

template<int spacedim, class Value >
FieldFE< spacedim, Value >::FieldFE ( unsigned int  n_comp = 0)

Default constructor, optionally we need number of components n_comp in the case of Vector valued fields.

Definition at line 44 of file field_fe.impl.hh.

template<int spacedim, class Value >
FieldFE< spacedim, Value >::~FieldFE ( )
virtual

Definition at line 293 of file field_fe.impl.hh.

Member Function Documentation

template<int spacedim, class Value >
void FieldFE< spacedim, Value >::set_fe_data ( const DOFHandlerMultiDim dh,
Mapping< 1, 3 > *  map1,
Mapping< 2, 3 > *  map2,
Mapping< 3, 3 > *  map3,
const Vec *  data 
)

Setter for the finite element data. The mappings are required for computation of local coordinates.

Parameters
dhDof handler.
map11D mapping.
map22D mapping.
map33D mapping.
dataVector of dof values.

Definition at line 57 of file field_fe.impl.hh.

template<int spacedim, class Value >
Value::return_type const & FieldFE< spacedim, Value >::value ( const Point p,
const ElementAccessor< spacedim > &  elm 
)
virtual

Returns one value in one given point. ResultType can be used to avoid some costly calculation if the result is trivial.

Implements FieldAlgorithmBase< spacedim, Value >.

Definition at line 80 of file field_fe.impl.hh.

Here is the caller graph for this function:

template<int spacedim, class Value >
void FieldFE< spacedim, Value >::value_list ( const std::vector< Point > &  point_list,
const ElementAccessor< spacedim > &  elm,
std::vector< typename Value::return_type > &  value_list 
)
virtual

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

Implements FieldAlgorithmBase< spacedim, Value >.

Definition at line 180 of file field_fe.impl.hh.

Member Data Documentation

template<int spacedim, class Value >
double* FieldFE< spacedim, Value >::data_
private

Definition at line 78 of file field_fe.hh.

template<int spacedim, class Value >
const Vec* FieldFE< spacedim, Value >::data_vec_
private

Definition at line 79 of file field_fe.hh.

template<int spacedim, class Value >
const DOFHandlerMultiDim* FieldFE< spacedim, Value >::dh_
private

Definition at line 77 of file field_fe.hh.

template<int spacedim, class Value >
unsigned int* FieldFE< spacedim, Value >::dof_indices
private

Definition at line 80 of file field_fe.hh.

template<int spacedim, class Value >
Mapping<1,3>* FieldFE< spacedim, Value >::map1_
private

Definition at line 82 of file field_fe.hh.

template<int spacedim, class Value >
Mapping<2,3>* FieldFE< spacedim, Value >::map2_
private

Definition at line 83 of file field_fe.hh.

template<int spacedim, class Value >
Mapping<3,3>* FieldFE< spacedim, Value >::map3_
private

Definition at line 84 of file field_fe.hh.

template<int spacedim, class Value >
const int FieldFE< spacedim, Value >::registrar
staticprivate
Initial value:
=
Input::register_class< FieldFE<spacedim, Value>, unsigned int >("FieldFE")

Registrar of class to factory.

Implementation.

Definition at line 87 of file field_fe.hh.


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