8 #ifndef SRC_FLOW_MORTAR_ASSEMBLY_HH_
9 #define SRC_FLOW_MORTAR_ASSEMBLY_HH_
14 #include "flow/darcy_flow_mh.hh"
Cell accessor allow iterate over DOF handler cells.
Main class for computation of intersection of meshes of combined dimensions.
vector< unsigned int > IsecList
void fix_velocity(const DHCellAccessor &dh_cell)
AssemblyFieldsPtr eq_fields_
MixedMeshIntersections & mixed_mesh_
virtual void assembly(FMT_UNUSED const DHCellAccessor &dh_cell)
virtual ~MortarAssemblyBase()
MortarAssemblyBase(AssemblyFieldsPtr eq_fields, AssemblyDataPtr eq_data)
void fix_velocity_local(const IsecData &row_ele, const IsecData &col_ele)
void add_to_linsys(double scale)
vector< IsecData > isec_data_list
std::vector< arma::mat > tensor_average_
Row matrices to compute element pressure as average of boundary pressures.
std::vector< arma::vec > col_average_
void pressure_diff(const DHCellAccessor &dh_cell, double delta)
P0_CouplingAssembler(AssemblyFieldsPtr eq_fields, AssemblyDataPtr eq_data)
IntersectionQuadratureP0 quadrature_
arma::mat & tensor_average(unsigned int row_dim, unsigned int col_dim)
void assembly(const DHCellAccessor &dh_cell)
void assembly(const DHCellAccessor &dh_cell)
vector< double > dirichlet
P1_CouplingAssembler(AssemblyFieldsPtr eq_fields, AssemblyDataPtr eq_data)
void add_sides(const DHCellAccessor &dh_cell, unsigned int shift, vector< int > &dofs, vector< double > &dirichlet)
arma::Col< IntIdx > LocDofVec
std::shared_ptr< DarcyMH::EqFields > AssemblyFieldsPtr
std::shared_ptr< DarcyMH::EqData > AssemblyDataPtr
ArmaMat< double, N, M > mat