Skip to main content

"atlaslib-ecmwf"

Project description

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"
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-manylinux_2_28_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-manylinux_2_28_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-manylinux_2_28_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-manylinux_2_28_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-manylinux_2_28_x86_64.whl (9.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b1063d3c6ecbb16b95c21d1b7e3880246a1ee1023cddb6032ad731f0cada7a05
MD5 eef935f497b65409dc6967eddf8cec88
BLAKE2b-256 228919b967e3e8926424bbed901709fe92bf66ebe80ffc2957baeed350a04ff7

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 0755db901c904e15cd9733fa0f0eeec039c8dc6ab98cca445e6968df1a6c6a82
MD5 4dfc9372072d4a70a63f54c36cc537aa
BLAKE2b-256 8456647765f9d15a9c75f770d63811abebc71f523d79ccdf6988b07c05ee0654

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 bcc591c317e88c2a77fa3d269aa724444c098c2e6704b694c71d89a2ffbcbb89
MD5 c30ce55482d6a4fc8ec0a51f527bcf21
BLAKE2b-256 b4b670b4b6309ed2a96bc37d9de0d3d4c81163a7b3ec864f57323871700368ff

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cf18a75ceee4b8bf6a244c1e88d0888e57d106adc7e33d7a8f88b7af96c94fb3
MD5 b859640575d69af7fa7f8e12d7c811a2
BLAKE2b-256 01dff1fe8592cec513671a8b4b6c2ce3594dde72a592592c72e8d0569900d8f1

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 1fe2d3d7e71da05ee2b16b57d6878be680565e10867e402c17685d4f2710ff77
MD5 b05f13a423cde6d0bbe17c776ea4c88f
BLAKE2b-256 ac879fdad37cf0fe0175bd74422eae40ab6e4ac72f434c7dead610180bdcb5cc

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2e059c3e117fe975261e93f1106bee90d730c268517fc8295f9a84910b6972da
MD5 c17783904b6b2290cd0013055ee57b48
BLAKE2b-256 4b120306ea6e9db88effe52a8a50587daff27c8625e44496140f0b54c7fa2df1

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4da53604410fe98f8982ecae733fe8766e3bf33dc467e02e5ab740a6576b9fb9
MD5 68b3b1d6a8cfd06c34945fffe766e1ce
BLAKE2b-256 570d2d3d9bdd0e701d5248224c0fb112132fcee760de26672f60cb1b24f68b34

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 9fc330cd53ca5e9efa5d8c4ab8a5bbaf9e8723a317ec883b6c82503107c6995a
MD5 e995b4657c91ed29c907c188be18c294
BLAKE2b-256 ba486370d3a65cb58509c640d2e8b4e273b307bfda0e6c9ccb220cd8fd473a57

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ad563ca5bf42aa7a0bc9e14ab100069885340c3e779d4e30fb47b2ced2981cde
MD5 0cf8159b0310664e31a5e7e389de5273
BLAKE2b-256 689a99e29b5308fa829ef4a3fbacef55ee60b8fd110fa24800c3d449457b8d0a

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1309759766735a5048ba2ce0a07a65aeea6b9ee5e1168f23276b10fdca318ad8
MD5 ab31ef2e3882f5ee3ee6766ea291c50e
BLAKE2b-256 10156ec523a9b67ab4df2b5dd718722fcc82d384aa2cc5ac0db11ca47cfc1501

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5822822ecaf10b3f5c939f3f8877691f86ab012f6709f927ccd6c5263c056f8e
MD5 2af632f5298711a384f34661af5fd291
BLAKE2b-256 9963759b3e2bcd940dceaf324be52e7a9f7912516b84f950359516d0f260ef9b

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 4dd5d0ab84b5e61aede6e6df7f7f1a514e36811aec4685a56fff84378208bf6d
MD5 c01867d3c0c2eac7acd1ff9233706a3b
BLAKE2b-256 11c7aa2a12bcd1818729433bdb35b51af8bcfdab99c6124fe7be7d151bf7c6c1

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f58aa04b01ca914ead40a70ca8980e303fd06ac54099ed8258155fc7c01a6c9a
MD5 716e91e32d8906ff4f7d08953f7690a7
BLAKE2b-256 1ed980703b3b62226d6ea9d46991df12c08d9cc65181d1011322ed43b07b6886

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 4be25b736974bac692c5b012fc344359e4f7e36119b9041c17afc4634c98d634
MD5 cd1bc28419f3de9fc7db009858c5c5ca
BLAKE2b-256 55bb5c6f2da1771c12b3df488334712f025210e9c5eeb5040248f9d32d893ca5

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.43.1.dev20250627-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a267c537cf8a9f31ebc56906f0714139f90d3225100deddbfcd997eb32be599c
MD5 9e690ba27d39f9b03fd946f9919f0389
BLAKE2b-256 55e4fa627a16af0eaf0f82e592bc57c35e4dec8bce5099b14743e978b1f363d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page