test_stochasticIntegratorsJulia
Numerical-equivalence tests for the native Basilisk stochastic integrators against StochasticDiffEq.jl (SciML).
The reference trajectories in juliaReference/reference_trajectories.json were
produced by juliaReference/generate_reference.jl using StochasticDiffEq.jl. That
generator draws a fixed sequence of Wiener increments (dW, and for the Roessler methods a
second increment dZ) and solves each toy SDE with a prescribed NoiseGrid so the increments
are deterministic inputs rather than RNG outputs. It covers the full range of noise
structures: scalar, diagonal, additive, non-diagonal (coupled), and time-dependent
coefficients.
Here we replay the identical increments through the corresponding Basilisk integrator
(via a PrescribedGaussianNoiseGenerator) and assert the resulting trajectory matches
the reference to floating-point tolerance. Because the integrators consume the same
increments, agreement shows the Basilisk implementation reproduces the reference algorithm
exactly (hence also its convergence order).
The SDE for each case is not re-typed here: the generator serializes a drift/diffusion
coefficient spec into the JSON, and referenceSDE rebuilds f and g from it, so the SDE
is defined once (in the generator).
The Julia reference is generated offline and committed; it is not run in CI. See
juliaReference/README.md for how to regenerate it.