Product documentation — installation, licensing, and integration guides.
SolvScout / SolvTune
Examples

SolvScout / SolvTune: Examples

Each example is a verified run of a guided tour script from the shipped python/examples/ bundle (see PROGRESSION.md for the full 01→06 sequence). Run the guided tour first: it narrates the scenario, explains each metric, and shows when to trust the result. Use the production one-liner when wiring the same API call into your pipeline.

Examples source: Journey scripts live in the product python/examples/ tree (resonix_prod_solvscout_solvtune). They ship with product release materials — not inside the solvscout wheel itself. This page mirrors verified runs of those scripts.

Release note: SolvScout / SolvTune is production (GA) and free for life after registration. Download the release wheel from your Resonix account, activate a machine-locked seat, then run the examples — see Install and Licensing.

Journeys

Example 1: Journey 01 — First contact

Confirm SolvScout imports, see your license state, and run the smallest. Every support ticket starts with the package version. SolvScout's recommender is license-gated.

Walkthrough:

  1. What you are doing — Confirm SolvScout imports, see your license state, and run the smallest

  2. Version — Every support ticket starts with the package version.

  3. License — SolvScout's recommender is license-gated.

  4. Simplest call — classify(rhs, y0, t_span) inspects the dynamics and returns a

cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/01_first_contact.py
 
# Production one-liner — same API call you ship:
python -c "import solvscout as s; print(s.__version__, s.license_valid())"

Example 2: Journey 02 — Classify an RHS

classify() probes the RHS: it estimates the Jacobian spectrum, runs short. Van der Pol (mu=5) is a mildly stiff limit cycle; Robertson is the classic. The ProblemProfile is a compact, serializable description. Everything.

Walkthrough:

  1. How classification works — classify() probes the RHS: it estimates the Jacobian spectrum, runs short

  2. Two contrasting systems — Van der Pol (mu=5) is a mildly stiff limit cycle; Robertson is the classic

  3. What you got — The ProblemProfile is a compact, serializable description. Everything

cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/02_classify_rhs.py
 
# Production one-liner — same API call you ship:
python -c "import solvscout as s; print(s.classify(lambda t,y:[-y[0]],[1.0],(0.0,1.0)).profile.stiffness)"

Example 3: Journey 03 — Recommend a solver

recommend(profile, objective=...) ranks every active solver arm for the. The top pick can change with the objective - a survival-first choice is not. Each ArmRecommendation carries a score, confidence, survival_rate,.

Walkthrough:

  1. Classify once, recommend many ways — recommend(profile, objective=...) ranks every active solver arm for the

  2. Compare objectives — The top pick can change with the objective - a survival-first choice is not

  3. Read the full ranking — Each ArmRecommendation carries a score, confidence, survival_rate,

cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/03_recommend.py
 
# Production one-liner — same API call you ship:
python -c "import solvscout as s; c=s.classify(lambda t,y:[-y[0]],[1.0],(0.0,1.0)); print(s.recommend(c.profile).best.arm)"

Example 4: Journey 04 — Compare arms

compare(rhs, y0, t_span) classifies the problem, then looks up all four. Comparison.sections has one payload per objective; each has a recommended. Each RunResult carries status, survived, error (tol units), nfev and wall_s.

Walkthrough:

  1. What compare() does — compare(rhs, y0, t_span) classifies the problem, then looks up all four

  2. The returned object — Comparison.sections has one payload per objective; each has a recommended

  3. Per-arm rows — Each RunResult carries status, survived, error (tol units), nfev and wall_s.

cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/04_compare_arms.py
 
# Production one-liner — same API call you ship:
python -c "import solvscout as s; c=s.compare(lambda t,y:[-y[0]],[1.0],(0.0,1.0)); print(c.recommended, c.corpus_match)"

Example 5: Journey 05 — Product pick and SolvJump hint

Multi-arm recommend() is for the lab. recommend_product() returns a single,. A precision-first pick can encode different tuned knobs than a survival-first. If you drive SolvJump, recommend_jump() routes an operator from the profile.

Walkthrough:

  1. recommend_product() - the portable path — Multi-arm recommend() is for the lab. recommend_product() returns a single,

  2. Objective changes the token — A precision-first pick can encode different tuned knobs than a survival-first

  3. recommend_jump() - SolvJump operator hint — If you drive SolvJump, recommend_jump() routes an operator from the profile

cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/05_product_and_jump.py
 
# Production one-liner — same API call you ship:
python -c "import solvscout as s; c=s.classify(lambda t,y:[-y[0]],[1.0],(0.0,1.0)); print(s.recommend_product(c.profile).to_public_dict())"

Example 6: Journey 06 — Limits and non-goals

classify() and recommend() analyse and rank. They never step your ODE. To actually integrate, use the execution layer: SolvBench for live. Confidence reflects how close your problem is to benchmarked ones. A 'low'.

Walkthrough:

  1. SolvScout advises; it does not integrate — classify() and recommend() analyse and rank. They never step your ODE.

  2. Where execution lives — To actually integrate, use the execution layer: SolvBench for live

  3. Recommendations are corpus-conditioned — Confidence reflects how close your problem is to benchmarked ones. A 'low'

  4. Not a general-purpose classifier — SolvScout characterizes initial-value ODE systems for solver routing. It is

cd python
# Guided tour — narrated scenario walkthrough (recommended first run):
python examples/journeys/06_limits.py
 
# Production one-liner — same API call you ship:
python -c "import solvscout as s; print('compare() is corpus lookup, not a live run')"

Example bundle

Every journey is a domain scenario with narrated acts — run the guided tour first to see what each number means, then copy the production one-liner into your pipeline.

ResourcePurpose
PROGRESSION.mdOrdered runbook — journeys 01→06 with dual commands
COVERAGE.mdCapability matrix — which APIs each journey exercises
APPLICATIONS.mdWhere the product applies in real programs
run_examples.pyInteractive menu to launch any journey

Guided journeys

#ScriptScenario
0101_first_contact.pyFirst contact
0202_classify_rhs.pyClassify an RHS
0303_recommend.pyRecommend a solver
0404_compare_arms.pyCompare arms
0505_product_and_jump.pyProduct pick and SolvJump hint
0606_limits.pyLimits and non-goals

Run from the python/ directory after install and license activation. Set SOLVSCOUT_QUIET=1 only when you want silent CLI runs (no narration).