Flow123d
master-f44eb46
|
#include <assembly_flow_output.hh>
Public Types | |
typedef DarcyLMH::EqFields | EqFields |
typedef DarcyFlowMHOutput::DiffEqData | EqData |
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 | |
L2DifferenceAssembly (EqFields *eq_fields, EqData *eq_data) | |
Constructor. More... | |
virtual | ~L2DifferenceAssembly () |
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 | begin () override |
Implements AssemblyBase::begin . More... | |
void | end () override |
Implements AssemblyBase::end . 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... | |
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... | |
Static Public Member Functions | |
static constexpr const char * | name () |
Protected Attributes | |
FieldSet | used_fields_ |
Sub field set contains fields used in calculation. More... | |
EqFields * | eq_fields_ |
Data objects shared with Flow equation. More... | |
EqData * | eq_data_ |
std::shared_ptr< FE_P_disc< dim > > | fe_p0_ |
FEValues< 3 > | fe_values_ |
FE_RT0< dim > | fe_rt_ |
FEValues for velocity. More... | |
FEValues< 3 > | fv_rt_ |
std::vector< double > | fluxes_ |
Precomputed fluxes on element sides. More... | |
arma::vec3 | flux_in_q_point_ |
Precomputed flux in quadrature point. More... | |
arma::vec3 | q_point_ |
Local coords of quadrature point. More... | |
arma::vec3 | ref_flux_ |
Field result. More... | |
double | ref_pressure_ |
double | ref_divergence_ |
double | conductivity_ |
double | cross_ |
Field results. 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... | |
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... | |
Calculate approximation of L2 norm for: 1) difference between regularized pressure and analytical solution (using FunctionPython) 2) difference between RT velocities and analytical solution 3) difference of divergence
TODO: 1) implement field objects 2) implement DG_P2 finite elements 3) implement pressure postprocessing (result is DG_P2 field) 4) implement calculation of L2 norm for two field (compute the norm and values on individual elements as P0 field)
Definition at line 54 of file assembly_flow_output.hh.
typedef DarcyFlowMHOutput::DiffEqData L2DifferenceAssembly< dim >::EqData |
Definition at line 58 of file assembly_flow_output.hh.
typedef DarcyLMH::EqFields L2DifferenceAssembly< dim >::EqFields |
Definition at line 57 of file assembly_flow_output.hh.
|
inline |
Constructor.
Definition at line 63 of file assembly_flow_output.hh.
|
inlinevirtual |
Destructor.
Definition at line 74 of file assembly_flow_output.hh.
|
inlineoverridevirtual |
Implements AssemblyBase::begin
.
Reimplemented from AssemblyBase< dim >.
Definition at line 187 of file assembly_flow_output.hh.
|
inline |
Assemble integral over element.
Definition at line 90 of file assembly_flow_output.hh.
|
inlineoverridevirtual |
Implements AssemblyBase::end
.
Reimplemented from AssemblyBase< dim >.
Definition at line 200 of file assembly_flow_output.hh.
|
inline |
Initialize auxiliary vectors and other data members.
Definition at line 77 of file assembly_flow_output.hh.
|
inlinestaticconstexpr |
Definition at line 60 of file assembly_flow_output.hh.
|
friend |
Definition at line 250 of file assembly_flow_output.hh.
|
protected |
Definition at line 247 of file assembly_flow_output.hh.
|
protected |
Field results.
Definition at line 247 of file assembly_flow_output.hh.
|
protected |
Definition at line 232 of file assembly_flow_output.hh.
|
protected |
Data objects shared with Flow equation.
Definition at line 231 of file assembly_flow_output.hh.
|
protected |
following is used for calculation of postprocessed pressure difference and comparison to analytical solution
Definition at line 236 of file assembly_flow_output.hh.
|
protected |
FEValues for velocity.
Definition at line 240 of file assembly_flow_output.hh.
|
protected |
Definition at line 237 of file assembly_flow_output.hh.
|
protected |
Precomputed flux in quadrature point.
Definition at line 244 of file assembly_flow_output.hh.
|
protected |
Precomputed fluxes on element sides.
Definition at line 243 of file assembly_flow_output.hh.
|
protected |
Definition at line 241 of file assembly_flow_output.hh.
|
protected |
Local coords of quadrature point.
Definition at line 245 of file assembly_flow_output.hh.
|
protected |
Definition at line 247 of file assembly_flow_output.hh.
|
protected |
Field result.
Definition at line 246 of file assembly_flow_output.hh.
|
protected |
Definition at line 247 of file assembly_flow_output.hh.
|
protected |
Sub field set contains fields used in calculation.
Definition at line 228 of file assembly_flow_output.hh.