Getting started¶
This section is the user guide for adc_cpp: it starts from zero (what it is,
how to build it) and goes all the way to a complete diocotron simulation,
reproducible end to end. It assumes no knowledge of the C++ core or the DSL.
The recommended path, in order:
Overview: what
adc_cppis, its honest scope, its layers.Installation: CMake build of the core, of the Python module, and the pitfall of the interpreter (the compiled
.sois tied to a Python version).Quickstart: the shortest path from a built module to a running case.
First run: the smallest Python example, copyable as is.
Repository layout:
adc_cpp(the library, agnostic) vsadc_cases(the named scenarios: diocotron, euler_poisson…).Checking your backend: knowing which parallel backend is running (serial by default; Kokkos / MPI are build configs; GPU = ROMEO only).
Tutorial A->Z: the canonical tutorial in 18 steps, from
git cloneto the uniform/AMR comparison, with generated figures and GIF.Windows (WSL2): a from-scratch guide for a Windows 11 PC, from
wsl --installto anadc_casescase, with the differences from the Linux path.Native Windows: status and roadmap of the native port (without WSL2); v1/v2 scope and actual state.
For the design reference (contributors), each page points to the docs/*.md documents
of the repository; this section summarizes them for a new user without duplicating them.