|
Oakfield API Documentation 1.0.0
Numerical core APIs
|
Fused spectral dissipation, dispersion, and global phase operator. More...
#include "oakfield/operator_split.h"

Go to the source code of this file.
Classes | |
| struct | LinearSpectralFusionOperatorConfig |
| Configuration for the fused spectral dissipation, dispersion, and phase operator. More... | |
Typedefs | |
| typedef struct LinearSpectralFusionOperatorConfig | LinearSpectralFusionOperatorConfig |
| Configuration for the fused spectral dissipation, dispersion, and phase operator. | |
Functions | |
| SimResult | sim_add_linear_spectral_fusion_operator (struct SimContext *context, const LinearSpectralFusionOperatorConfig *config, size_t *out_index) |
| Register a fused linear spectral operator. | |
| SimResult | sim_linear_spectral_fusion_config (struct SimContext *context, size_t operator_index, LinearSpectralFusionOperatorConfig *out_config) |
| Copy the current fused spectral configuration from a registered operator. | |
| SimResult | sim_linear_spectral_fusion_update (struct SimContext *context, size_t operator_index, const LinearSpectralFusionOperatorConfig *config) |
| Replace the non-target parameters of a fused spectral operator. | |
Fused spectral dissipation, dispersion, and global phase operator.
| SimResult sim_add_linear_spectral_fusion_operator | ( | struct SimContext * | context, |
| const LinearSpectralFusionOperatorConfig * | config, | ||
| size_t * | out_index | ||
| ) |
Register a fused linear spectral operator.
The operator combines dissipative damping, dispersive phase, and global phase terms in one spectral pass when a split fallback is required.
| context | Simulation context that will own the operator. | |
| config | Optional fusion configuration; NULL selects normalized defaults. | |
| [out] | out_index | Optional destination for the registered operator index. |
| SimResult sim_linear_spectral_fusion_config | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| LinearSpectralFusionOperatorConfig * | out_config | ||
| ) |
Copy the current fused spectral configuration from a registered operator.
| context | Simulation context containing the operator. | |
| operator_index | Index returned by sim_add_linear_spectral_fusion_operator(). | |
| [out] | out_config | Receives the normalized configuration. |
| SimResult sim_linear_spectral_fusion_update | ( | struct SimContext * | context, |
| size_t | operator_index, | ||
| const LinearSpectralFusionOperatorConfig * | config | ||
| ) |
Replace the non-target parameters of a fused spectral operator.
config is required. The registered target field is preserved even if config->field_index differs. A successful update refreshes symbolic/kernel constants, marks changed spectral coefficient caches dirty, and invalidates the scheduler plan.
| context | Simulation context containing the operator. |
| operator_index | Index of the fused spectral operator to update. |
| config | Replacement configuration values. |