|
Oakfield API Documentation 1.0.0
Numerical core APIs
|
Regularized cylindrical wave-emitter stimulus. More...


Go to the source code of this file.
Classes | |
| struct | SimStimulusCylindricalWaveEmitterConfig |
| Configuration for a regularized cylindrical wave-emitter stimulus. More... | |
Typedefs | |
| typedef struct SimStimulusCylindricalWaveEmitterConfig | SimStimulusCylindricalWaveEmitterConfig |
| Configuration for a regularized cylindrical wave-emitter stimulus. | |
Functions | |
| SimResult | sim_add_stimulus_cylindrical_wave_emitter_operator (struct SimContext *context, const SimStimulusCylindricalWaveEmitterConfig *config, size_t *out_index) |
| Register a regularized cylindrical wave-emitter stimulus operator. | |
| SimResult | sim_stimulus_cylindrical_wave_emitter_config (struct SimContext *context, size_t operator_index, SimStimulusCylindricalWaveEmitterConfig *out_config) |
| Copy the current cylindrical emitter configuration from a registered operator. | |
| SimResult | sim_stimulus_cylindrical_wave_emitter_update (struct SimContext *context, size_t operator_index, const SimStimulusCylindricalWaveEmitterConfig *config) |
| Replace or renormalize a registered cylindrical emitter configuration. | |
Regularized cylindrical wave-emitter stimulus.
Evaluates a local chart (u, v) and injects A * exp(-alpha * r_a) / sqrt(r_a) * exp(i * (k_r * r_a - omega * t + phi)), where r_a = sqrt(rho^2 + a^2) regularizes the source core and rho = |u - u_c| in rank-1 or hypot(u - u_c, v - v_c) in rank-2.
Real fields receive the real component. Complex fields receive the full complex wave with an additional global rotation.
| SimResult sim_add_stimulus_cylindrical_wave_emitter_operator | ( | struct SimContext * | context, |
| const SimStimulusCylindricalWaveEmitterConfig * | config, | ||
| size_t * | out_index | ||
| ) |
Register a regularized cylindrical wave-emitter stimulus operator.
The implementation copies and normalizes config, then registers a split operator that writes the emitter wave into the configured target field.
| context | Simulation context that will own the operator. | |
| config | Optional emitter configuration; NULL selects normalized defaults. | |
| [out] | out_index | Optional destination for the registered operator index. |
| SimResult sim_stimulus_cylindrical_wave_emitter_config | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| SimStimulusCylindricalWaveEmitterConfig * | out_config | ||
| ) |
Copy the current cylindrical emitter configuration from a registered operator.
| context | Simulation context containing the operator. | |
| operator_index | Index returned by sim_add_stimulus_cylindrical_wave_emitter_operator(). | |
| [out] | out_config | Receives the operator's normalized configuration. |
| SimResult sim_stimulus_cylindrical_wave_emitter_update | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| const SimStimulusCylindricalWaveEmitterConfig * | config | ||
| ) |
Replace or renormalize a registered cylindrical emitter configuration.
Passing NULL for config keeps the existing configuration and reapplies normalization. A successful update refreshes derived state and invalidates the scheduler plan.
| context | Simulation context containing the operator. |
| operator_index | Index of the cylindrical emitter operator to update. |
| config | Optional replacement configuration. |