This pull request implements elastic-acoustic coupling. Things included in this pull request :
Read elastic-acoustic coupling parameters from the database
The read values are stored in mesh::coupled_interfaces
Implement elastic-acoustic compute data interface (compute::coupled_interfaces)
The compute::coupled_interfaces namespace also provides helper functions to iterate over inter-facial edges
Implemented compute_coupling routine to compute coupling interaction between different domains
The coupled_interfaces class is templated on 2 domains signifying self domain and coupled domains. The interface itself is divided into number of edges which are implemented as templated C++ class.
The compute_coupling routine provides a driver, describing kokkos parallelism, for the edge class
The edge implements the coupling physics at a GLL point on the interface (serial code).
Issue Number
If there is an issue created for these changes, link it here
Checklist
Please make sure to check developer documentation on specfem docs.
[x] I ran the code through pre-commit to check style
[x] My code passes all the integration tests
[x] I have added sufficient unittests to test my changes
[ ] I have added/updated documentation for the changes I am proposing
[x] I have updated CMakeLists to ensure my code builds
Description
This pull request implements elastic-acoustic coupling. Things included in this pull request :
Read elastic-acoustic coupling parameters from the database
mesh::coupled_interfaces
Implement elastic-acoustic compute data interface (
compute::coupled_interfaces
)compute::coupled_interfaces
namespace also provides helper functions to iterate over inter-facial edgesImplemented
compute_coupling
routine to compute coupling interaction between different domainscoupled_interfaces
class is templated on 2 domains signifying self domain and coupled domains. The interface itself is divided into number of edges which are implemented as templated C++ class.compute_coupling
routine provides a driver, describing kokkos parallelism, for the edge classIssue Number
If there is an issue created for these changes, link it here
Checklist
Please make sure to check developer documentation on specfem docs.