Skip to main content

Atlas

atlas release version build codecov

Project home: https://confluence.ecmwf.int/display/ATLAS
Contact: Willem Deconinck (willem.deconinck@ecmwf.int)
Publication:

Deconinck et al, 2017 --- Atlas: A library for numerical weather prediction and climate modelling

Atlas is a ECMWF library for parallel data-structures supporting unstructured grids and function spaces, with the aim to investigate alternative more scalable dynamical core options for Earth System models, and to support modern interpolation and product generation software

Atlas is predominantly C++ code, with main features available to Fortran codes through a F2003 interface. It requires some flavour of Unix (such as Linux). It is known to run on a number of systems, some of which are directly supported by ECMWF.

Requirements

Tested compilers include:

  • GCC 4.9.1, 5.3.0, 6.3.0, 7.2.0
  • Intel 15.0.2, 16.0.3, 17, 18
  • CCE 8.4.5, 8.5.8, 8.6.2
  • PGI-Fortran 17.7 combined with GNU-C/C++ 6.3
  • PGI 17.7

Known compilers to fail include:

  • PGI-Fortran 17.10, 18.1

Required dependencies:

  • CMake --- For use and installation see http://www.cmake.org/
  • ecbuild --- ECMWF library of CMake macros
  • eckit (with MPI support) --- C++ support library

Recommended dependencies:

  • fckit --- For enabling Fortran interfaces
  • python (only when Fortran bindings are required)

Optional dependencies:

  • gridtools-storage --- For GPU interoperability
  • transi --- For enabling IFS spherical harmonics transforms ( not open-source )
  • CGAL --- For enabling Delaunay triangulation of unstructured grids
  • Eigen3 -- For certain linear algebra operations
  • FFTW -- For enabling inverse spherical harmonics transforms (TransLocal)

Installation

Atlas employs an out-of-source build/install based on CMake.

Make sure ecbuild, eckit and fckit are installed and the ecbuild executable script is found ( which ecbuild ). Following environment variables help the build system to detect the right dependencies:

# For finding eckit
ECKIT_PATH               # Path to eckit prefix

# For finding fckit
FCKIT_PATH               # Path to fckit prefix

Other environment variables that could be required for optional features:

# For finding gridtools-storage
GRIDTOOLS_STORAGE_PATH   # Path to gridtools-storage prefix

# For finding transi
TRANSI_PATH              # Path to transi prefix

# For finding CGAL
BOOST_ROOT               # Path to Boost prefix
CGAL_DIR                 # Path to directory containing CGALConfig.cmake
Eigen3_DIR               # Path to directory containing Eigen3Config.cmake
FFTW_PATH                # Path to FFTW prefix

Now proceed with installation as follows

# Environment --- Edit as needed
ATLAS_SRC=$(pwd)
ATLAS_BUILD=build
ATLAS_INSTALL=$HOME/local

# 1. Create the build directory:
mkdir $ATLAS_BUILD
cd $ATLAS_BUILD

# 2. Run CMake
ecbuild --prefix=$ATLAS_INSTALL -- $ATLAS_SRC

# 3. Compile / Install
make -j10
make install

# 4. Check installation
$ATLAS_INSTALL/bin/atlas --info

Extra flags maybe added to step 2 to fine-tune configuration.

  • --build=DEBUG|RELEASE|BIT --- Optimisation level
    • DEBUG: No optimisation (-O0 -g)
    • BIT: Maximum optimisation while remaning bit-reproducible (-O2 -g)
    • RELEASE: Maximum optimisation (-O3)
  • -DENABLE_OMP=OFF --- Disable OpenMP
  • -DENABLE_FORTRAN=OFF --- Disable Compilation of Fortran bindings

Note: By default compilation is done using shared libraries. Some systems have linking problems with static libraries that have not been compiled with -fPIC. In this case, also compile atlas using static linking, by adding to step 2: --static

Runtime Configuration

Atlas behaviour can be configured through some environment variables with defaults marked in square brackets

  • ATLAS_INFO=<0|[1]> --- Control printing of Atlas standard information
  • ATLAS_DEBUG=<[0]|1> --- Control printing of Atlas debug information
  • ATLAS_TRACE=<[0]|1> --- Control printing of Atlas traces (includes timings)

Contributing

Contributions to Atlas are welcome. In order to do so, please open an issue where a feature request or bug can be discussed. Then issue a pull request with your contribution. Pull requests must be issued against the develop branch.

Citing Atlas

If you publish work which mentions Atlas, or Atlas has been useful in your research, please cite the following paper:

@article{DECONINCK2017188,
title = "Atlas : A library for numerical weather prediction and climate modelling",
journal = "Computer Physics Communications",
volume = "220",
pages = "188 - 204",
year = "2017",
issn = "0010-4655",
doi = "https://doi.org/10.1016/j.cpc.2017.07.006",
url = "http://www.sciencedirect.com/science/article/pii/S0010465517302138",
author = "Willem Deconinck and Peter Bauer and Michail Diamantakis and Mats Hamrud and Christian Kühnlein and Pedro Maciel and Gianmarco Mengaldo and Tiago Quintino and Baudouin Raoult and Piotr K. Smolarkiewicz and Nils P. Wedi",
keywords = "Numerical weather prediction, Climate, Earth system, High performance computing, Meteorology, Flexible mesh data structure"
}

Release files for atlaslib-ecmwf 0.46.0.29

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for atlaslib-ecmwf 0.46.0.29
File
atlaslib_ecmwf-0.46.0.29-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
atlaslib_ecmwf-0.46.0.29-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
atlaslib_ecmwf-0.46.0.29-cp311-cp311-macosx_15_0_arm64.whl CPython 3.11 CPython 3.11 macOS 15.0+ ARM64 Details

Total release size: 93.1 MB

Release files / atlaslib_ecmwf-0.46.0.29-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp314-cp314-manylinux_2_28_x86_64.whl
Size 6.4 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6b14409861bd5760af9128bc0707448f8a37055d6483c27c43dd9b51b584f19f
BLAKE2b-256 checksum
How to use checksums
10ba59c04a6470d84d7e60643e243eabfa60f7c893259b120b83991dfca77cd9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / atlaslib_ecmwf-0.46.0.29-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp314-cp314-manylinux_2_28_aarch64.whl
Size 6.1 MB
Tags CPython 3.14 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
b8a2fdca574285e06cfc31ad394c6911a6d529bcefa9dc264b739384d4dd2464
BLAKE2b-256 checksum
How to use checksums
460c22eda47559f1011569a6ff68a0c9b6fe47c3c3a8a52504630a682e757ab2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / atlaslib_ecmwf-0.46.0.29-cp314-cp314-macosx_15_0_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp314-cp314-macosx_15_0_x86_64.whl
Size 5.6 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
ce679937482e99ec82d447f44eb8c74923f74e66882cde45e045ed3e69215800
BLAKE2b-256 checksum
How to use checksums
cc455f937810df01734c3b30bfeb839695d58d6eca6b81e30f4c3d82518c52e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.14.5

Release files / atlaslib_ecmwf-0.46.0.29-cp314-cp314-macosx_15_0_arm64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp314-cp314-macosx_15_0_arm64.whl
Size 5.1 MB
Tags CPython 3.14 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
4cecb42ef3dcbaa7c01b7bca69fcf342c4ada84e2de3bc839c2ec4ee82f9baa9
BLAKE2b-256 checksum
How to use checksums
8342f90946ff5d2bdb027aeec3ec9b3e4c701975a54ede1d9c983c8c6b72e290
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.14.7

Release files / atlaslib_ecmwf-0.46.0.29-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp313-cp313-manylinux_2_28_x86_64.whl
Size 6.4 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
056f4a215aaee86324c56912b1915037cd09d9c67bfdf7e22ba27e80fcd492db
BLAKE2b-256 checksum
How to use checksums
60450b18ff67dbdb603d7fbfc8cbe274643262f01ad4ed8aaae253790cd870bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / atlaslib_ecmwf-0.46.0.29-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp313-cp313-manylinux_2_28_aarch64.whl
Size 6.1 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a4241538abd8d224dd5427f17c91917b6af588fe0db58a5241cc4ff9d72b93ee
BLAKE2b-256 checksum
How to use checksums
9edb75c90545c3a5c062f97a951a25b421cf45c335a96950b75e066e8231ce9c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / atlaslib_ecmwf-0.46.0.29-cp313-cp313-macosx_15_0_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp313-cp313-macosx_15_0_x86_64.whl
Size 5.7 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
90c29220d65a1a70d7c54dc98d517f33588d4801d5181f14c675258532f3efec
BLAKE2b-256 checksum
How to use checksums
a59f779d3f06cf9fce9de60c53329f3a1f2030279f4a711b7f686969aa4a0c8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.2

Release files / atlaslib_ecmwf-0.46.0.29-cp313-cp313-macosx_15_0_arm64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp313-cp313-macosx_15_0_arm64.whl
Size 5.1 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
f7688f3c61ae29dcd8158e990b0d69d455dcf815e1bf0c05e9a69ceb0634134b
BLAKE2b-256 checksum
How to use checksums
04f5193b3077e240750ef1a250c6dec30ba553ffc8da36500a31e44319e6fcd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.15

Release files / atlaslib_ecmwf-0.46.0.29-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp312-cp312-manylinux_2_28_x86_64.whl
Size 6.4 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
410286a3211d338fb912118b1a37cf38925a92f6a3a96f6400ba2ad50591663b
BLAKE2b-256 checksum
How to use checksums
688226dcb8b44f236ef4cf5638ffdb7c1e599b6147d2f01f0d3854e41ecb0db3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.12

Release files / atlaslib_ecmwf-0.46.0.29-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp312-cp312-manylinux_2_28_aarch64.whl
Size 6.1 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0380fdd734d7c09f9d1d0fd52c92123fccb63330f09bcb70b49859f5d74c195a
BLAKE2b-256 checksum
How to use checksums
84b2c3510d682a7cf2c27f6adbfe35b3d3b4219ef8234cd8063ff36058937088
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.12

Release files / atlaslib_ecmwf-0.46.0.29-cp312-cp312-macosx_15_0_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp312-cp312-macosx_15_0_x86_64.whl
Size 5.7 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
01b8bae634fd10ee05256d788fca022c07c36ae1f7acc7e48470f8d5e3e48e16
BLAKE2b-256 checksum
How to use checksums
a9fe33ddccdebade31fe12ec340eadc8e63559952153786bd8579aa247570e94
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.9

Release files / atlaslib_ecmwf-0.46.0.29-cp312-cp312-macosx_15_0_arm64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp312-cp312-macosx_15_0_arm64.whl
Size 5.2 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
d9825c7112df3a1d64b22c871a9470ed7112dc6b5ee36fc90b405cd146f5d4a1
BLAKE2b-256 checksum
How to use checksums
e2709748bd5713427223ce3846b02c985462760c89479238b4e455001cd9a8bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.14

Release files / atlaslib_ecmwf-0.46.0.29-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp311-cp311-manylinux_2_28_x86_64.whl
Size 6.4 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
a45cdef9d1a8310e5e2d6822b680b8f51a284d166241e8670241ef82525c8604
BLAKE2b-256 checksum
How to use checksums
e31734875bdd742988fb357863bf88d94389fba8d19c50361ef8077dfa82e420
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.14

Release files / atlaslib_ecmwf-0.46.0.29-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp311-cp311-manylinux_2_28_aarch64.whl
Size 6.1 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
fab281c001a0621714269aa9d2e88f5b69b0240b8974f7e2a593ad858122d6b8
BLAKE2b-256 checksum
How to use checksums
52fe05c5d81142cbb69d5802e1528c56bbbc7f037d0ae49a56c8205e4c5d13fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.14

Release files / atlaslib_ecmwf-0.46.0.29-cp311-cp311-macosx_15_0_x86_64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp311-cp311-macosx_15_0_x86_64.whl
Size 5.6 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
b0661f19bb206bf81254014e627222bc9b0f14231abf656eedf8f9eaf166965f
BLAKE2b-256 checksum
How to use checksums
a5cc9b1d3b976fd30261e9554cafcf511fe4d526bb636266c736ee14109f5304
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.11

Release files / atlaslib_ecmwf-0.46.0.29-cp311-cp311-macosx_15_0_arm64.whl

Download URL atlaslib_ecmwf-0.46.0.29-cp311-cp311-macosx_15_0_arm64.whl
Size 5.2 MB
Tags CPython 3.11 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
2d4a303ec927f6951d23777a63c673c846f6692e6e31f5e0ccf32e5ba41b97aa
BLAKE2b-256 checksum
How to use checksums
201cb410f8f659468dff53399640b35139c294980b415bc2afba60afca7007dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.16
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page