Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
thermostat.h
Go to the documentation of this file.
1
5#ifndef OAKFIELD_THERMOSTAT_H
6#define OAKFIELD_THERMOSTAT_H
7
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14struct SimContext;
15
29
52
63 const ThermostatOperatorConfig *config, size_t *out_index);
64
75SimResult sim_thermostat_config(struct SimContext *context, size_t operator_index,
76 ThermostatOperatorConfig *out_config);
77
91SimResult sim_thermostat_update(struct SimContext *context, size_t operator_index,
92 const ThermostatOperatorConfig *config);
93
94#ifdef __cplusplus
95}
96#endif
97
98#endif /* OAKFIELD_THERMOSTAT_H */
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
Declarative complex-first operator splitting (substep expansion at plan time).
Simulation runtime state.
Definition sim_context.h:70
Configuration for the thermostat operator.
Definition thermostat.h:36
bool use_memory_field
Definition thermostat.h:50
double lambda_soft_gain
Definition thermostat.h:41
double E_target
Definition thermostat.h:39
ThermostatMode mode
Definition thermostat.h:38
size_t memory_field
Definition thermostat.h:49
double softplus_k
Definition thermostat.h:46
double lambda_min
Definition thermostat.h:42
double mu
Definition thermostat.h:47
double lambda_rebuild_thresh
Definition thermostat.h:45
bool auto_nu_guard
Definition thermostat.h:48
double lambda_smooth
Definition thermostat.h:44
double lambda_base
Definition thermostat.h:40
double lambda_max
Definition thermostat.h:43
size_t field_index
Definition thermostat.h:37
SimResult sim_thermostat_config(struct SimContext *context, size_t operator_index, ThermostatOperatorConfig *out_config)
Copy the current thermostat configuration from a registered operator.
SimResult sim_thermostat_update(struct SimContext *context, size_t operator_index, const ThermostatOperatorConfig *config)
Replace the configuration of a registered thermostat operator.
ThermostatMode
Thermostat regulation mode.
Definition thermostat.h:23
@ THERMOSTAT_NONE
Definition thermostat.h:24
@ THERMOSTAT_MULT
Definition thermostat.h:27
@ THERMOSTAT_ADD
Definition thermostat.h:26
@ THERMOSTAT_SOFT_LAMBDA
Definition thermostat.h:25
SimResult sim_add_thermostat_operator(struct SimContext *context, const ThermostatOperatorConfig *config, size_t *out_index)
Register a thermostat operator instance.