13#ifndef OAKFIELD_STIMULUS_BESSEL_BEAM_H
14#define OAKFIELD_STIMULUS_BESSEL_BEAM_H
SimResult sim_stimulus_bessel_beam_config(struct SimContext *context, size_t operator_index, SimStimulusBesselBeamConfig *out_config)
Copy the current Bessel beam configuration from a registered operator.
SimResult sim_add_stimulus_bessel_beam_operator(struct SimContext *context, const SimStimulusBesselBeamConfig *config, size_t *out_index)
Register an integer-order cylindrical Bessel beam stimulus operator.
SimResult sim_stimulus_bessel_beam_update(struct SimContext *context, size_t operator_index, const SimStimulusBesselBeamConfig *config)
Replace or renormalize a registered Bessel beam stimulus configuration.
Shared spatial coordinate helpers for stimulus operators.
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
Declarative complex-first operator splitting (substep expansion at plan time).
Simulation runtime state.
Definition sim_context.h:70
Configuration for an integer-order cylindrical Bessel beam stimulus.
Definition bessel_beam.h:31
double rotation
Definition bessel_beam.h:48
SimStimulusCoordConfig coord
Definition bessel_beam.h:46
double center_v
Definition bessel_beam.h:39
double time_offset
Definition bessel_beam.h:47
double amplitude
Definition bessel_beam.h:33
double phase
Definition bessel_beam.h:45
double center_u
Definition bessel_beam.h:38
bool scale_by_dt
Definition bessel_beam.h:49
int order
Definition bessel_beam.h:34
double omega
Definition bessel_beam.h:44
double orientation_rate
Definition bessel_beam.h:43
size_t field_index
Definition bessel_beam.h:32
double velocity_v
Definition bessel_beam.h:41
double velocity_u
Definition bessel_beam.h:40
double orientation
Definition bessel_beam.h:42
double scale_u
Definition bessel_beam.h:36
double scale_v
Definition bessel_beam.h:37
double radial_wavenumber
Definition bessel_beam.h:35
Shared coordinate mapping configuration used by stimulus operators.
Definition coords.h:53