Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
remainder.h
Go to the documentation of this file.
1
11#ifndef OAKFIELD_REMAINDER_H
12#define OAKFIELD_REMAINDER_H
13
15
16#include <stdbool.h>
17#include <stddef.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23struct SimContext;
24
35
45
62
74 const SimRemainderOperatorConfig *config, size_t *out_index);
75
86SimResult sim_remainder_config(struct SimContext *context, size_t operator_index,
87 SimRemainderOperatorConfig *out_config);
88
103SimResult sim_remainder_update(struct SimContext *context, size_t operator_index,
104 const SimRemainderOperatorConfig *config);
105
106#ifdef __cplusplus
107}
108#endif
109
110#endif /* OAKFIELD_REMAINDER_H */
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
Declarative complex-first operator splitting (substep expansion at plan time).
SimRemainderComplexMode
Complex processing mode for remainder operator.
Definition remainder.h:39
@ SIM_REMAINDER_COMPLEX_MODE_COMPONENT
Definition remainder.h:40
@ SIM_REMAINDER_COMPLEX_MODE_POLAR
Definition remainder.h:42
SimResult sim_remainder_config(struct SimContext *context, size_t operator_index, SimRemainderOperatorConfig *out_config)
Copy the current remainder configuration from a registered operator.
SimResult sim_remainder_update(struct SimContext *context, size_t operator_index, const SimRemainderOperatorConfig *config)
Replace or renormalize a registered remainder configuration.
SimResult sim_add_remainder_operator(struct SimContext *context, const SimRemainderOperatorConfig *config, size_t *out_index)
Register a remainder operator that measures f(warped) - f(reference).
SimRemainderNonlinearity
Available nonlinearities applied before differencing.
Definition remainder.h:28
@ SIM_REMAINDER_NONLINEARITY_POWER
Definition remainder.h:32
@ SIM_REMAINDER_NONLINEARITY_ABS
Definition remainder.h:30
@ SIM_REMAINDER_NONLINEARITY_LOG_ABS
Definition remainder.h:31
@ SIM_REMAINDER_NONLINEARITY_TANH
Definition remainder.h:33
@ SIM_REMAINDER_NONLINEARITY_IDENTITY
Definition remainder.h:29
Simulation runtime state.
Definition sim_context.h:70
Configuration for the remainder operator.
Definition remainder.h:49
size_t output_field
Definition remainder.h:52
size_t warped_field
Definition remainder.h:50
bool scale_by_dt
Definition remainder.h:59
double exponent
Definition remainder.h:55
SimRemainderNonlinearity nonlinearity
Definition remainder.h:57
double weight
Definition remainder.h:53
size_t reference_field
Definition remainder.h:51
SimRemainderComplexMode complex_mode
Definition remainder.h:60
double epsilon
Definition remainder.h:56
double bias
Definition remainder.h:54
bool accumulate
Definition remainder.h:58