Batch solving

cubie.batchsolving

The Solver interface is the main entry point. It brings together batch grids, array managers, GPU program builds, and system details into a coordinated integration pipeline, while solve_ivp() offers a shortcut for common workflows. Supporting modules prepare the GPU programs, describe solver outputs, and provide data checks used by attrs-based containers.

Subpackages

Core API

  • Solver – high-level manager that drives CUDA kernel launches.

  • solve_ivp – convenience wrapper for single-run solver configuration.

  • SolveResult – captures state, summaries, and diagnostic metadata.

  • SolveSpec – checked configuration describing a solver invocation.

Supporting infrastructure

Input checks

Dependencies

  • Batch kernel compilation extends cubie.CUDAFactory and relies on cubie.integrators.algorithms, cubie.integrators.step_control, and cubie.integrators.array_interpolator for loop callables and driver interpolation.

  • Array managers size buffers with cubie.outputhandling.output_sizes and allocate memory through cubie.memory managers.

  • Solver results surface summary metrics registered via cubie.outputhandling.summarymetrics and adopt data checks from cubie.batchsolving._utils.