atmorep-itwinai-plugin

itwinai plugin for AtmoRep model

https://github.com/matbun/atmorep-itwinai-plugin

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.4%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

itwinai plugin for AtmoRep model

Basic Info
  • Host: GitHub
  • Owner: matbun
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 861 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created about 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation Codeowners Authors

README.md

AtmoRep itwinai plugin

GitHub Super-Linter GitHub Super-Linter SQAaaS source code

This repository is an extended version of AtmoRep, originally developed by the AtmoRep team. This version integrates AtmoRep into the itwinai framework, enhancing its usability within digital twin applications.

Original Repository

atmorep

How to use this plugin

First of all, install the plugin.

[!NOTE] If you run on an HPC system remember to load the correct modules before. activate_env.sh provides an example for JSC.

bash pip install "atmorep-itwinai-plugin @ git+https://github.com/matbun/atmorep-itwinai-plugin"

Now you can import the AtmoRep trainer in your code using

```python from itwinai.plugins.atmorep.trainer import AtmoRepTrainer

my_trainer = AtmoRepTrainer(...) ```

Alternatively, you can launch training using the configuration file in this repository:

```bash itwinai exec-pipeline --config-name config.yaml

If you want to dynamically override some fields in the config file

itwinai exec-pipeline --config-name config.yaml \ epochs=2 \ trainingpipeline.steps.0.config.pathmodels my_models ```

[!NOTE] Consider that this model needs to be distributed on 4 GPUs, as it implements model-parallel distributed training. It can scale to multiple nodes and the SLURM jobs cript slurm.jsc.sh provides an example on how to launch distributed training on HPC. You can adjust the number of nodes in that file.

Docker containers

This repository provides two examples of Dockerfiles, one for JupyterLab images and the other for simple Docker containers. Both Dockerfiles are based on the itwinai container image, which already provides most of the dependencies.

Owner

  • Name: Matteo Bunino
  • Login: matbun
  • Kind: user

Fellow @ CERN Openlab. Former data Science student @ {EURECOM, Polytechnic University of Turin}

Citation (CITATION.cff)

cff-version: 1.2.0
title: "AtmoRep itwinai plugin"
message: >-
  If you use this software, please cite both the original AtmoRep project, 
  the itwinai framework, and this modified version.
type: software
authors:
  # Original AtmoRep Authors
  - given-names: Christian
    family-names: Lessig
    email: christian.lessig@ecmwf.int
    affiliation: European Centre for Medium-Range Weather Forecasts (ECMWF)
  - given-names: Ilaria
    family-names: Luise
    email: ilaria.luise@cern.ch
    affiliation: European Organization for Nuclear Research (CERN)
  - given-names: Martin
    family-names: Schultz
    email: m.schultz@fz-juelich.de
    orcid: 'https://orcid.org/0000-0003-3455-774X'
    affiliation: Forschungszentrum Jülich (FZJ)
  - given-names: Michael
    family-names: Langguth
    email: m.langguth@fz-juelich.de
    orcid: 'https://orcid.org/0000-0003-3354-5333'
    affiliation: Forschungszentrum Jülich (FZJ)
  - given-names: Bing
    family-names: Gong
    affiliation: Forschungszentrum Jülich (FZJ)
  - given-names: Scarlet
    family-names: Stadler
    affiliation: Forschungszentrum Jülich (FZJ)
  
  # New Contributors to the Plugin
  - given-names: Matteo
    family-names: Bunino
    email: "matteo.bunino@cern.ch"
    affiliation: CERN

identifiers:
  - type: url
    value: 'https://arxiv.org/abs/2308.13280'
    description: corresponding Preprint

repository-code: 'https://github.com/matbun/atmorep-itwinai-plugin'
url: 'https://github.com/matbun/atmorep-itwinai-plugin'
abstract: >-
  This repository is an extended version of AtmoRep, originally developed 
  by the AtmoRep team. This version integrates AtmoRep into the itwinai 
  as a plugin, enhancing its usability within digital twin applications.

  AtmoRep is a novel, task-independent stochastic computer 
  model of atmospheric dynamics that can provide skillful 
  results for a wide range of applications. AtmoRep uses 
  large-scale representation learning from artificial 
  intelligence to determine a general description of the 
  highly complex, stochastic dynamics of the atmosphere 
  from the best available estimate of the system's historical 
  trajectory as constrained by observations. This is enabled 
  by a novel self-supervised learning objective and a unique 
  ensemble that samples from the stochastic model with a 
  variability informed by the one in the historical record. 
  Our work establishes that large-scale neural networks can
  provide skillful, task-independent models of atmospheric
  dynamics. With this, they provide a novel means to make
  the large record of atmospheric observations accessible
  for applications and for scientific inquiry, complementing
  existing simulations based on first principles.
license: Apache-2.0
# commit: your_commit_hash_here
# version: your_version_here
# date-released: '2025-XX-XX'

references:
  - type: software
    title: "AtmoRep (Original Version)"
    authors:
      - name: "Christian Lessig"
      - name: "Ilaria Luise"
      - name: "Martin Schultz"
      - name: "Michael Langguth"
    version: "2.0 (preprint)"
    url: "https://github.com/clessig/atmorep"
    license: "MIT"
  
  - type: software
    title: "itwinai"
    authors:
      - name: "Matteo Bunino"
    url: "https://github.com/interTwin-eu/itwinai"
    license: "Apache-2.0"

GitHub Events

Total
  • Release event: 1
  • Delete event: 1
  • Member event: 1
  • Push event: 15
  • Pull request event: 4
  • Create event: 6
Last Year
  • Release event: 1
  • Delete event: 1
  • Member event: 1
  • Push event: 15
  • Pull request event: 4
  • Create event: 6

Dependencies

.github/workflows/check-links.yml actions
  • actions/checkout v4 composite
  • gaurav-nelson/github-action-markdown-link-check v1 composite
.github/workflows/lint.yml actions
  • actions/checkout v4 composite
  • github/super-linter/slim v7 composite
.github/workflows/pytest.yaml actions
  • actions/checkout v4 composite
.github/workflows/sqaaas.yaml actions
  • eosc-synergy/sqaaas-assessment-action v2 composite
  • eosc-synergy/sqaaas-step-action v1 composite
Dockerfile docker
  • ghcr.io/intertwin-eu/itwinai torch-slim-latest build
pyproject.toml pypi
  • itwinai [torch]
  • pytest >=8.3.4
uv.lock pypi
  • 158 dependencies