Flow123d
DF_patch_fe_data_tables-dc76198
|
#include <patch_point_values.hh>
Public Member Functions | |
PatchPointValues (uint dim, AssemblyArena &asm_arena) | |
void | initialize () |
void | init_finalize (PatchArena *patch_arena) |
void | reset () |
Reset number of columns (points and elements) More... | |
uint | dim () const |
Getter for dim_. More... | |
uint | n_elems () const |
Getter for n_elems_. More... | |
uint | n_points () const |
Getter for n_points_. More... | |
Quadrature * | get_quadrature () const |
Getter for quadrature. More... | |
void | resize_tables (uint n_elems, uint n_points) |
Resize data tables. Method is called before reinit of patch. More... | |
uint | register_element (arma::mat coords, uint element_patch_idx) |
uint | register_side (arma::mat elm_coords, arma::mat side_coords, uint side_idx) |
uint | register_bulk_point (uint elem_table_row, uint value_patch_idx, uint elem_idx, uint i_point_on_elem) |
uint | register_side_point (uint elem_table_row, uint value_patch_idx, uint elem_idx, uint side_idx, uint i_point_on_side) |
ElOp< spacedim > & | make_new_op (std::initializer_list< uint > shape, ReinitFunction reinit_f, std::vector< uint > input_ops_vec, OpSizeType size_type=pointOp) |
ElOp< spacedim > & | make_fixed_op (std::initializer_list< uint > shape, ReinitFunction reinit_f) |
ElOp< spacedim > & | make_fe_op (std::initializer_list< uint > shape, ReinitFunction reinit_f, std::vector< uint > input_ops_vec, uint n_dofs, OpSizeType size_type=pointOp) |
void | reinit_patch () |
Scalar | scalar_value (uint op_idx, uint point_idx, uint i_dof=0) const |
Vector | vector_value (uint op_idx, uint point_idx, uint i_dof=0) const |
Tensor | tensor_value (uint op_idx, uint point_idx, uint i_dof=0) const |
void | print_data_tables (ostream &stream, bool points, bool ints) const |
void | print_operations (ostream &stream, uint bulk_side) const |
Protected Attributes | |
IntTableArena | int_table_ |
std::vector< OpSizeType > | int_sizes_ |
Set size and type of rows of int_table_, value is set implicitly in constructor of descendants. More... | |
std::vector< ElOp< spacedim > > | operations_ |
Vector of all defined operations. More... | |
uint | dim_ |
Dimension. More... | |
uint | n_points_ |
Number of points in patch. More... | |
uint | n_elems_ |
Number of elements in patch. More... | |
uint | i_elem_ |
Index of registered element in table, helper value used during patch creating. More... | |
Quadrature * | quad_ |
Quadrature of given dimension and order passed in constructor. More... | |
std::vector< uint > | elements_map_ |
Map of element patch indices to ElOp::result_ and int_table_ tables. More... | |
std::vector< uint > | points_map_ |
Map of point patch indices to ElOp::result_ and int_table_ tables. More... | |
std::vector< OpSizeType > | row_sizes_ |
hold sizes of rows by type of operation More... | |
AssemblyArena & | asm_arena_ |
Reference to global assembly arena of PatchFeValues. More... | |
PatchArena * | patch_arena_ |
Pointer to global patch arena of PatchFeValues. More... | |
Friends | |
class | PatchFEValues< spacedim > |
class | ElOp< spacedim > |
template<unsigned int dim> | |
class | BulkValues |
template<unsigned int dim> | |
class | SideValues |
template<unsigned int dim> | |
class | JoinValues |
v Class for storing FE data of quadrature points on one patch.
Store data of bulk or side quadrature points of one dimension.
Definition at line 115 of file patch_point_values.hh.
|
inline |
|
inline |
Getter for dim_.
Definition at line 148 of file patch_point_values.hh.
|
inline |
Getter for quadrature.
Definition at line 163 of file patch_point_values.hh.
|
inline |
Definition at line 136 of file patch_point_values.hh.
|
inline |
Initialize object, set number of columns (quantities) in tables.
Definition at line 131 of file patch_point_values.hh.
|
inline |
Adds accessor of FE operation and adds operation dynamically to operations_ vector
shape | Shape of function output |
reinit_f | Reinitialize function |
input_ops_vec | Indices of input operations in operations_ vector. |
n_dofs | Number of DOFs |
size_type | Type of operation by size of rows |
Definition at line 305 of file patch_point_values.hh.
|
inline |
Adds accessor of new operation with fixed data size (ref data) to operations_ vector
shape | Shape of function output |
reinit_f | Reinitialize function |
Definition at line 292 of file patch_point_values.hh.
|
inline |
Adds accessor of new operation to operations_ vector
shape | Shape of function output |
reinit_f | Reinitialize function |
input_ops_vec | Indices of input operations in operations_ vector. |
size_type | Type of operation by size of rows |
Definition at line 279 of file patch_point_values.hh.
|
inline |
Getter for n_elems_.
Definition at line 153 of file patch_point_values.hh.
|
inline |
Getter for n_points_.
Definition at line 158 of file patch_point_values.hh.
|
inline |
Performs output of data tables to stream.
Development method.
points | Allows switched off output of point table, |
ints | Allows switched off output of int (connectivity to elements) table, |
Definition at line 376 of file patch_point_values.hh.
|
inline |
Performs table of fixed operations to stream.
Development method.
bulk_side | Needs set 0 (bulk) or 1 (side) for correct output of operation names. |
Definition at line 414 of file patch_point_values.hh.
|
inline |
Register bulk point, add to int_table_
elem_table_row | Index of element in temporary element table. |
value_patch_idx | Index of point in ElementCacheMap. |
elem_idx | Index of element in Mesh. |
i_point_on_elem | Index of point on element |
Definition at line 241 of file patch_point_values.hh.
|
inline |
Register element, add to coords operation
coords | Coordinates of element nodes. |
element_patch_idx | Index of element on patch. |
Definition at line 187 of file patch_point_values.hh.
|
inline |
Register side, add to coords operations
coords | Coordinates of element nodes. |
side_coords | Coordinates of side nodes. |
side_idx | Index of side on element. |
Definition at line 207 of file patch_point_values.hh.
|
inline |
Register side point, add to int_table_
elem_table_row | Index of side in temporary element table. |
value_patch_idx | Index of point in ElementCacheMap. |
elem_idx | Index of element in Mesh. |
side_idx | Index of side on element. |
i_point_on_side | Index of point on side |
Definition at line 260 of file patch_point_values.hh.
|
inline |
Reinitializes patch data.
Calls reinit functions defined on each operations.
Definition at line 319 of file patch_point_values.hh.
|
inline |
Reset number of columns (points and elements)
Definition at line 141 of file patch_point_values.hh.
|
inline |
Resize data tables. Method is called before reinit of patch.
Definition at line 168 of file patch_point_values.hh.
|
inline |
Returns scalar output value.
op_idx | Index of operation in operations vector |
point_idx | Index of quadrature point in ElementCacheMap |
i_dof | Index of DOF |
Definition at line 332 of file patch_point_values.hh.
|
inline |
Returns tensor output value.
op_idx | Index of operation in operations vector |
point_idx | Index of quadrature point in ElementCacheMap |
i_dof | Index of DOF |
Definition at line 359 of file patch_point_values.hh.
|
inline |
Returns vector output value.
op_idx | Index of operation in operations vector |
point_idx | Index of quadrature point in ElementCacheMap |
i_dof | Index of DOF |
Definition at line 343 of file patch_point_values.hh.
Definition at line 469 of file patch_point_values.hh.
|
friend |
Definition at line 464 of file patch_point_values.hh.
Definition at line 473 of file patch_point_values.hh.
|
friend |
Definition at line 464 of file patch_point_values.hh.
Definition at line 471 of file patch_point_values.hh.
|
protected |
Reference to global assembly arena of PatchFeValues.
Definition at line 463 of file patch_point_values.hh.
|
protected |
Dimension.
Definition at line 454 of file patch_point_values.hh.
|
protected |
Map of element patch indices to ElOp::result_ and int_table_ tables.
Definition at line 460 of file patch_point_values.hh.
|
protected |
Index of registered element in table, helper value used during patch creating.
Definition at line 457 of file patch_point_values.hh.
|
protected |
Set size and type of rows of int_table_, value is set implicitly in constructor of descendants.
Definition at line 448 of file patch_point_values.hh.
|
protected |
Hold integer values of quadrature points of defined operations.
Table contains following rows: 0: Index of quadrature point on patch 1: Row of element/side in ElOp::result_ table in registration step (before expansion) 2: Element idx in Mesh
Definition at line 445 of file patch_point_values.hh.
|
protected |
Number of elements in patch.
Definition at line 456 of file patch_point_values.hh.
|
protected |
Number of points in patch.
Definition at line 455 of file patch_point_values.hh.
|
protected |
Vector of all defined operations.
Definition at line 452 of file patch_point_values.hh.
|
protected |
Pointer to global patch arena of PatchFeValues.
Definition at line 464 of file patch_point_values.hh.
|
protected |
Map of point patch indices to ElOp::result_ and int_table_ tables.
Definition at line 461 of file patch_point_values.hh.
|
protected |
Quadrature of given dimension and order passed in constructor.
Definition at line 458 of file patch_point_values.hh.
|
protected |
hold sizes of rows by type of operation
Definition at line 462 of file patch_point_values.hh.