specfem::source_time_functions::Gaussian¶
-
class Gaussian : public specfem::source_time_functions::stf¶
Gaussian source time function.
Models a Gaussian-shaped pulse defined by a central frequency f0.
Public Functions
-
Gaussian(const int nsteps, const type_real dt, const type_real f0, const type_real tshift, const type_real factor, const bool use_trick_for_better_pressure, const type_real t0_factor = 2.0)¶
Construct a Gaussian source time function.
- Parameters:
nsteps – Number of time steps
dt – Time step size
f0 – Central frequency
tshift – Time shift value
factor – Scaling factor
use_trick_for_better_pressure – Use pressure optimization trick
t0_factor – Start time factor (default: 2.0)
-
Gaussian(YAML::Node &GaussianNode, const int nsteps, const type_real dt, const bool use_trick_for_better_pressure, const type_real t0_factor = 2.0)¶
Construct a Gaussian source time function from YAML configuration.
- Parameters:
GaussianNode – YAML node with Gaussian parameters
nsteps – Number of time steps
dt – Time step size
use_trick_for_better_pressure – Use pressure optimization trick
t0_factor – Start time factor (default: 2.0)
-
type_real compute(type_real t)¶
Compute source time function value at time t.
- Parameters:
t – Time value
- Returns:
Source time function value
-
inline virtual void update_tshift(type_real tshift) override¶
Update the time shift value.
- Parameters:
tshift – New time shift value
-
inline virtual type_real get_t0() const override¶
Get start time value.
- Returns:
Start time t0
-
inline virtual type_real get_tshift() const override¶
Get the time shift value.
- Returns:
Time shift value
-
virtual std::string print() const override¶
Get string representation of the source time function.
- Returns:
String describing the STF parameters
-
virtual void compute_source_time_function(const type_real t0, const type_real dt, const int nsteps, Kokkos::View<type_real**, Kokkos::LayoutRight, Kokkos::HostSpace> source_time_function) override¶
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
-
Gaussian(const int nsteps, const type_real dt, const type_real f0, const type_real tshift, const type_real factor, const bool use_trick_for_better_pressure, const type_real t0_factor = 2.0)¶