5#ifndef OAKFIELD_CHAOS_MAP_H
6#define OAKFIELD_CHAOS_MAP_H
SimChaosMapType
Supported chaotic map families.
Definition chaos_map.h:22
@ SIM_CHAOS_MAP_IKEDA
Definition chaos_map.h:24
@ SIM_CHAOS_MAP_TINKERBELL
Definition chaos_map.h:29
@ SIM_CHAOS_MAP_LOZI
Definition chaos_map.h:28
@ SIM_CHAOS_MAP_STANDARD
Definition chaos_map.h:23
@ SIM_CHAOS_MAP_QUADRATIC
Definition chaos_map.h:26
@ SIM_CHAOS_MAP_EXPONENTIAL
Definition chaos_map.h:25
@ SIM_CHAOS_MAP_HENON
Definition chaos_map.h:27
SimChaosEscapeMode
Escape handling when state diverges.
Definition chaos_map.h:54
@ SIM_CHAOS_ESCAPE_RESET
Definition chaos_map.h:57
@ SIM_CHAOS_ESCAPE_NONE
Definition chaos_map.h:55
@ SIM_CHAOS_ESCAPE_CLAMP
Definition chaos_map.h:56
@ SIM_CHAOS_ESCAPE_NAN
Definition chaos_map.h:58
SimResult sim_add_chaos_map_operator(struct SimContext *context, const SimChaosMapOperatorConfig *config, size_t *out_index)
Register a chaos map operator with the provided configuration.
SimChaosWrapMode
Wrap mode for state components.
Definition chaos_map.h:44
@ SIM_CHAOS_WRAP_NONE
Definition chaos_map.h:45
@ SIM_CHAOS_WRAP_PERIODIC
Definition chaos_map.h:46
@ SIM_CHAOS_WRAP_MIRROR
Definition chaos_map.h:48
@ SIM_CHAOS_WRAP_CLAMP
Definition chaos_map.h:47
SimChaosKickMode
Standard map kick/drift ordering.
Definition chaos_map.h:35
@ SIM_CHAOS_KICK_DRIFT
Definition chaos_map.h:36
@ SIM_CHAOS_DRIFT_KICK
Definition chaos_map.h:37
@ SIM_CHAOS_KICK_DRIFT_KICK
Definition chaos_map.h:38
SimResult sim_chaos_map_config(struct SimContext *context, size_t operator_index, SimChaosMapOperatorConfig *out_config)
Retrieve the configuration currently bound to a chaos map operator.
SimResult sim_chaos_map_update(struct SimContext *context, size_t operator_index, const SimChaosMapOperatorConfig *config)
Update an existing chaos map operator in-place.
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
Declarative complex-first operator splitting (substep expansion at plan time).
Configuration for discrete chaotic map operators.
Definition chaos_map.h:66
SimChaosWrapMode wrap_mode_re
Definition chaos_map.h:136
double wrap_max_re
Definition chaos_map.h:139
double ikeda_offset_im
Definition chaos_map.h:83
double lozi_offset_re
Definition chaos_map.h:112
size_t input_field
Definition chaos_map.h:67
double tinkerbell_xy_gain
Definition chaos_map.h:123
double tinkerbell_c
Definition chaos_map.h:119
double ikeda_u
Definition chaos_map.h:79
size_t u_field
Definition chaos_map.h:129
double henon_a
Definition chaos_map.h:100
unsigned int iterations_per_step
Definition chaos_map.h:71
double lozi_x_gain
Definition chaos_map.h:110
double escape_reset_re
Definition chaos_map.h:146
double quad_c_im
Definition chaos_map.h:97
SimChaosMapType map_type
Definition chaos_map.h:69
double tinkerbell_offset_im
Definition chaos_map.h:125
double lozi_b
Definition chaos_map.h:109
double henon_offset_im
Definition chaos_map.h:105
double henon_b
Definition chaos_map.h:101
size_t c_field
Definition chaos_map.h:132
double ikeda_b
Definition chaos_map.h:81
double lozi_abs_epsilon
Definition chaos_map.h:114
double tinkerbell_offset_re
Definition chaos_map.h:124
double henon_x_gain
Definition chaos_map.h:102
SimChaosEscapeMode escape_mode
Definition chaos_map.h:144
double escape_radius
Definition chaos_map.h:145
double exp_scale_re
Definition chaos_map.h:86
double tinkerbell_y2_gain
Definition chaos_map.h:122
double quad_b_im
Definition chaos_map.h:95
SimChaosWrapMode wrap_mode_im
Definition chaos_map.h:137
double exp_scale_im
Definition chaos_map.h:87
double exp_c_re
Definition chaos_map.h:88
double henon_y_gain
Definition chaos_map.h:103
double ikeda_offset_re
Definition chaos_map.h:82
double blend
Definition chaos_map.h:72
double quad_a_re
Definition chaos_map.h:92
double lozi_y_gain
Definition chaos_map.h:111
double k
Definition chaos_map.h:75
double wrap_max_im
Definition chaos_map.h:141
double quad_c_re
Definition chaos_map.h:96
double wrap_min_re
Definition chaos_map.h:138
double quad_a_im
Definition chaos_map.h:93
double wrap_min_im
Definition chaos_map.h:140
double ikeda_a
Definition chaos_map.h:80
size_t k_field
Definition chaos_map.h:128
size_t b_field
Definition chaos_map.h:131
double tinkerbell_x2_gain
Definition chaos_map.h:121
double lozi_offset_im
Definition chaos_map.h:113
SimChaosKickMode kick_mode
Definition chaos_map.h:70
size_t a_field
Definition chaos_map.h:130
double tinkerbell_a
Definition chaos_map.h:117
double exp_c_im
Definition chaos_map.h:89
size_t d_field
Definition chaos_map.h:133
double lozi_a
Definition chaos_map.h:108
double tinkerbell_d
Definition chaos_map.h:120
double escape_reset_im
Definition chaos_map.h:147
size_t output_field
Definition chaos_map.h:68
double tinkerbell_b
Definition chaos_map.h:118
double quad_b_re
Definition chaos_map.h:94
double henon_offset_re
Definition chaos_map.h:104
double angle_scale
Definition chaos_map.h:76
Simulation runtime state.
Definition sim_context.h:70