Skip to content

πŸ“š 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