|
Oakfield API Documentation 1.0.0
Numerical core APIs
|
Minimal convolution operator with small odd-length kernels (1D/2D). More...


Go to the source code of this file.
Classes | |
| struct | SimMinimalConvolutionOperatorConfig |
| Configuration for the minimal convolution operator. More... | |
Typedefs | |
| typedef enum SimMinimalConvolutionMode | SimMinimalConvolutionMode |
| Supported minimal-convolution kernel layouts. | |
| typedef enum SimMinimalConvolutionAxis | SimMinimalConvolutionAxis |
| Axis selection for one-dimensional kernels on two-dimensional fields. | |
| typedef struct SimMinimalConvolutionOperatorConfig | SimMinimalConvolutionOperatorConfig |
| Configuration for the minimal convolution operator. | |
Enumerations | |
| enum | { SIM_MINIMAL_CONVOLUTION_MAX_TAPS = 9 , SIM_MINIMAL_CONVOLUTION_MAX_TAPS_2D } |
| enum | SimMinimalConvolutionMode { SIM_MINIMAL_CONVOLUTION_MODE_AXIS = 0 , SIM_MINIMAL_CONVOLUTION_MODE_SEPARABLE , SIM_MINIMAL_CONVOLUTION_MODE_KERNEL_2D } |
| Supported minimal-convolution kernel layouts. More... | |
| enum | SimMinimalConvolutionAxis { SIM_MINIMAL_CONVOLUTION_AXIS_X = 0 , SIM_MINIMAL_CONVOLUTION_AXIS_Y } |
| Axis selection for one-dimensional kernels on two-dimensional fields. More... | |
Functions | |
| SimResult | sim_add_minimal_convolution_operator (struct SimContext *context, const SimMinimalConvolutionOperatorConfig *config, size_t *out_index) |
| Register a minimal convolution operator. | |
| SimResult | sim_minimal_convolution_config (struct SimContext *context, size_t operator_index, SimMinimalConvolutionOperatorConfig *out_config) |
| Copy the current minimal-convolution configuration from a registered operator. | |
| SimResult | sim_minimal_convolution_update (struct SimContext *context, size_t operator_index, const SimMinimalConvolutionOperatorConfig *config) |
| Replace the configuration of a registered minimal-convolution operator. | |
Minimal convolution operator with small odd-length kernels (1D/2D).
| SimResult sim_add_minimal_convolution_operator | ( | struct SimContext * | context, |
| const SimMinimalConvolutionOperatorConfig * | config, | ||
| size_t * | out_index | ||
| ) |
Register a minimal convolution operator.
The implementation copies and normalizes config, validates kernel shape and field compatibility, and registers a split operator over matching real or complex fields.
| context | Simulation context that will own the operator. | |
| config | Optional convolution configuration; NULL selects normalized defaults. | |
| [out] | out_index | Optional destination for the registered operator index. |
| SimResult sim_minimal_convolution_config | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| SimMinimalConvolutionOperatorConfig * | out_config | ||
| ) |
Copy the current minimal-convolution configuration from a registered operator.
| context | Simulation context containing the operator. | |
| operator_index | Index returned by sim_add_minimal_convolution_operator(). | |
| [out] | out_config | Receives the normalized configuration. |
| SimResult sim_minimal_convolution_update | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| const SimMinimalConvolutionOperatorConfig * | config | ||
| ) |
Replace the configuration of a registered minimal-convolution operator.
config is required. The replacement is normalized and kernel/field compatibility is checked before storing it.
| context | Simulation context containing the operator. |
| operator_index | Index of the minimal-convolution operator to update. |
| config | Replacement convolution configuration. |