Flow123d  DF_patch_fe_mechanics-ccea6e4
Public Types | Public Member Functions | Private Member Functions | List of all members
FeSide::PatchPointValues< spacedim > Class Template Reference

Bulk Side specialization, order of item in operations_ vector corresponds to the SideOps enum. More...

#include <patch_point_values.hh>

Inheritance diagram for FeSide::PatchPointValues< spacedim >:
Inheritance graph
[legend]
Collaboration diagram for FeSide::PatchPointValues< spacedim >:
Collaboration graph
[legend]

Public Types

typedef ::PatchPointValues< spacedim >::PatchFeData PatchFeData
 

Public Member Functions

 PatchPointValues (uint dim, uint quad_order, PatchFeData &patch_fe_data)
 Constructor. More...
 
 ~PatchPointValues ()
 Destructor. More...
 
void create_zero_values () override
 Create zero_values_ object. More...
 
- Public Member Functions inherited from PatchPointValues< 3 >
 PatchPointValues (uint dim, PatchFeData &patch_fe_data)
 
void initialize ()
 
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...
 
Quadratureget_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)
 
PatchOp< spacedim > * make_new_op (uint op_idx, std::initializer_list< uint > shape, ReinitFunction reinit_f, OpSizeType size_type=pointOp)
 
PatchOp< spacedim > * make_fixed_op (uint op_idx, std::initializer_list< uint > shape, ReinitFunction reinit_f)
 
PatchOp< spacedim > * make_fe_op (uint op_idx, std::initializer_list< uint > shape, ReinitFunction reinit_f, uint n_dofs, OpSizeType size_type=pointOp)
 
PatchOp< spacedim > * make_fixed_fe_op (uint op_idx, std::initializer_list< uint > shape, ReinitFunction reinit_f, uint n_dofs)
 
void reinit_patch ()
 
Scalar scalar_elem_value (uint op_idx, uint point_idx) const
 
Vector vector_elem_value (uint op_idx, uint point_idx) const
 
Tensor tensor_elem_value (uint op_idx, uint point_idx) const
 
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
 
AssemblyArenaasm_arena () const
 return reference to assembly arena More...
 
PatchArenapatch_arena () const
 return reference to patch arena More...
 
void zero_values_needed ()
 Set flag needs_zero_values_ to true. More...
 
PatchPointValueszero_values ()
 
void print_data_tables (ostream &stream, bool points, bool ints) const
 
void print_operations (ostream &stream, uint bulk_side) const
 

Private Member Functions

 PatchPointValues (uint dim, std::vector< PatchOp< spacedim > * > &operations, PatchFeData &patch_fe_data)
 Specialized constructor of zero values object. Do not use in other cases! More...
 
template<unsigned int dim>
void init ()
 Initialize operations vector. More...
 

Additional Inherited Members

- Protected Member Functions inherited from PatchPointValues< 3 >
void create_zero_operations (std::vector< PatchOp< spacedim > * > &ref_ops)
 
- Protected Attributes inherited from PatchPointValues< 3 >
IntTableArena int_table_
 
std::vector< OpSizeTypeint_sizes_
 Set size and type of rows of int_table_, value is set implicitly in constructor of descendants. More...
 
std::vector< PatchOp< spacedim > * > operations_
 Vector of all defined operations. More...
 
std::vector< std::vector< unsigned int > > op_dependency_
 Holds dependency between 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...
 
Quadraturequad_
 Quadrature of given dimension and order passed in constructor. More...
 
std::vector< uintelements_map_
 Map of element patch indices to PatchOp::result_ and int_table_ tables. More...
 
std::vector< uintpoints_map_
 Map of point patch indices to PatchOp::result_ and int_table_ tables. More...
 
PatchFeData & patch_fe_data_
 Reference to PatchFeData structure shared with PatchFeValues. More...
 
bool needs_zero_values_
 Flags hold whether zero_values_ object is needed. More...
 
PatchPointValueszero_values_
 PatchPointValues object returns zero values for all operations. More...
 

Detailed Description

template<unsigned int spacedim = 3>
class FeSide::PatchPointValues< spacedim >

Bulk Side specialization, order of item in operations_ vector corresponds to the SideOps enum.

Definition at line 1241 of file patch_point_values.hh.

Member Typedef Documentation

◆ PatchFeData

template<unsigned int spacedim = 3>
typedef ::PatchPointValues<spacedim>::PatchFeData FeSide::PatchPointValues< spacedim >::PatchFeData

Definition at line 1243 of file patch_point_values.hh.

Constructor & Destructor Documentation

◆ PatchPointValues() [1/2]

template<unsigned int spacedim = 3>
FeSide::PatchPointValues< spacedim >::PatchPointValues ( uint  dim,
uint  quad_order,
PatchFeData patch_fe_data 
)
inline

Constructor.

Definition at line 1246 of file patch_point_values.hh.

Here is the caller graph for this function:

◆ ~PatchPointValues()

template<unsigned int spacedim = 3>
FeSide::PatchPointValues< spacedim >::~PatchPointValues ( )
inlinevirtual

Destructor.

Reimplemented from PatchPointValues< 3 >.

Definition at line 1285 of file patch_point_values.hh.

◆ PatchPointValues() [2/2]

template<unsigned int spacedim = 3>
FeSide::PatchPointValues< spacedim >::PatchPointValues ( uint  dim,
std::vector< PatchOp< spacedim > * > &  operations,
PatchFeData patch_fe_data 
)
inlineprivate

Specialized constructor of zero values object. Do not use in other cases!

Definition at line 1294 of file patch_point_values.hh.

Member Function Documentation

◆ create_zero_values()

template<unsigned int spacedim = 3>
void FeSide::PatchPointValues< spacedim >::create_zero_values ( )
inlineoverridevirtual

Create zero_values_ object.

Implements PatchPointValues< 3 >.

Definition at line 1288 of file patch_point_values.hh.

◆ init()

template<unsigned int spacedim = 3>
template<unsigned int dim>
void FeSide::PatchPointValues< spacedim >::init ( )
inlineprivate

Initialize operations vector.

Definition at line 1302 of file patch_point_values.hh.


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