Project Structure

The RTnn package is organized as follows:

rtnn/
├── src/rtnn/                 # Main package
│   ├── __init__.py
│   ├── __main__.py
│   ├── version.py
│   ├── dataset.py            # DataPreprocessor class
│   ├── evaluater.py          # Metrics and loss functions
│   ├── diagnostics.py        # Visualization tools
│   ├── logger.py             # Rich logging
│   ├── main.py               # Main training script
│   ├── model_loader.py       # Model factory
│   ├── model_utils.py        # Model utilities
│   ├── utils.py              # File and general utilities
│   ├── stats.py              # Statistical computations
│   └── models/               # Model architectures
│       ├── __init__.py
│       ├── rnn.py            # LSTM and GRU
│       ├── fcn.py            # Fully Connected Network
│       ├── Transformer.py    # Transformer encoder
│       ├── UNet1D.py         # 1D U-Net
│       └── DimChangeModule.py
├── tests/                    # Unit tests
│   ├── test_rnn.py
│   ├── test_fcn.py
│   ├── test_transformer.py
│   ├── test_dataset.py
│   ├── test_evaluater.py
│   ├── test_model_loader.py
│   └── test_runner.py
├── docs/                     # Documentation
│   ├── source/
│   └── build/
├── .github/workflows/        # CI/CD pipelines
│   ├── ci.yaml
│   └── docs.yml
├── pyproject.toml            # Package configuration
├── README.rst                # Project README
└── LICENSE                   # CC BY-NC-SA 4.0

Module Descriptions

Module

Description

dataset.py

DataPreprocessor for loading and preprocessing NetCDF files

evaluater.py

Loss functions and evaluation metrics

diagnostics.py

Plotting and visualization utilities

logger.py

Rich console and file logging

main.py

Main training pipeline entry point

model_loader.py

Factory function for model instantiation

model_utils.py

Model inspection and checkpoint management

utils.py

File utilities and EasyDict class

stats.py

Statistical computation for normalization

models/

Neural network architectures