-
class stf¶
Source time function base class.
Abstract base class for all source time functions. Derived classes implement specific time-dependent behaviors for seismic sources.
Note
The STF function should lie on host and device. Decorate the class functions within using KOKKOS_FUNCTION macro
Subclassed by specfem::source_time_functions::Dirac, specfem::source_time_functions::Gaussian, specfem::source_time_functions::GaussianHdur, specfem::source_time_functions::Heaviside, specfem::source_time_functions::Ricker, specfem::source_time_functions::dGaussian, specfem::source_time_functions::external
Public Functions
-
inline stf()¶
Default constructor.
-
inline virtual void update_tshift(type_real tshift)¶
Update the time shift value.
- Parameters:
tshift – New time shift value
-
inline virtual type_real get_t0() const¶
Get the start time value.
- Returns:
Start time t0
-
inline virtual type_real get_tshift() const¶
Get the time shift value.
- Returns:
Time shift value
-
virtual std::string print() const = 0¶
Get string representation of the source time function.
- Returns:
String describing the STF parameters
-
inline virtual bool operator==(const stf &other) const¶
Equality operator.
- Parameters:
other – Another source time function to compare with
- Returns:
true if equal, false otherwise
-
inline virtual bool operator!=(const stf &other) const¶
Inequality operator.
- Parameters:
other – Another source time function to compare with
- Returns:
true if not equal, false otherwise
-
virtual ~stf() = default¶
Virtual destructor.
-
virtual void compute_source_time_function(const type_real t0, const type_real dt, const int nsteps, specfem::kokkos::HostView2d<type_real> source_time_function) = 0¶
Compute source time function values for all time steps.
- Parameters:
t0 – Start time
dt – Time step size
nsteps – Number of time steps
source_time_function – Output view to store computed values
-
inline stf()¶