![]() |
This module contains subroutines to compute information about sources.
Public Member Functions | |
subroutine, public | compute_double_couple_source () |
This subroutine pre-computes all double couple point sources defined by type mod_global_variables::type_double_couple_source as equivalent single force point sources ( \( F^{ext}_{n+1} \)) distributed over hexahedron elements (see mod_global_variables::rg_dcsource_gll_force). More... | |
subroutine, public | init_double_couple_source () |
This subroutine reads all double couple point sources in file *.dcs; sets double couple point sources moment tensor; determines to which cpu belong double couple point sources and computes local coordinates \(\xi,\eta,\zeta\) of double couple point sources inside the hexahedron element it belongs. More... | |
subroutine, public | init_single_force_source () |
This subroutine reads all single force point sources in file *.sfs; determines to which cpu belong single force point sources and computes local coordinates \(\xi,\eta,\zeta\) of single force point sources inside the hexahedron element it belongs. More... | |
Private Member Functions | |
subroutine, private | compute_source_local_coordinate (tlsrc) |
This subroutine solves a nonlinear system by a gradient method to compute local coordinates \(\xi,\eta,\zeta\) of a point source inside the hexahedron element it belongs. The starting point of the gradient method is the closest GLL node. Local coordinates are stored in mod_global_variables::tg_dcsource. More... | |
Definition at line 126 of file module_source.f90.
subroutine, public mod_source::compute_double_couple_source | ( | ) |
Definition at line 147 of file module_source.f90.
References mod_lagrange::lagrad(), and mod_lagrange::lagrap().
Referenced by efispec3d().
|
private |
tlsrc | : data type that contains information about point sources |
Definition at line 739 of file module_source.f90.
References mod_jacobian::compute_hexa_jacobian(), and mod_coordinate::compute_hexa_point_coord().
Referenced by init_double_couple_source().
subroutine, public mod_source::init_double_couple_source | ( | ) |
Definition at line 330 of file module_source.f90.
References compute_source_local_coordinate(), mod_source_function::interp_linear(), and mod_receiver::search_closest_hexa_gll().
Referenced by efispec3d().
subroutine, public mod_source::init_single_force_source | ( | ) |
Definition at line 548 of file module_source.f90.
References mod_source_function::interp_linear(), and mod_receiver::search_closest_hexa_gll().
Referenced by efispec3d().