RTnn
RTnn (Radiative Transfer Neural Networks) is a PyTorch-based framework designed to emulate radiative transfer processes in climate models, with a primary focus on Land Surface Models (LSM). It provides efficient neural network surrogates that can replace expensive physical radiative transfer calculations while maintaining accuracy.
GitHub Repository: https://github.com/kardaneh/RTNN
Key Features:
Multiple neural architectures: LSTM, GRU, Transformer, and FCN
Climate data support: Native NetCDF4 handling with multi-year and multi-processor data
GPU acceleration: CUDA support with multi-GPU training capabilities
Comprehensive evaluation: Built-in metrics (NMAE, NMSE, R²) and visualization tools
Flexible preprocessing: Multiple normalization schemes (minmax, standard, robust, log1p, sqrt)
Command-line interface: Easy training and inference without coding
Applications:
Emulating canopy radiative transfer in vegetation models
Accelerating climate model simulations
Data assimilation and uncertainty quantification
Sensitivity analysis of radiative transfer parameters
Performance:
Up to YYYx faster than physical RT models
Minimal accuracy loss (typically >0.95 R²)
Scalable to large datasets with distributed training
Getting Started
User Guide
API Reference
Developer Guide
- Project Structure
- Testing Philosophy
- Pre-Push Workflow
- Why This Workflow Matters
- Prerequisites
- 1. Fetch Latest Changes From Remote
- 2. Check Branch Status
- 3. Rebase Onto Latest Remote Branch
- Conflict Resolution Guide
- Step 1 — Identify Conflicted Files
- Step 2 — Examine the Conflict
- Step 3 — Resolve the Conflict
- Step 4 — Mark as Resolved
- Step 5 — Continue the Rebase
- Abort Rebase (Emergency Option)
- 4. Standardize Code with Pre-commit Hooks
- 5. Run the Test Suite
- 6. Commit Changes (If Needed)
- 7. Push Your Changes
- Quick Reference: Daily Workflow
- Common Pitfalls to Avoid
- Important Rules Summary