#include <mortar_assembly.hh>
Definition at line 66 of file mortar_assembly.hh.
◆ P0_CouplingAssembler()
◆ add_to_linsys()
void P0_CouplingAssembler::add_to_linsys |
( |
double |
scale | ) |
|
|
private |
◆ assembly()
Works well but there is large error next to the boundary.
TODO:
- pass through the master and all slaves and collect global dofs , bcd, solution. I.e. call Nx pressure_diff not NxNx.
- Is it safe to have duplicate rows in local_system?
- Is it better to have more smaller local system then single big one?
use one big or more smaller local systems to set.
?? How to deal with anisotropy ?? 3d-2d : compute nv of 2d triangle 2d-2d : interpret as 2d-1d-2d, should be symmetric master-slave 2d-1d : nv is tangent to 2d and normal to 1d arma::dot(data_->anisotropy.value( ele_centre, ele->element_accessor())*nv, nv)
Reimplemented from MortarAssemblyBase.
Definition at line 80 of file mortar_assembly.cc.
◆ fix_velocity_local()
void P0_CouplingAssembler::fix_velocity_local |
( |
const IsecData & |
row_ele, |
|
|
const IsecData & |
col_ele |
|
) |
| |
◆ pressure_diff()
◆ tensor_average()
arma::mat& P0_CouplingAssembler::tensor_average |
( |
unsigned int |
row_dim, |
|
|
unsigned int |
col_dim |
|
) |
| |
|
inlineprivate |
◆ col_average_
std::vector< arma::vec > P0_CouplingAssembler::col_average_ |
|
private |
◆ isec_data_list
◆ product_
arma::mat P0_CouplingAssembler::product_ |
|
private |
◆ quadrature_
◆ slave_ac_
◆ tensor_average_
std::vector< arma::mat > P0_CouplingAssembler::tensor_average_ |
|
private |
Row matrices to compute element pressure as average of boundary pressures.
Definition at line 82 of file mortar_assembly.hh.
The documentation for this class was generated from the following files: