Skip to main content

Module cli

Module cli 

Source
Expand description

The command-line tool comnum: run declarative Monte Carlo campaigns.

comnum run SPEC... [--out DIR] [--threads N] [--fast-dev-run] [--profile] [--quiet] [--json] [--max-seconds S]
comnum check SPEC... [--json]
comnum verify SPEC... [--out DIR] [--threads N] [--quiet] [--json] [--max-seconds S]
comnum conditions SPEC
comnum blocks [NAME...] [--json]
comnum schema
comnum guide

run writes the CSV and JSON reports given by the specification, or DIR/<name>.csv and DIR/<name>.json (DIR = results by default), and prints every metric with its confidence interval (for a specification with a search, the operating point of every combination of the other axes); --profile adds the mean time of every block (profile). check builds the link of every condition and runs one trial of each, without writing anything (for a specification with a search, at the lower end of its range for every combination of the other axes). verify runs the specifications and checks their expected results (closed forms, published curves), prints every check, writes the reports of the run and DIR/<name>.verify.json, and fails if a check fails. conditions lists the conditions of the grid; blocks documents the blocks of the links (their parameters with types, units and accepted values, and their ports; as JSON with --json); schema prints the JSON Schema of a block of a link, for editors and graphical front ends; guide prints the guide for programs and agents (GUIDE_AGENTS.md of the crate).

For programs and agents (agent): --json prints one compact JSON document per specification on standard output (the results with their confidence intervals and their provenance, the checks of verify) and the errors as JSON with a kind, a hint and a suggestion for a misspelt block or parameter; --max-seconds S bounds the wall time of a run (300 s by default with --json, 0 for none), spread over its conditions, and marks the conditions it cut short (time_limited: their results then depend on the machine). A specification - is read from standard input (YAML or JSON).

The binary comnum of this crate is main on the arguments of the process; a crate that adds blocks (blocks::register) wraps the same function in its own binary, so that its command lists, checks and runs them with the others.

Modules§

agent
The output of comnum --json for programs and agents: one compact JSON document per specification on standard output, results with their confidence intervals and their provenance, errors with a stable kind, a hint and a suggestion, and the time budget of --max-seconds.

Functions§

main
Run the command line on its arguments (without the program name); the exit code is 0 on success, 1 on a failure and 2 on a usage error.