5#ifndef OAKFIELD_THERMOSTAT_H
6#define 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.