Flow123d
last_with_con_2.0.0-663-gd0e2296
|
#include <field_elementwise.hh>
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 | |
FieldElementwise (unsigned int n_comp=0) | |
FieldElementwise (std::shared_ptr< std::vector< typename Value::element_type > > data, unsigned int n_components) | |
virtual void | init_from_input (const Input::Record &rec, const struct FieldAlgoBaseInitData &init_data) override |
bool | set_time (const TimeStep &time) override |
void | set_mesh (const Mesh *mesh, bool boundary_domain) override |
Value::return_type const & | value (const Point &p, const ElementAccessor< spacedim > &elm) override |
void | value_list (const std::vector< Point > &point_list, const ElementAccessor< spacedim > &elm, std::vector< typename Value::return_type > &value_list) override |
virtual | ~FieldElementwise () |
Public Member Functions inherited from FieldAlgorithmBase< spacedim, Value > | |
FieldAlgorithmBase (unsigned int n_comp=0) | |
void | set_component_idx (unsigned int idx) |
unsigned int | n_comp () const |
FieldResult | field_result () const |
virtual double | next_change_time () |
virtual | ~FieldAlgorithmBase () |
Static Public Member Functions | |
static const Input::Type::Record & | get_input_type () |
Implementation. More... | |
Static Public Member Functions inherited from FieldAlgorithmBase< spacedim, Value > | |
static std::string | template_name () |
static Input::Type::Abstract & | get_input_type () |
static const Input::Type::Instance & | get_input_type_instance (Input::Type::Selection value_selection=Input::Type::Selection()) |
static const Input::Type::Record & | get_field_algo_common_keys () |
static std::shared_ptr< FieldAlgorithmBase< spacedim, Value > > | function_factory (const Input::AbstractRecord &rec, const struct FieldAlgoBaseInitData &init_data) |
Private Member Functions | |
void | scale_and_check_limits () |
Multiply data_ with unit_conversion_coefficient_ and check limits of field. More... | |
Private Attributes | |
bool | internal_raw_data |
bool | boundary_domain_ |
std::shared_ptr< std::vector< typename Value::element_type > > | data_ |
Raw buffer of n_entities rows each containing Value::size() doubles. More... | |
unsigned int | n_entities_ |
Number of rows in data_ buffer. More... | |
unsigned int | n_components_ |
Size of Value. More... | |
FilePath | reader_file_ |
const Mesh * | mesh_ |
std::string | field_name_ |
Input::Record | in_rec_ |
Accessor to Input::Record. More... | |
UnitSI & | unit_si_ |
std::pair< double, double > | limits_ |
Static Private Attributes | |
static const int | registrar |
Registrar of class to factory. More... | |
Additional Inherited Members | |
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... | |
Definition at line 52 of file field_elementwise.hh.
typedef FieldAlgorithmBase<spacedim, Value> FieldElementwise< spacedim, Value >::FactoryBaseType |
Definition at line 56 of file field_elementwise.hh.
typedef FieldAlgorithmBase<spacedim, Value>::Point FieldElementwise< spacedim, Value >::Point |
Definition at line 55 of file field_elementwise.hh.
FieldElementwise< spacedim, Value >::FieldElementwise | ( | unsigned int | n_comp = 0 | ) |
Definition at line 57 of file field_elementwise.cc.
FieldElementwise< spacedim, Value >::FieldElementwise | ( | std::shared_ptr< std::vector< typename Value::element_type > > | data, |
unsigned int | n_components | ||
) |
Alternative to previous constructor.
Definition at line 68 of file field_elementwise.cc.
|
virtual |
Definition at line 228 of file field_elementwise.cc.
|
static |
Implementation.
Definition at line 34 of file field_elementwise.cc.
|
overridevirtual |
Function can provide way to initialize itself from the input data.
TODO: make protected, should be called through function factory
Reimplemented from FieldAlgorithmBase< spacedim, Value >.
Definition at line 82 of file field_elementwise.cc.
|
private |
Multiply data_
with unit_conversion_coefficient_
and check limits of field.
Definition at line 209 of file field_elementwise.cc.
|
overridevirtual |
Has to be set before calling init_from_input. This also allocate and initialize internal buffer. Do nothing if mesh is already set.
See also description of the FieldBase<...>::set_mesh.
Reimplemented from FieldAlgorithmBase< spacedim, Value >.
Definition at line 140 of file field_elementwise.cc.
|
overridevirtual |
Set row of boundary data. Used to implement old BC input. Update time and possibly update data from GMSH file.
Reimplemented from FieldAlgorithmBase< spacedim, Value >.
Definition at line 115 of file field_elementwise.cc.
|
overridevirtual |
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 166 of file field_elementwise.cc.
|
overridevirtual |
Returns std::vector of scalar values in several points at once.
Implements FieldAlgorithmBase< spacedim, Value >.
Definition at line 183 of file field_elementwise.cc.
|
private |
Is set in set_mesh method. Value true means, that we accept only boundary element accessors in the value
method. TODO: temporary solution until we have separate mesh for the boundary part
Definition at line 112 of file field_elementwise.hh.
|
private |
Raw buffer of n_entities rows each containing Value::size() doubles.
Definition at line 114 of file field_elementwise.hh.
|
private |
Definition at line 122 of file field_elementwise.hh.
|
private |
Accessor to Input::Record.
Definition at line 125 of file field_elementwise.hh.
|
private |
Is flase whne the data vector is provided at construction. Then, we disallow initialization form input and do not delete data pointer in destructor.
Definition at line 107 of file field_elementwise.hh.
|
private |
Definition at line 133 of file field_elementwise.hh.
|
private |
Definition at line 121 of file field_elementwise.hh.
|
private |
Size of Value.
Definition at line 118 of file field_elementwise.hh.
|
private |
Number of rows in data_
buffer.
Definition at line 116 of file field_elementwise.hh.
|
private |
Definition at line 120 of file field_elementwise.hh.
|
staticprivate |
Registrar of class to factory.
Definition at line 136 of file field_elementwise.hh.
|
private |
Initialization data of field. Necessary for check limits.
TODO: Temporary solution will be replaced with shared_ptr to field data in FieldAlgoBase
Definition at line 132 of file field_elementwise.hh.