Journey 01 — First contact
Verify install and license, read machine code, and solve the smallest direct linear problem (y'=-y at T=1) with a known exact answer.
Prerequisites: Release bundle wheel installed and activated solvlrde.lic (30-day trial or subscription). Scenario: Version, license, and the smallest direct linear solve
Key APIs
solvlrde.__version__solvlrde.license_valid()solvlrde.machine_code_formatted()solvlrde.solve(A, y0, T)
Concepts to internalize
- No time stepping — SolvLRDE evaluates y(T) by Talbot contour inversion; cost depends on contour nodes, not T.
- survived — go/no-go on the resolvent solve; always log the receipt.
- Machine-locked license — no dev bypass in production builds.
- Matrix API — you supply constant A; there is no rhs(t,y) callback.
Important code
The guided tour script wraps this pattern. Copy the production shape into your pipeline:
import numpy as np
import solvlrde as lrde
# Exponential decay: y' = -y, y(0)=1, T=1 => exp(-1)
result = lrde.solve(np.array([[-1.0]]), [1.0], T=1.0)
print(result['survived'], result['y'])Act-by-act walkthrough
Act 1 — What you are doing
Confirm the wheel and the native libsolvlrde load, see your license state, and solve the smallest linear ODE that proves the solver is alive.
Act 2 — Version
Every support ticket starts with the package version.
| Field | Value | Notes |
|---|---|---|
version | 0.1.0 |
Act 3 — License
SolvLRDE is gated by a machine-locked .lic file. In production you set SOLVLRDE_LICENSE_FILE or run python -m solvlrde activate <file>.lic. There is no dev bypass - the seat is bound to this machine.
| Field | Value | Notes |
|---|---|---|
license_valid | True | |
days_remaining | 30 | |
license_info | valid=1 licensee=ci seat_id=default expires=2026-10-08 duration_days=30 days_remaining=30 |
Act 4 — Machine code
If activation fails, this is the fingerprint you paste into the Resonix portal to be issued a seat. It is safe to share.
| Field | Value | Notes |
|---|---|---|
machine_code | B08B-F26C-BFC6-FE1C-A199-A07F-F34B-3F8C-9D7E-DA6D-CFB8-7480-BE42-9449-84B2-1AF5 | |
default_license_path | ~\AppData\Roaming\solvlrde\license.dat |
Act 5 — Simplest solve
Solve exponential decay y' = -y from t=0 to T=1 with y(0)=1. The exact answer is exp(-1). SolvLRDE does NOT time-step: it evaluates y(T) directly by inverse-Laplace integration on a Talbot contour, all in the C core.
| Field | Value | Notes |
|---|---|---|
survived | True | |
status | ok | |
y | [0.367879] | |
n_talbot_used | 32 | |
n_solves | 32 | |
nu_used | 0.6 | |
contour_scale | 12.8 | |
wall_s | 0 | |
expected | [0.367879] | |
max_abs_error | 9.492e-11 |
Guided tour output
Verified console capture from 01_first_contact.py:
Version, license, and the smallest direct linear solve
-- Act 1 - What you are doing --
-> Confirm the wheel and the native libsolvlrde load, see your license state, and solve the smallest linear ODE that proves the solver is alive.
-- Act 2 - Version --
-> Every support ticket starts with the package version.
version: 0.1.0
-- Act 3 - License --
-> SolvLRDE is gated by a machine-locked .lic file. In production you set SOLVLRDE_LICENSE_FILE or run `python -m solvlrde activate <file>.lic`. There is no dev bypass - the seat is bound to this machine.
license_valid: True
days_remaining: 30
license_info: valid=1 licensee=ci seat_id=default expires=2026-10-08 duration_days=30 days_remaining=30
-- Act 4 - Machine code --
-> If activation fails, this is the fingerprint you paste into the Resonix portal to be issued a seat. It is safe to share.
machine_code: B08B-F26C-BFC6-FE1C-A199-A07F-F34B-3F8C-9D7E-DA6D-CFB8-7480-BE42-9449-84B2-1AF5
default_license_path: ~\AppData\Roaming\solvlrde\license.dat
-- Act 5 - Simplest solve --
-> Solve exponential decay y' = -y from t=0 to T=1 with y(0)=1. The exact answer is exp(-1). SolvLRDE does NOT time-step: it evaluates y(T) directly by inverse-Laplace integration on a Talbot contour, all in the C core.
survived: True
status: ok
y: [0.367879]
n_talbot_used: 32
n_solves: 32
nu_used: 0.6
contour_scale: 12.8
wall_s: 0
expected: [0.367879]
max_abs_error: 9.492e-11
-- Run complete --
next_journey: 02_core_path.pyRun it
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 solvlrde as s; print(s.__version__, s.license_valid())"What comes next
Journey 02 covers the main solve() pattern on a multi-mode system.