|
Oakfield API Documentation 1.0.0
Numerical core APIs
|
Digamma square stimulus operators. More...
#include "coords.h"#include "oakfield/math/special_functions.h"#include "oakfield/operator_split.h"#include "oakfield/operators/coupling/mixer.h"#include <stdbool.h>#include <stddef.h>

Go to the source code of this file.
Classes | |
| struct | SimStimulusDigammaSquareConfig |
| Shared configuration for digamma square stimulus variants. More... | |
| struct | SimDigammaSquareState |
| State for digamma square stimulus. More... | |
Typedefs | |
| typedef enum SimDigammaSquareWaveformShape | SimDigammaSquareWaveformShape |
| Waveform shape for digamma square stimulus. | |
| typedef struct SimStimulusDigammaSquareConfig | SimStimulusDigammaSquareConfig |
| Shared configuration for digamma square stimulus variants. | |
| typedef struct SimDigammaSquareState | SimDigammaSquareState |
| State for digamma square stimulus. | |
Enumerations | |
| enum | SimDigammaSquareWaveformShape { SIM_DIGAMMA_SQUARE_WAVEFORM_DEFAULT = 0 , SIM_DIGAMMA_SQUARE_WAVEFORM_TRIANGLE , SIM_DIGAMMA_SQUARE_WAVEFORM_SAWTOOTH } |
| Waveform shape for digamma square stimulus. More... | |
Functions | |
| SimResult | sim_add_stimulus_digamma_square_operator (struct SimContext *context, const SimStimulusDigammaSquareConfig *config, size_t *out_index) |
| Register a digamma square stimulus operator. | |
| SimResult | sim_add_digamma_square_operator (struct SimContext *context, size_t field_index, const SimStimulusDigammaSquareConfig *config, size_t *out_index) |
| Register a digamma-square operator while overriding the target field. | |
| SimResult | sim_stimulus_digamma_square_config (struct SimContext *context, size_t operator_index, SimStimulusDigammaSquareConfig *out_config) |
| Copy the current digamma-square configuration from a registered operator. | |
| SimResult | sim_stimulus_digamma_square_update (struct SimContext *context, size_t operator_index, const SimStimulusDigammaSquareConfig *config) |
| Replace or renormalize a registered digamma-square stimulus configuration. | |
Digamma square stimulus operators.
Complex fields are driven by writing real/imag components with optional rotation.
| SimResult sim_add_digamma_square_operator | ( | struct SimContext * | context, |
| size_t | field_index, | ||
| const SimStimulusDigammaSquareConfig * | config, | ||
| size_t * | out_index | ||
| ) |
Register a digamma-square operator while overriding the target field.
This compatibility wrapper copies config when supplied, replaces its field_index with field_index, and registers the legacy operator name.
| context | Simulation context that will own the operator. | |
| field_index | Target field index written by the operator. | |
| config | Optional configuration values other than the target field. | |
| [out] | out_index | Optional destination for the registered operator index. |
| SimResult sim_add_stimulus_digamma_square_operator | ( | struct SimContext * | context, |
| const SimStimulusDigammaSquareConfig * | config, | ||
| size_t * | out_index | ||
| ) |
Register a digamma square stimulus operator.
The implementation copies and normalizes config, then registers the default digamma-square waveform as a split operator targeting the configured field.
| context | Simulation context that will own the operator. | |
| config | Optional digamma-square configuration; NULL selects normalized defaults. | |
| [out] | out_index | Optional destination for the registered operator index. |
| SimResult sim_stimulus_digamma_square_config | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| SimStimulusDigammaSquareConfig * | out_config | ||
| ) |
Copy the current digamma-square configuration from a registered operator.
| context | Simulation context containing the operator. | |
| operator_index | Index returned by a digamma-square registration call. | |
| [out] | out_config | Receives the operator's normalized configuration. |
| SimResult sim_stimulus_digamma_square_update | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| const SimStimulusDigammaSquareConfig * | config | ||
| ) |
Replace or renormalize a registered digamma-square stimulus configuration.
Passing NULL for config keeps the existing configuration and reapplies normalization. A successful update refreshes symbolic and cached runtime state before invalidating the scheduler plan.
| context | Simulation context containing the operator. |
| operator_index | Index of the digamma-square operator to update. |
| config | Optional replacement configuration. |