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

Implementation Details