Flow123d
DF_patch_fe_mechanics-b866f5c
|
#include <assembly_elasticity.hh>
Public Types | |
typedef Elasticity::EqFields | EqFields |
typedef Elasticity::EqData | EqData |
Public Types inherited from AssemblyBasePatch< dim > | |
typedef GenericAssemblyBase::BulkIntegralData | BulkIntegralData |
typedef GenericAssemblyBase::EdgeIntegralData | EdgeIntegralData |
typedef GenericAssemblyBase::CouplingIntegralData | CouplingIntegralData |
typedef GenericAssemblyBase::BoundaryIntegralData | BoundaryIntegralData |
Public Types inherited from AssemblyBase< dim > | |
typedef GenericAssemblyBase::BulkIntegralData | BulkIntegralData |
typedef GenericAssemblyBase::EdgeIntegralData | EdgeIntegralData |
typedef GenericAssemblyBase::CouplingIntegralData | CouplingIntegralData |
typedef GenericAssemblyBase::BoundaryIntegralData | BoundaryIntegralData |
Public Member Functions | |
StiffnessAssemblyElasticity (EqFields *eq_fields, EqData *eq_data, PatchFEValues< 3 > *fe_values) | |
Constructor. More... | |
~StiffnessAssemblyElasticity () | |
Destructor. More... | |
void | initialize (ElementCacheMap *element_cache_map) |
Initialize auxiliary vectors and other data members. More... | |
void | cell_integral (DHCellAccessor cell, unsigned int element_patch_idx) |
Assemble integral over element. More... | |
void | boundary_side_integral (DHCellSide cell_side) |
Assembles boundary integral. More... | |
void | dimjoin_intergral (DHCellAccessor cell_lower_dim, DHCellSide neighb_side) |
Assembles between elements of different dimensions. More... | |
Public Member Functions inherited from AssemblyBasePatch< dim > | |
AssemblyBasePatch (PatchFEValues< 3 > *fe_values) | |
void | add_patch_bulk_points (const RevertableList< BulkIntegralData > &bulk_integral_data) override |
Register cell points of volume integral. More... | |
void | add_patch_bdr_side_points (const RevertableList< BoundaryIntegralData > &boundary_integral_data) override |
Register side points of boundary side integral. More... | |
void | add_patch_edge_points (const RevertableList< EdgeIntegralData > &edge_integral_data) override |
Register side points of edge integral. More... | |
void | add_patch_coupling_integrals (const RevertableList< CouplingIntegralData > &coupling_integral_data) override |
Register bulk and side points of coupling integral. More... | |
unsigned int | n_dofs () |
Return BulkValues object. More... | |
BulkValues< dim > | bulk_values () |
Return BulkValues object. More... | |
SideValues< dim > | side_values () |
Return SideValues object. More... | |
JoinValues< dim > | join_values () |
Return JoinValues object. More... | |
Public Member Functions inherited from AssemblyBase< dim > | |
AssemblyBase (unsigned int quad_order) | |
Constructor. More... | |
virtual | ~AssemblyBase () |
Destructor. More... | |
virtual void | cell_integral (FMT_UNUSED DHCellAccessor cell, FMT_UNUSED unsigned int element_patch_idx) |
Assembles the volume integrals on cell. More... | |
virtual void | boundary_side_integral (FMT_UNUSED DHCellSide cell_side) |
Assembles the fluxes on the boundary. More... | |
virtual void | edge_integral (FMT_UNUSED RangeConvert< DHEdgeSide, DHCellSide > edge_side_range) |
Assembles the fluxes between sides on the edge. More... | |
virtual void | dimjoin_intergral (FMT_UNUSED DHCellAccessor cell_lower_dim, FMT_UNUSED DHCellSide neighb_side) |
Assembles the fluxes between elements of different dimensions. More... | |
virtual void | begin () |
Method prepares object before assemblation (e.g. balance, ...). More... | |
virtual void | end () |
Method finishes object after assemblation (e.g. balance, ...). More... | |
int | n_active_integrals () const |
Getter of active_integrals. More... | |
void | create_integrals (std::shared_ptr< EvalPoints > eval_points, AssemblyIntegrals &integrals) |
Create integrals according to dim of assembly object. More... | |
Range< BulkPoint > | bulk_points (unsigned int element_patch_idx) const |
Return BulkPoint range of appropriate dimension. More... | |
Range< EdgePoint > | edge_points (const DHCellSide &cell_side) const |
Return EdgePoint range of appropriate dimension. More... | |
Range< CouplingPoint > | coupling_points (const DHCellSide &cell_side) const |
Return CouplingPoint range of appropriate dimension. More... | |
Range< BoundaryPoint > | boundary_points (const DHCellSide &cell_side) const |
Return BoundaryPoint range of appropriate dimension. More... | |
virtual void | assemble_cell_integrals (const RevertableList< BulkIntegralData > &bulk_integral_data) |
Assembles the cell integrals for the given dimension. More... | |
void | assemble_boundary_side_integrals (const RevertableList< BoundaryIntegralData > &boundary_integral_data) |
Assembles the boundary side integrals for the given dimension. More... | |
void | assemble_edge_integrals (const RevertableList< EdgeIntegralData > &edge_integral_data) |
Assembles the edge integrals for the given dimension. More... | |
void | assemble_neighbour_integrals (const RevertableList< CouplingIntegralData > &coupling_integral_data) |
Assembles the neighbours integrals for the given dimension. More... | |
virtual void | add_patch_bulk_points (FMT_UNUSED const RevertableList< BulkIntegralData > &bulk_integral_data) |
Register cell points of volume integral. More... | |
virtual void | add_patch_bdr_side_points (FMT_UNUSED const RevertableList< BoundaryIntegralData > &boundary_integral_data) |
Register side points of boundary side integral. More... | |
virtual void | add_patch_edge_points (FMT_UNUSED const RevertableList< EdgeIntegralData > &edge_integral_data) |
Register side points of edge integral. More... | |
virtual void | add_patch_coupling_integrals (FMT_UNUSED const RevertableList< CouplingIntegralData > &coupling_integral_data) |
Register bulk and side points of coupling integral. More... | |
Static Public Member Functions | |
static constexpr const char * | name () |
Private Member Functions | |
arma::mat33 | mat_t (const arma::mat33 &m, const arma::vec3 &n) |
Private Attributes | |
EqFields * | eq_fields_ |
Data objects shared with Elasticity. More... | |
EqData * | eq_data_ |
FieldSet | used_fields_ |
Sub field set contains fields used in calculation. More... | |
unsigned int | n_dofs_ |
Number of dofs. More... | |
unsigned int | n_dofs_sub_ |
Number of dofs (on lower dim element) More... | |
std::vector< unsigned int > | n_dofs_ngh_ |
Number of dofs on lower and higher dimension element (vector of 2 items) More... | |
vector< LongIdx > | dof_indices_ |
Vector of global DOF indices. More... | |
vector< LongIdx > | side_dof_indices_ |
vector of DOF indices in neighbour calculation. More... | |
vector< PetscScalar > | local_matrix_ |
Auxiliary vector for assemble methods. More... | |
ElQ< Scalar > | JxW_ |
Following data members represent Element quantities and FE quantities. More... | |
ElQ< Scalar > | JxW_side_ |
ElQ< Vector > | normal_ |
FeQ< Vector > | deform_side_ |
FeQ< Tensor > | gras_deform_ |
FeQ< Tensor > | sym_grad_deform_ |
FeQ< Scalar > | div_deform_ |
Range< JoinShapeAccessor< Vector > > | deform_join_ |
Range< JoinShapeAccessor< Tensor > > | deform_join_grad_ |
Friends | |
template<template< IntDim... > class DimAssembly> | |
class | GenericAssembly |
Additional Inherited Members | |
Protected Member Functions inherited from AssemblyBase< dim > | |
AssemblyBase () | |
std::string | print_update_flags (UpdateFlags u) const |
Print update flags to string format. More... | |
Protected Attributes inherited from AssemblyBasePatch< dim > | |
PatchFEValues< 3 > * | fe_values_ |
Common FEValues object over all dimensions. More... | |
Protected Attributes inherited from AssemblyBase< dim > | |
Quadrature * | quad_ |
Quadrature used in assembling methods. More... | |
Quadrature * | quad_low_ |
Quadrature used in assembling methods (dim-1). More... | |
int | active_integrals_ |
Holds mask of active integrals. More... | |
DimIntegrals | integrals_ |
Set of used integrals. More... | |
ElementCacheMap * | element_cache_map_ |
ElementCacheMap shared with GenericAssembly object. More... | |
Auxiliary container class for Finite element and related objects of given dimension.
Definition at line 35 of file assembly_elasticity.hh.
typedef Elasticity::EqData StiffnessAssemblyElasticity< dim >::EqData |
Definition at line 39 of file assembly_elasticity.hh.
typedef Elasticity::EqFields StiffnessAssemblyElasticity< dim >::EqFields |
Definition at line 38 of file assembly_elasticity.hh.
|
inline |
Constructor.
Definition at line 44 of file assembly_elasticity.hh.
|
inline |
Destructor.
Definition at line 65 of file assembly_elasticity.hh.
|
inline |
Assembles boundary integral.
Definition at line 113 of file assembly_elasticity.hh.
|
inline |
Assemble integral over element.
Definition at line 87 of file assembly_elasticity.hh.
|
inline |
Assembles between elements of different dimensions.
Definition at line 155 of file assembly_elasticity.hh.
|
inline |
Initialize auxiliary vectors and other data members.
Definition at line 68 of file assembly_elasticity.hh.
|
inlineprivate |
|
inlinestaticconstexpr |
Definition at line 41 of file assembly_elasticity.hh.
|
friend |
Definition at line 256 of file assembly_elasticity.hh.
|
private |
Definition at line 252 of file assembly_elasticity.hh.
|
private |
Definition at line 253 of file assembly_elasticity.hh.
|
private |
Definition at line 248 of file assembly_elasticity.hh.
|
private |
Definition at line 251 of file assembly_elasticity.hh.
|
private |
Vector of global DOF indices.
Definition at line 240 of file assembly_elasticity.hh.
|
private |
Definition at line 231 of file assembly_elasticity.hh.
|
private |
Data objects shared with Elasticity.
Definition at line 230 of file assembly_elasticity.hh.
|
private |
Definition at line 249 of file assembly_elasticity.hh.
|
private |
Following data members represent Element quantities and FE quantities.
Definition at line 245 of file assembly_elasticity.hh.
|
private |
Definition at line 246 of file assembly_elasticity.hh.
|
private |
Auxiliary vector for assemble methods.
Definition at line 242 of file assembly_elasticity.hh.
|
private |
Number of dofs.
Definition at line 236 of file assembly_elasticity.hh.
|
private |
Number of dofs on lower and higher dimension element (vector of 2 items)
Definition at line 238 of file assembly_elasticity.hh.
|
private |
Number of dofs (on lower dim element)
Definition at line 237 of file assembly_elasticity.hh.
|
private |
Definition at line 247 of file assembly_elasticity.hh.
|
private |
vector of DOF indices in neighbour calculation.
Definition at line 241 of file assembly_elasticity.hh.
|
private |
Definition at line 250 of file assembly_elasticity.hh.
|
private |
Sub field set contains fields used in calculation.
Definition at line 234 of file assembly_elasticity.hh.