specfem::boundary_conditions¶
-
namespace boundary_conditions¶
Boundary conditions.
This namespace contains functions to apply boundary conditions.
specfem::boundary_conditions::apply_boundary_conditions¶
-
template<typename PointBoundaryType, typename PointAccelerationType>
void specfem::boundary_conditions::apply_boundary_conditions(const PointBoundaryType &boundary, PointAccelerationType &acceleration)¶ Apply boundary conditions for Dirichlet or None boundaries (time independent)
- Template Parameters:
PointBoundaryType – Point boundary type
PointAccelerationType – Point acceleration type
- Parameters:
boundary – Boundary object
acceleration – Acceleration object
-
template<typename PointBoundaryType, typename PointPropertyType, typename PointVelocityType, typename PointAccelerationType>
void specfem::boundary_conditions::apply_boundary_conditions(const PointBoundaryType &boundary, const PointPropertyType &property, const PointVelocityType &field, PointAccelerationType &acceleration)¶ Apply boundary conditions (time dependent/absorbing)
- Template Parameters:
PointBoundaryType – Point boundary type
PointPropertyType – Point property type
PointVelocityType – Point velocity type
PointAccelerationType – Point acceleration type
- Parameters:
boundary – Boundary object
property – Property object
field – Field object
acceleration – Acceleration object
specfem::boundary_conditions::compute_mass_matrix_terms¶
-
template<typename PointBoundaryType, typename PointPropertyType, typename PointMassMatrixType>
void specfem::boundary_conditions::compute_mass_matrix_terms(const type_real dt, const PointBoundaryType &boundary, const PointPropertyType &property, PointMassMatrixType &mass_matrix)¶ Compute mass matrix terms for boundary conditions.
- Template Parameters:
PointBoundaryType – Point boundary type
PointPropertyType – Point property type
PointMassMatrixType – Point mass matrix type
- Parameters:
dt – Time step
boundary – Boundary object
property – Property object
mass_matrix – Mass matrix object