API overview
The API reference is generated from the docstrings in src/ and ext/.
Pages
- Grids: momentum, pitch and radial grids, the kinetic grid, radial profiles, momentum regions.
- Physics: plasma state, Coulomb logarithm, collision frequencies, conductivity, runaway rates, constants.
- Operators: the advection–diffusion operator, Fokker–Planck coefficients, radial transport, knock-on and field–particle collisions.
- Equation system: the unknown layout, equation terms, equations and the system, Jacobians.
- Solvers and runs: linear solvers, Newton, time stepping, interval updates, checkpoints, the progress log, run settings.
- Extensions: HDF5 output and checkpoints, SciML functions, interpolated radial profiles, the linear solver of MKL PARDISO.
Each category has an overview page and subpages that group its source files. A subpage has one section per source file, with the public names first and the internal ones after them. The grouping is a table in docs/make.jl. A new source file that the table does not list appears on the subpage "Other" of its category.
Building and viewing
The build runs one Julia process and is strict: every public name needs a docstring, and every @ref link must resolve.
julia --project=docs -e 'using Pkg; Pkg.instantiate()'
julia --project=docs docs/make.jlThe site is written to docs/build/. Open docs/build/index.html in a browser, or serve it with live reload locally:
julia --project=docs -e 'using Revise, LiveServer; servedocs(include_dirs=["src", "ext"], skip_dirs=[joinpath("docs", "src", "api")], launch_browser=true)'LiveServer serves the site at http://localhost:8000. It rebuilds the site when a page in docs/src or a file in src/ or ext/ changes. Revise loads the changed docstrings into the running session. The build writes the API pages into docs/src/api/, so LiveServer skips that directory, or it would rebuild without end.