Skip to content

Code Concepts

This section is the conceptual overview of the Particula codebase—what design ideas we follow, why we follow them, and where you can dig deeper.

If something feels unclear, ask and contribute to an issue or PR—improving the docs is a meaningful contribution.

Why read this?

  • You want to extend Particula without breaking existing work.
  • You need to audit a calculation and trace where a number comes from.
  • You plan to prototype a new physical model and wonder which files to touch.

Quick tour

Topic Start here One–line takeaway
Philosophy WARMED principle Code must be Writable, Agreeable, Readable, Modifiable, Executable, Debuggable.
Dual Paradigm Design Patterns Pick functions for notebooks, builders + strategies for experiments.
OO cheat‑sheet Object‑Oriented Patterns Strategy, Builder, Factory … explained with aerosol examples.

Naming rules (TL;DR)

  • Functions that return a valueget_<quantity>()
  • Classes that encapsulate a pattern<Descriptor><PatternName>

Keeping to these names makes grep, IDE auto‑completion, and LLM help far more effective for beginners and experts alike.