Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
random_fourier.h
Go to the documentation of this file.
1
11#ifndef OAKFIELD_STIMULUS_RANDOM_FOURIER_H
12#define OAKFIELD_STIMULUS_RANDOM_FOURIER_H
13
14#include "coords.h"
16
17#include <stdbool.h>
18#include <stddef.h>
19#include <stdint.h>
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25struct SimContext;
26
48
63 size_t *out_index);
64
75SimResult sim_stimulus_random_fourier_config(struct SimContext *context, size_t operator_index,
77
91SimResult sim_stimulus_random_fourier_update(struct SimContext *context, size_t operator_index,
92 const SimStimulusRandomFourierConfig *config);
93
94#ifdef __cplusplus
95}
96#endif
97
98#endif /* OAKFIELD_STIMULUS_RANDOM_FOURIER_H */
Shared spatial coordinate helpers for stimulus operators.
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
Declarative complex-first operator splitting (substep expansion at plan time).
SimResult sim_add_stimulus_random_fourier_operator(struct SimContext *context, const SimStimulusRandomFourierConfig *config, size_t *out_index)
Register a random Fourier feature stimulus operator.
SimResult sim_stimulus_random_fourier_config(struct SimContext *context, size_t operator_index, SimStimulusRandomFourierConfig *out_config)
Copy the current random-Fourier configuration from a registered operator.
SimResult sim_stimulus_random_fourier_update(struct SimContext *context, size_t operator_index, const SimStimulusRandomFourierConfig *config)
Replace or renormalize a registered random-Fourier configuration.
Simulation runtime state.
Definition sim_context.h:70
Shared coordinate mapping configuration used by stimulus operators.
Definition coords.h:53
Configuration for seeded random Fourier feature stimulus fields.
Definition random_fourier.h:30
double spectral_slope
Definition random_fourier.h:41
double amplitude
Definition random_fourier.h:32
double omega
Definition random_fourier.h:37
bool use_wavevector
Definition random_fourier.h:44
double kx
Definition random_fourier.h:35
double nominal_dt
Definition random_fourier.h:40
bool scale_by_dt
Definition random_fourier.h:46
double k_max
Definition random_fourier.h:34
double ky
Definition random_fourier.h:36
double time_offset
Definition random_fourier.h:39
bool fixed_clock
Definition random_fourier.h:45
uint64_t seed
Definition random_fourier.h:43
size_t field_index
Definition random_fourier.h:31
double k_min
Definition random_fourier.h:33
SimStimulusCoordConfig coord
Definition random_fourier.h:38
unsigned int feature_count
Definition random_fourier.h:42