Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
operators/stimulus/fourier.h
Go to the documentation of this file.
1
5#ifndef OAKFIELD_STIMULUS_FOURIER_H
6#define OAKFIELD_STIMULUS_FOURIER_H
7
9
10#include <stdbool.h>
11#include <stddef.h>
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17struct SimContext;
18
27
36
55
69 const SimFourierWaveformConfig *config,
70 size_t *out_index);
71
82SimResult sim_stimulus_fourier_config(struct SimContext *context, size_t operator_index,
83 SimFourierWaveformConfig *out_config);
84
98SimResult sim_stimulus_fourier_update(struct SimContext *context, size_t operator_index,
99 const SimFourierWaveformConfig *config);
100
101#ifdef __cplusplus
102}
103#endif
104
105#endif /* OAKFIELD_STIMULUS_FOURIER_H */
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
Declarative complex-first operator splitting (substep expansion at plan time).
SimResult sim_stimulus_fourier_config(struct SimContext *context, size_t operator_index, SimFourierWaveformConfig *out_config)
Copy the current Fourier waveform configuration from a registered operator.
SimResult sim_add_stimulus_fourier_operator(struct SimContext *context, const SimFourierWaveformConfig *config, size_t *out_index)
Register a bandlimited Fourier waveform stimulus operator.
SimResult sim_stimulus_fourier_update(struct SimContext *context, size_t operator_index, const SimFourierWaveformConfig *config)
Replace or renormalize a registered Fourier waveform configuration.
SimFourierWaveformMethod
Bandlimiting methods used by Fourier waveform synthesis.
Definition operators/stimulus/fourier.h:31
@ SIM_FOURIER_METHOD_MINIBLEP
Definition operators/stimulus/fourier.h:34
@ SIM_FOURIER_METHOD_POLYBLEP
Definition operators/stimulus/fourier.h:33
@ SIM_FOURIER_METHOD_BLIT
Definition operators/stimulus/fourier.h:32
SimFourierWaveformShape
Waveform shapes produced by the Fourier stimulus.
Definition operators/stimulus/fourier.h:22
@ SIM_FOURIER_WAVEFORM_SAW
Definition operators/stimulus/fourier.h:23
@ SIM_FOURIER_WAVEFORM_TRIANGLE
Definition operators/stimulus/fourier.h:25
@ SIM_FOURIER_WAVEFORM_SQUARE
Definition operators/stimulus/fourier.h:24
Simulation runtime state.
Definition sim_context.h:70
Configuration for Fourier waveform stimulus.
Definition operators/stimulus/fourier.h:42
SimFourierWaveformShape shape
Definition operators/stimulus/fourier.h:50
bool fixed_clock
Definition operators/stimulus/fourier.h:52
SimFourierWaveformMethod method
Definition operators/stimulus/fourier.h:51
bool scale_by_dt
Definition operators/stimulus/fourier.h:53
double frequency
Definition operators/stimulus/fourier.h:45
double duty
Definition operators/stimulus/fourier.h:47
double rotation
Definition operators/stimulus/fourier.h:48
double nominal_dt
Definition operators/stimulus/fourier.h:49
size_t field_index
Definition operators/stimulus/fourier.h:43
double phase
Definition operators/stimulus/fourier.h:46
double amplitude
Definition operators/stimulus/fourier.h:44