π API Overview¶
The node_fdm package is designed with modularity in mind. It separates data handling, physical/neural architectures, and the training/inference engines into distinct namespaces.
πΊοΈ Module Map¶
Here is a high-level view of how the sub-packages interact to form a complete pipeline:
graph LR
%% Data Flow
Data[node_fdm.data] --> Trainer
Data --> Predictor
%% Logic Flow
Arch[node_fdm.architectures] -->|Defines| Model[node_fdm.models]
%% Execution Flow
Model -->|Instantiated by| Trainer[node_fdm.ode_trainer]
Model -->|Used by| Predictor[node_fdm.predictor]
%% Styling
classDef package fill:#e1f5fe,stroke:#01579b,stroke-width:2px;
class Data,Arch,Model,Trainer,Predictor package;
π¦ Core Namespaces¶
| Module | Description | Key Classes |
|---|---|---|
node_fdm.ode_trainer |
The Training Engine. Handles the training loop, validation, and PyTorch Lightning integration. |
ODETrainer |
node_fdm.predictor |
The Inference Engine. Wraps trained models to perform trajectory rollouts and simulations. |
NodeFDMPredictor |
node_fdm.data |
Data Pipeline. Tools for dataset construction, loading, and batching. |
SeqDataset, FlightProcessor |
node_fdm.architectures |
The Registry. Contains the built-in definitions ( opensky_2025, qar) and the mapping logic. |
mapping.py, columns.py |
node_fdm.models |
Model Wrappers. The underlying PyTorch modules and ODE integration utilities. |
StructuredLayer, PhysicsLayer |