|
Oakfield API Documentation 1.0.0
Numerical core APIs
|
Lissajous ridge stimulus with Gaussian band shaping. More...


Go to the source code of this file.
Classes | |
| struct | SimStimulusLissajousConfig |
| Configuration for a Gaussian-band Lissajous ridge stimulus. More... | |
Typedefs | |
| typedef struct SimStimulusLissajousConfig | SimStimulusLissajousConfig |
| Configuration for a Gaussian-band Lissajous ridge stimulus. | |
Functions | |
| SimResult | sim_add_stimulus_lissajous_operator (struct SimContext *context, const SimStimulusLissajousConfig *config, size_t *out_index) |
| Register a Lissajous ridge stimulus operator. | |
| SimResult | sim_stimulus_lissajous_config (struct SimContext *context, size_t operator_index, SimStimulusLissajousConfig *out_config) |
| Copy the current Lissajous configuration from a registered operator. | |
| SimResult | sim_stimulus_lissajous_update (struct SimContext *context, size_t operator_index, const SimStimulusLissajousConfig *config) |
| Replace or renormalize a registered Lissajous stimulus configuration. | |
Lissajous ridge stimulus with Gaussian band shaping.
Builds a smooth band around the implicit relation sin(theta_x) = coupling * sin(theta_y) + bias and modulates that band by a carrier phase 0.5 * (theta_x + theta_y).
In separable coord mode, theta_x and theta_y sample the X/Y axes independently. Other coord modes collapse to a shared scalar coordinate.
| SimResult sim_add_stimulus_lissajous_operator | ( | struct SimContext * | context, |
| const SimStimulusLissajousConfig * | config, | ||
| size_t * | out_index | ||
| ) |
Register a Lissajous ridge stimulus operator.
The implementation copies and normalizes config, then registers a split operator that writes the Gaussian band around the implicit Lissajous relation.
| context | Simulation context that will own the operator. | |
| config | Optional Lissajous configuration; NULL selects normalized defaults. | |
| [out] | out_index | Optional destination for the registered operator index. |
| SimResult sim_stimulus_lissajous_config | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| SimStimulusLissajousConfig * | out_config | ||
| ) |
Copy the current Lissajous configuration from a registered operator.
| context | Simulation context containing the operator. | |
| operator_index | Index returned by sim_add_stimulus_lissajous_operator(). | |
| [out] | out_config | Receives the operator's normalized configuration. |
| SimResult sim_stimulus_lissajous_update | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| const SimStimulusLissajousConfig * | config | ||
| ) |
Replace or renormalize a registered Lissajous stimulus configuration.
Passing NULL for config keeps the existing configuration and reapplies normalization. A successful update refreshes symbolic state and invalidates the scheduler plan.
| context | Simulation context containing the operator. |
| operator_index | Index of the Lissajous operator to update. |
| config | Optional replacement configuration. |