|
| template<typename ScalarType , linalg::OperatorLike OperatorType, typename FlagType > |
| void | terra::fe::strong_algebraic_dirichlet_enforcement_poisson_like (OperatorType &A_neumann, OperatorType &A_neumann_diag, const linalg::VectorQ1Scalar< ScalarType > &g, linalg::VectorQ1Scalar< ScalarType > &tmp, linalg::VectorQ1Scalar< ScalarType > &b, const grid::Grid4DDataScalar< FlagType > &mask_data, const FlagType &dirichlet_boundary_mask) |
| | Helper function to modify the right-hand side vector accordingly for strong Dirichlet boundary condition enforcement.
|
| |
| template<typename ScalarType , linalg::OperatorLike OperatorType, typename FlagType > |
| void | terra::fe::strong_algebraic_dirichlet_enforcement_vectorlaplace_like (OperatorType &A_neumann, OperatorType &A_neumann_diag, const linalg::VectorQ1Vec< ScalarType > &g, linalg::VectorQ1Vec< ScalarType > &tmp, linalg::VectorQ1Vec< ScalarType > &b, const grid::Grid4DDataScalar< FlagType > &mask_data, const FlagType &dirichlet_boundary_mask) |
| |
| template<typename ScalarType , util::FlagLike FlagType> |
| void | terra::fe::strong_algebraic_homogeneous_dirichlet_enforcement_poisson_like (linalg::VectorQ1Scalar< ScalarType > &b, const grid::Grid4DDataScalar< FlagType > &mask_data, const FlagType &dirichlet_boundary_mask) |
| | Same as strong_algebraic_dirichlet_enforcement_poisson_like() for homogenous boundary conditions ( \( g = 0 \)).
|
| |
| template<typename ScalarType , linalg::OperatorLike OperatorType, util::FlagLike FlagType> |
| void | terra::fe::strong_algebraic_velocity_dirichlet_enforcement_stokes_like (OperatorType &K_neumann, OperatorType &K_neumann_diag, const linalg::VectorQ1IsoQ2Q1< ScalarType > &g, linalg::VectorQ1IsoQ2Q1< ScalarType > &tmp, linalg::VectorQ1IsoQ2Q1< ScalarType > &b, const grid::Grid4DDataScalar< FlagType > &mask_data, const FlagType &dirichlet_boundary_mask) |
| | Same as strong_algebraic_dirichlet_enforcement_poisson_like() for Stokes-like systems (with strong enforcement of velocity boundary conditions).
|
| |
| template<typename ScalarType , util::FlagLike FlagType> |
| void | terra::fe::strong_algebraic_homogeneous_velocity_dirichlet_enforcement_stokes_like (linalg::VectorQ1IsoQ2Q1< ScalarType > &b, const grid::Grid4DDataScalar< FlagType > &mask_data, const FlagType &dirichlet_boundary_mask) |
| | Same as strong_algebraic_homogeneous_dirichlet_enforcement_poisson_like() for Stokes-like systems (with strong enforcement of zero velocity boundary conditions).
|
| |