Skip to content

Simulation & Analysis

GDS separates structural specification from execution. gds-framework defines typed systems and verifies their structure; simulation and analysis packages run or evaluate behavior once executable semantics are available.

The Stack

Domain DSLs
  stockflow / control / games / software / business
        |
        v
gds-framework
  typed specification + verification
        |
        v
gds-analysis
  bridge selected GDSSpec structures to runtime models
        |
        v
gds-sim / gds-continuous
  execute trajectories
        |
        v
gds_analysis.psuu
  sweep, optimize, score, and analyze sensitivity

Package Roles

Package Use It For Import
gds-framework Defining typed specifications, compiling to IR, and structural verification gds
gds-analysis Bridging GDSSpec annotations into simulation workflows and reachability analysis gds_analysis
gds-sim Running standalone discrete-time models with plain Python policy and state update functions gds_sim
gds-continuous Running continuous-time ODE simulations gds_continuous
PSUU Running parameter sweeps, KPI scoring, optimization, and sensitivity analysis gds_analysis.psuu

When To Use Each Runtime

Use gds-sim when your model advances in discrete timesteps and can be expressed as policy functions plus state update functions.

Use gds-continuous when your model is an ODE system and should be solved with continuous-time numerical integration.

Use gds-analysis when you start from a verified GDSSpec and need a bridge from structural annotations to executable model components.

Use gds_analysis.psuu when you already have a simulation model and want to evaluate many parameter points, optimize KPI scores, or estimate parameter sensitivity.

Specification Is Not Execution

gds-framework intentionally focuses on typed structure, canonical GDS roles, composition, and verification. It can say whether a specification is well formed, but it does not directly run trajectories.

This split keeps the core framework domain-neutral:

  • structural correctness belongs in gds-framework
  • executable runtime semantics belong in gds-sim or gds-continuous
  • translation from specification to runtime belongs in gds-analysis
  • parameter-space exploration belongs in gds_analysis.psuu

For a fuller explanation, see Specification vs Execution.

Common Paths

Starting Point Path
Plain Python state update functions gds-sim -> gds_analysis.psuu
Verified GDSSpec gds-framework -> gds-analysis -> gds-sim
ODE equations gds-continuous
Control model with symbolic equations gds_domains.control -> gds_domains.symbolic -> gds-continuous
Parameter calibration or robustness screening simulation model -> gds_analysis.psuu

Next Steps