Concepts¶
Homeostat generates data from abstract data generating processes instead of physics. A plant is a composition of small operators, each with exact discrete-time math: sources of variation, dynamic responses, controllers and instruments. Wired together with closed control loops, they produce data that behaves like a controlled plant, with every cause known.
Layers¶
flowchart LR
S["Scenario (YAML)"] --> L["Scenario layer<br/>schema, draws, generators"]
D["Domain library<br/>templates, presets, faults,<br/>degradations, tasks"] --> L
L --> G["Core graph<br/>operators and events"]
G --> C["Compile<br/>single writer, cycles,<br/>loops and roles"]
C --> E["Engine<br/>lanes, keyed noise,<br/>resumable"]
E --> R["Run<br/>truth, measured,<br/>observed, meta"]
R --> B["Labelers<br/>visibility, settling,<br/>feasibility, lineage"]
- The core (
homeostat.core) is a pure math layer: signals, operators, the graph and its compiler, events, and the engine. It never mentions hardware; a test checks that its code and docstrings contain no words such as valve, sensor or reactor. - Plugins add vocabulary that compiles down to core objects and events, never new engine behaviour. Domain libraries, such as
process, register through thehomeostat.librariesentry point and provide templates (a flow loop, a reactor) built only from core operators, with ISA tags, units, sensor presets, faults, degradations and maintenance tasks. Labelers derive labels from runs. - The scenario layer validates scenario files, draws distributions, expands plan generators, builds the graph from a domain library, and turns plans and faults into events.
The pages in this section¶
- Operators: the four kinds of operators, direct feedthrough, parameters in physical units and exact discretization.
- Graphs and roles: signals, the single-writer rule, algebraic loops, control loops and roles.
- The step: what happens in each step, sampled-data control, the steady start, multi-rate stepping and the resumable engine.
- Events: timed changes, what they may target, promoted parameters and modulation.
- Randomness and reproducibility: keyed random streams, lanes and twin runs, and what makes a run repeatable.
- Outputs and ground truth: what a historian sees, what is true, and the ground truth a run returns.