Flow123d
master-f44eb46
|
#include <element_data_cache_base.hh>
Public Types | |
enum | NumCompValueType { N_SCALAR = 1 , N_VECTOR = 3 , N_TENSOR = 9 } |
enum | VTKValueType { VTK_INT8 , VTK_UINT8 , VTK_INT16 , VTK_UINT16 , VTK_INT32 , VTK_UINT32 , VTK_FLOAT32 , VTK_FLOAT64 } |
Types of VTK value. More... | |
Public Member Functions | |
ElementDataCacheBase () | |
Constructor. More... | |
virtual | ~ElementDataCacheBase () |
Destructor. More... | |
double | get_time () |
Getter for time of cache. More... | |
std::string | field_input_name () |
Getter for quantity name of cache. More... | |
bool | is_actual (double time, std::string field_name) |
Check if cache stored actual data. More... | |
virtual void | read_ascii_data (Tokenizer &tok, unsigned int n_components, unsigned int i_row)=0 |
virtual void | read_binary_data (std::istream &data_stream, unsigned int n_components, unsigned int i_row)=0 |
virtual void | print_ascii (ostream &out_stream, unsigned int idx)=0 |
virtual void | print_ascii_all (ostream &out_stream, unsigned int start=0)=0 |
virtual void | print_binary_all (ostream &out_stream, bool print_data_size=true, unsigned int start=0)=0 |
virtual void | print_yaml_subarray (ostream &out_stream, unsigned int precision, unsigned int begin, unsigned int end)=0 |
virtual void | get_min_max_range (double &min, double &max)=0 |
void | set_field_units (std::string unit_string) |
void | set_n_values (unsigned int n_values) |
std::string | field_units () const |
unsigned int | n_values () const |
bool | is_dummy () const |
unsigned int | n_comp () const |
unsigned int | n_dofs_per_element () const |
VTKValueType | vtk_type () const |
Get type of stored data. More... | |
std::size_t | dof_handler_hash () const |
void | set_dof_handler_hash (std::size_t hash) |
std::string | fe_type () const |
virtual std::shared_ptr< ElementDataCacheBase > | gather (Distribution *distr, LongIdx *local_to_global)=0 |
virtual std::shared_ptr< ElementDataCacheBase > | element_node_cache_fixed_size (std::vector< unsigned int > &offset_vec)=0 |
virtual std::shared_ptr< ElementDataCacheBase > | element_node_cache_optimize_size (std::vector< unsigned int > &offset_vec)=0 |
virtual std::shared_ptr< ElementDataCacheBase > | compute_node_data (std::vector< unsigned int > &conn_vec, unsigned int data_size)=0 |
unsigned int | get_boundary_begin () const |
Returns start position of boundary data in cache. More... | |
Protected Member Functions | |
template<class T > | |
void | set_vtk_type () |
Protected Attributes | |
double | time_ |
time step stored in cache More... | |
std::string | field_input_name_ |
name of field stored in cache More... | |
std::string | field_name_ |
std::string | field_units_ |
unsigned int | n_values_ |
unsigned int | n_comp_ |
VTKValueType | vtk_type_ |
Type of stored data. More... | |
std::size_t | dof_handler_hash_ |
Hash of DOF handler (attribute of native VTK data) More... | |
std::string | fe_type_ |
unsigned int | n_dofs_per_element_ |
bool | is_dummy_ |
Is true for DummyElementDataCache. More... | |
unsigned int | boundary_begin_ |
Start position of boundary data in cache. More... | |
Definition at line 33 of file element_data_cache_base.hh.
Number of components of element data stored in the database.
Enumerator | |
---|---|
N_SCALAR | |
N_VECTOR | |
N_TENSOR |
Definition at line 39 of file element_data_cache_base.hh.
Types of VTK value.
Enumerator | |
---|---|
VTK_INT8 | |
VTK_UINT8 | |
VTK_INT16 | |
VTK_UINT16 | |
VTK_INT32 | |
VTK_UINT32 | |
VTK_FLOAT32 | |
VTK_FLOAT64 |
Definition at line 46 of file element_data_cache_base.hh.
|
inline |
Constructor.
Definition at line 51 of file element_data_cache_base.hh.
|
inlinevirtual |
Destructor.
Definition at line 56 of file element_data_cache_base.hh.
|
pure virtual |
Create final node data cache.
Compute average value of each nodes.
conn_vec | Vector of connectivities, holds node indices to values of this cache |
data_size | number of nodes |
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
inline |
Get dof_handler_hash_ value.
Definition at line 164 of file element_data_cache_base.hh.
|
pure virtual |
Create node data cache of constant data size for each elements.
Method must be call on node data cache.
Every element is represented of 4 nodes maximal. Method returns cache with size = 4*n_elements*n_components. If dimension of element is less than 3, part of data is not used. This construction of node data cache allow call gather of node data for continuous and discontinuous output meshes.
offset_vec | vector of appropriate offsets (number of nodes) of each elements |
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
pure virtual |
Inverse method to previous.
Must be call on node cache with constant data size for each elements. Return data cache, that corresponds with offset vector.
offset_vec | vector of appropriate offsets (number of nodes) of each elements |
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
inline |
Get fe_type_ value.
Definition at line 178 of file element_data_cache_base.hh.
|
inline |
Getter for quantity name of cache.
Definition at line 63 of file element_data_cache_base.hh.
|
inline |
Get string representation of SI units.
Definition at line 124 of file element_data_cache_base.hh.
|
pure virtual |
Method for gathering parallel data to serial cache.
Gather data of individual processes to serial cache that is created only on zero process. Other processes return uninitialized shared pointer.
distr | Collective distribution |
local_to_global | Maps local indices to global |
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
inline |
Returns start position of boundary data in cache.
Definition at line 227 of file element_data_cache_base.hh.
|
pure virtual |
Find minimal and maximal range of stored data
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
inline |
Getter for time of cache.
Definition at line 59 of file element_data_cache_base.hh.
|
inline |
Check if cache stored actual data.
Definition at line 67 of file element_data_cache_base.hh.
|
inline |
Is only true when the object is DummyElementDataCache.
Definition at line 138 of file element_data_cache_base.hh.
|
inline |
Get number of data elements per data value.
Definition at line 145 of file element_data_cache_base.hh.
|
inline |
Get number of DOFs per element.
Definition at line 152 of file element_data_cache_base.hh.
|
inline |
Get number of data values.
Definition at line 131 of file element_data_cache_base.hh.
|
pure virtual |
Print one value at given index in ascii format
Implemented in DummyElementDataCache, ElementDataCache< T >, and ElementDataCache< double >.
|
pure virtual |
Print all data in ascii format at once stored in database
Implemented in DummyElementDataCache, ElementDataCache< T >, and ElementDataCache< double >.
|
pure virtual |
Print all data in binary format at once stored in database
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
pure virtual |
Print stored values in the YAML format (using JSON like arrays). Used for output of observe values.
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
pure virtual |
Read ascii data of given i_row
from tokenizer
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
pure virtual |
Read binary data of given i_row
from data stream
Implemented in ElementDataCache< T >, ElementDataCache< double >, and DummyElementDataCache.
|
inline |
Set dof_handler_hash_ value.
Definition at line 171 of file element_data_cache_base.hh.
|
inline |
Set string representation of SI units.
Definition at line 110 of file element_data_cache_base.hh.
|
inline |
Set string representation of SI units.
Definition at line 117 of file element_data_cache_base.hh.
|
inlineprotected |
Definition at line 233 of file element_data_cache_base.hh.
|
inline |
Get type of stored data.
Definition at line 157 of file element_data_cache_base.hh.
|
protected |
Start position of boundary data in cache.
Definition at line 287 of file element_data_cache_base.hh.
|
protected |
Hash of DOF handler (attribute of native VTK data)
Definition at line 271 of file element_data_cache_base.hh.
|
protected |
FiniteElement type (attribute of native VTK data)
Definition at line 276 of file element_data_cache_base.hh.
|
protected |
name of field stored in cache
Definition at line 249 of file element_data_cache_base.hh.
|
protected |
Definition at line 250 of file element_data_cache_base.hh.
|
protected |
Data copied from Field.
Definition at line 255 of file element_data_cache_base.hh.
|
protected |
Is true for DummyElementDataCache.
Definition at line 284 of file element_data_cache_base.hh.
|
protected |
Number of data elements per data value.
Definition at line 265 of file element_data_cache_base.hh.
|
protected |
Number of DOFs per element (attribute of native VTK data)
Definition at line 281 of file element_data_cache_base.hh.
|
protected |
Number of data values.
Definition at line 260 of file element_data_cache_base.hh.
|
protected |
time step stored in cache
Definition at line 246 of file element_data_cache_base.hh.
|
protected |
Type of stored data.
Definition at line 268 of file element_data_cache_base.hh.