Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
hybrid_fbm.h
Go to the documentation of this file.
1
11#ifndef OAKFIELD_STIMULUS_HYBRID_FBM_H
12#define OAKFIELD_STIMULUS_HYBRID_FBM_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
40
54 const SimStimulusHybridFbmConfig *config,
55 size_t *out_index);
56
67SimResult sim_stimulus_hybrid_fbm_config(struct SimContext *context, size_t operator_index,
68 SimStimulusHybridFbmConfig *out_config);
69
83SimResult sim_stimulus_hybrid_fbm_update(struct SimContext *context, size_t operator_index,
84 const SimStimulusHybridFbmConfig *config);
85
86#ifdef __cplusplus
87}
88#endif
89
90#endif /* OAKFIELD_STIMULUS_HYBRID_FBM_H */
Shared spatial coordinate helpers for stimulus operators.
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
SimResult sim_stimulus_hybrid_fbm_config(struct SimContext *context, size_t operator_index, SimStimulusHybridFbmConfig *out_config)
Copy the current hybrid fBm configuration from a registered operator.
SimResult sim_stimulus_hybrid_fbm_update(struct SimContext *context, size_t operator_index, const SimStimulusHybridFbmConfig *config)
Replace or renormalize a registered hybrid fBm stimulus configuration.
SimResult sim_add_stimulus_hybrid_fbm_operator(struct SimContext *context, const SimStimulusHybridFbmConfig *config, size_t *out_index)
Register a hybrid fBm stimulus operator.
Declarative complex-first operator splitting (substep expansion at plan time).
Simulation runtime state.
Definition sim_context.h:70
Shared coordinate mapping configuration used by stimulus operators.
Definition coords.h:53
Configuration for seeded hybrid fractional Brownian motion stimulus noise.
Definition hybrid_fbm.h:30
double lacunarity
Definition hybrid_fbm.h:34
size_t field_index
Definition hybrid_fbm.h:31
double amplitude
Definition hybrid_fbm.h:32
SimStimulusCoordConfig coord
Definition hybrid_fbm.h:36
uint64_t seed
Definition hybrid_fbm.h:37
bool scale_by_dt
Definition hybrid_fbm.h:38
unsigned int octaves
Definition hybrid_fbm.h:35
double hurst
Definition hybrid_fbm.h:33