YAML formats

Builds 199 and 200 use four YAML formats. Each format has a separate job. The growth-input interpretation changes at build 200 while model configuration retains schema_version: 1.

File What it controls Usual location
Model configuration YAML Model identity, years, files and economic settings <version>/<build>/model_configuration.yaml
Design YAML Which simulation layers are applied, and in what order data/baseline_design.yaml or simulations/<experiment>/design.yaml
Setup YAML Generation of standard simulation layers, designs, targets and chartpacks simulations/<name>/setup.yaml
Chartpack YAML Which projection series appear in reports simulations/<name>/chartpack.yaml

The files fit together as follows:

model_configuration.yaml
        |
        +-- data/baseline_design.yaml ------------> baseline run
        |
setup.yaml + setup.py
        |
        +-- generated simulation-layer CSV files
        +-- generated design YAML
        +-- generated chartpack YAML
                         |
maintained run_*.py -----+-------------------------> solve and report

setup.yaml is an authoring file. It is not read when an experiment runs. A setup run replaces the generated files that it declares. The maintained run script selects the design, chartpack, results and algorithm settings.

Model configuration, design and setup documents use schema_version: 1. Standalone chartpacks put their format version inside the first chartpack item: numeric version: 1 for the original format, or a supported quoted version such as version: "1.4.0" for later features. The four formats have different document shapes, so do not copy a block from one format into another. In particular, standalone chartpack YAML and the chartpack declaration inside setup YAML use different syntax.

Where to begin


Table of contents