Skip to content

Features

Welcome to the Particula Features documentation! This section provides comprehensive guides for the major capabilities and systems within Particula. Each feature guide explains the design patterns, available APIs, and best practices for working with that component.

Feature Guides

Design Patterns

All feature systems in Particula follow the Strategy-Builder-Factory pattern:

  • Strategy: Abstract base classes defining the interface for each physics domain
  • Builder: Unit-aware configuration with validation for constructing strategies
  • Factory: Dynamic strategy selection by name for runtime flexibility

This pattern provides:

  • Consistent APIs across different physics modules
  • Easy extensibility for new models
  • Validated configuration with automatic unit conversion
  • Interchangeable implementations for comparison studies

Getting Started

  1. Choose the feature guide for your use case
  2. Review the available strategies and their parameters
  3. Use builders for validated configuration or factories for dynamic selection
  4. Integrate with Particula's dynamics workflow using Runnable objects