Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
steerable_wavelet.h
Go to the documentation of this file.
1
5#ifndef OAKFIELD_STIMULUS_STEERABLE_WAVELET_H
6#define OAKFIELD_STIMULUS_STEERABLE_WAVELET_H
7
8#include "coords.h"
10
11#include <stdbool.h>
12#include <stddef.h>
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18struct SimContext;
19
27
53
67 struct SimContext *context, const SimStimulusSteerableWaveletConfig *config, size_t *out_index);
68
80SimResult sim_stimulus_steerable_wavelet_config(struct SimContext *context, size_t operator_index,
82
96SimResult sim_stimulus_steerable_wavelet_update(struct SimContext *context, size_t operator_index,
98
99#ifdef __cplusplus
100}
101#endif
102
103#endif /* OAKFIELD_STIMULUS_STEERABLE_WAVELET_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_steerable_wavelet_operator(struct SimContext *context, const SimStimulusSteerableWaveletConfig *config, size_t *out_index)
Register a steerable wavelet stimulus operator.
SimResult sim_stimulus_steerable_wavelet_config(struct SimContext *context, size_t operator_index, SimStimulusSteerableWaveletConfig *out_config)
Copy the current steerable-wavelet configuration from a registered operator.
SimResult sim_stimulus_steerable_wavelet_update(struct SimContext *context, size_t operator_index, const SimStimulusSteerableWaveletConfig *config)
Replace or renormalize a registered steerable-wavelet configuration.
SimStimulusSteerableWaveletFamily
Steerable wavelet families available to the stimulus.
Definition steerable_wavelet.h:23
@ SIM_STIMULUS_STEERABLE_WAVELET_SIMONCELLI
Definition steerable_wavelet.h:24
@ SIM_STIMULUS_STEERABLE_WAVELET_RIESZ
Definition steerable_wavelet.h:25
Simulation runtime state.
Definition sim_context.h:70
Shared coordinate mapping configuration used by stimulus operators.
Definition coords.h:53
Configuration for steerable wavelet stimulus families and scales.
Definition steerable_wavelet.h:31
double angular_sharpness
Definition steerable_wavelet.h:40
double omega
Definition steerable_wavelet.h:45
double scale_growth
Definition steerable_wavelet.h:38
unsigned int order
Definition steerable_wavelet.h:35
double radial_bandwidth
Definition steerable_wavelet.h:39
double ky
Definition steerable_wavelet.h:44
bool scale_by_dt
Definition steerable_wavelet.h:51
double time_offset
Definition steerable_wavelet.h:48
double amplitude
Definition steerable_wavelet.h:33
double rotation
Definition steerable_wavelet.h:49
double orientation
Definition steerable_wavelet.h:41
double orientation_rate
Definition steerable_wavelet.h:42
size_t field_index
Definition steerable_wavelet.h:32
SimStimulusCoordConfig coord
Definition steerable_wavelet.h:47
bool use_wavevector
Definition steerable_wavelet.h:50
SimStimulusSteerableWaveletFamily family
Definition steerable_wavelet.h:34
unsigned int scale_count
Definition steerable_wavelet.h:36
double kx
Definition steerable_wavelet.h:43
double base_wavenumber
Definition steerable_wavelet.h:37
double phase
Definition steerable_wavelet.h:46