Models
Overview
Rompy provides model-specific implementations for various ocean, wave, and hydrodynamic models. Each model implementation includes configuration classes, grid definitions, data handling, and execution backends. For basic concepts about models, see the User Guide.
Supported Models
Rompy currently supports the following models:
- SWAN Guide - Spectral Wave Nearshore model
- SCHISM Guide - Semi-implicit Cross-scale Hydroscience Integrated Modeling System
Model Architecture
Each model implementation follows a consistent architecture:
Configuration
Model-specific configuration classes that define model parameters, grid settings, and data sources.
Grid
Grid definitions that specify the model domain, resolution, and coordinate system.
Data
Data handling classes for preparing model input data from various sources.
Execution
Backend configurations for running the model in different environments (local, Docker, HPC).
Postprocessing
Classes for analyzing and visualizing model output.
Model Integration
Models integrate with Rompy's core framework through:
- Pydantic-based configuration classes for type safety
- XArray accessors for data manipulation
- Intake drivers for data catalog integration
- Cookiecutter templates for model setup
- Unified execution backends for consistent deployment
Best Practices
When working with models:
- Use Type Safety: Leverage Pydantic models for configuration validation
- Modular Design: Keep model components modular and reusable
- Documentation: Document model-specific parameters and usage
- Testing: Include comprehensive tests for model implementations
- Examples: Provide clear examples for common use cases
Extending Model Support
To add support for a new model, see the Extending Models guide which provides detailed information about creating new model implementations.
Next Steps
For further information on working with models in Rompy:
- Check the Extending Models guide to add new model support
- Follow the Progressive Tutorials for hands-on examples
- Review Configuration Deep Dive for advanced configuration techniques
- Understand the Architecture Overview for component integration
- Explore Common Workflows for practical implementation patterns