An exact logistic on-site reaction step, logarithmic invariant, and packaged numerical instrument used in the VDM reaction-diffusion work.
Lietz, J. (2026). A Logarithmic First Integral for the Logistic On Site Law in VDM (Version 0.3.0). Zenodo. https://doi.org/10.5281/zenodo.22103196
From the repository root:
python -m venv .venv
source .venv/bin/activate
python -m pip install .For development:
python -m pip install -e '.[dev]'
vdm-logistic verify
pytestOn Windows PowerShell:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install .vdm-logistic --helpThe package exposes the original research programs through a single command-line interface:
| Command | Purpose |
|---|---|
vdm-logistic qfum |
Logistic first-integral / QFUM validation, solver comparison, drift, and convergence diagnostics |
vdm-logistic rd-conservation |
Reaction-diffusion conservation controls, convergence checks, exact-reaction splitting, Lyapunov diagnostics, and acceptance gates |
vdm-logistic front-speed |
Fisher-KPP front-speed validation against c = 2 sqrt(D r) |
vdm-logistic front-speed-sweep |
Parameter sweep over the front-speed experiment |
vdm-logistic dispersion |
Linear-regime reaction-diffusion dispersion validation |
vdm-logistic verify |
Verify the packaged research source files against their recorded SHA-256 identities |
Each research command accepts the argument interface of the corresponding original program:
vdm-logistic qfum --help
vdm-logistic rd-conservation --help
vdm-logistic front-speed --help
vdm-logistic front-speed-sweep --help
vdm-logistic dispersion --helpvdm-logistic qfum \
--r 0.15 --u 0.25 \
--W0 0.12 0.62 \
--T 40 \
--dt 0.2 0.1 0.05 \
--solver rk4 \
--outdir ./outputsThis range keeps the RK4 convergence measurement above floating-point roundoff while exercising the same validator and convergence gate.
vdm-logistic front-speed \
--N 1024 --L 200 --D 1.0 --r 0.25 \
--T 80 --cfl 0.2 --seed 42 \
--x0 -60 --level 0.1 \
--fit_start 0.6 --fit_end 0.9vdm-logistic dispersion \
--N 1024 --L 200 --D 1.0 --r 0.25 \
--T 10 --cfl 0.2 --seed 42 \
--record 80 --m_max 64 \
--fit_start 0.1 --fit_end 0.4vdm-logistic rd-conservation --spec reference/step_spec.example.jsonvdm-logistic front-speed-sweep --Ds 0.5 1.0 2.0 --rs 0.1 0.25The exact local logistic reaction primitive is also available directly from Python under its original function names:
from vdm_logistic_solver import reaction_exact_step, logistic_invariant_Q
W1 = reaction_exact_step(W=0.12, r=0.15, u=0.25, dt=1.0)
Q0 = logistic_invariant_Q(W=0.12, r=0.15, u=0.25, t=0.0)The implementation is NumPy-compatible, so array-valued states can be advanced directly:
import numpy as np
from vdm_logistic_solver import reaction_exact_step
W = np.array([0.12, 0.30, 0.50])
W_next = reaction_exact_step(W, r=0.15, u=0.25, dt=0.5)The package brings together the numerical programs used for the logistic and reaction-diffusion validation work:
- exact finite-time logistic reaction update;
- logarithmic first-integral / QFUM diagnostics;
- reaction-diffusion conservation and convergence tests;
- Fisher-KPP front-speed measurement;
- front-speed parameter sweeps;
- linear-regime dispersion measurement;
- Lyapunov and numerical acceptance diagnostics;
- historical step specifications and output-path support.
The original research source files remain under reference/ and are also shipped with the installed package so the command-line instrument works from a wheel or editable installation.
Programs that use the packaged output-path adapter write to:
./outputs/
by default. Override it with:
export VDM_OUTPUT_ROOT=/path/to/resultsThe local logistic law is
dW/dt = r W - u W^2
with the exact finite-time reaction update used by the instrument. The logarithmic quantity is an invariant of the autonomous local ODE on a consistent domain/branch.
The reaction-diffusion programs are numerical validation experiments. The exact local reaction update is not a closed-form exact solution of the full spatial Fisher-KPP PDE.
The package records SHA-256 identities for the nine historical research source and step-spec files. Check the installed copies at any time with:
vdm-logistic verifyPROVENANCE.json contains the repository-level source identities.
Released under the MIT License. See LICENSE.
