PICurv 0.1.0
A Parallel Particle-In-Cell Solver for Curvilinear LES
Loading...
Searching...
No Matches
Capabilities Summary

This page summarizes current capabilities from YAML + pic.flow without editing C source. It is organized by workflow stage rather than just a feature bullet list.

1. Input and Grid Capabilities

PICurv currently supports three grid ingestion modes:

  • programmatic_c: C-side structured grid generation,
  • file: external .picgrid read path with scaling/validation,
  • grid_gen: pre-run Python generator orchestration.

Domain controls include:

  • single- and multi-block support,
  • per-direction periodicity,
  • optional DMDA partition hints (da_processors_x/y/z).

2. Physics and Model Selection

Supported high-level operation modes:

  • solve from numerically evolved Eulerian fields,
  • load/restart from prior field outputs,
  • analytical Eulerian field modes (TGV3D, ZERO_FLOW).

Particle controls include:

  • particle count,
  • initialization modes (Surface, Volume, PointSource, SurfaceEdges),
  • restart modes (init, load),
  • scalar micromixing update path (IEM-style Psi model).

3. Numerical Solver Stack

Momentum:

  • named momentum strategy selection,
  • active implementations: explicit RK and dual-time Picard RK4,
  • tunable tolerances and pseudo-CFL controls.

Pressure:

  • multigrid Poisson workflow,
  • level/sweep/semi-coarsening controls,
  • PETSc passthrough flags for advanced tuning.

See method details in Methods and Models Overview.

5. boundary_conditions

Boundary capabilities include validated type-handler pairings across inlet/outlet/wall/periodic classes. Runtime controls include:

  • output/restart/log directory selection,
  • function-level logging allowlists,
  • profiling critical function lists,
  • monitor verbosity and cadence controls.

4. Post-Processing Recipes

Pipeline capabilities include:

  • Eulerian transforms (dimensionalization, nodal averaging, Q-criterion, normalization),
  • Lagrangian particle tasks,
  • statistics reduction pipeline (currently MSD family),
  • configurable input extensions and output field selection.

6. Cluster and Study Orchestration

Single-run cluster flow (run --cluster ...):

  • scheduler script generation,
  • optional submission,
  • solver/post dependency chaining,
  • run manifests.

Study flow (sweep):

  • parameter matrix expansion,
  • array script generation,
  • metric aggregation and optional plots,
  • study manifest and reproducible directory structure.

7. Extensibility Status

Current extension pathways are documented and active for:

  • YAML contract extension,
  • ingestion mapping updates,
  • workflow orchestration growth,
  • method-level and model-level solver extension.

Reference pages:

9. Next Steps

  1. Code Architecture
  2. Methods and Models Overview
  3. Momentum Solver Implementations
  4. Particle Model and Coupling Overview