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.42.1.dev20250620-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.42.1.dev20250620-cp313-cp313-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

atlaslib_ecmwf-0.42.1.dev20250620-cp313-cp313-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

atlaslib_ecmwf-0.42.1.dev20250620-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.42.1.dev20250620-cp312-cp312-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

atlaslib_ecmwf-0.42.1.dev20250620-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.42.1.dev20250620-cp311-cp311-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

atlaslib_ecmwf-0.42.1.dev20250620-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.42.1.dev20250620-cp310-cp310-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-macosx_13_0_arm64.whl (5.6 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

atlaslib_ecmwf-0.42.1.dev20250620-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.42.1.dev20250620-cp39-cp39-macosx_13_0_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

atlaslib_ecmwf-0.42.1.dev20250620-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.42.1.dev20250620-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9cacff50b668478a5bf9ebd52ac6d5bdcfa82d70d4c404f99fc200a60cd6928e
MD5 4c9815b4af2144d0a598bb2a12bd1ccf
BLAKE2b-256 6b5981427804a767a38e5040159b66b496aec7aea8bb21a59e7c65c567f66a62

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 8e582fb28e22e8ad959828929a93236cedacf7e8ef6aad407fb81f8e28eeae59
MD5 ca5432b1ea16014d2f9290bb9dd19173
BLAKE2b-256 ea8f4b0b21e7ed540e1c45255519864cf3bbceb835b3a037c5042ffdbd12d24f

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 2855f203f7461404abe8a310965dcbecad1371ab5dd063bd3b709cc5fb027319
MD5 6b6134cf85acda2742d630cd366343d7
BLAKE2b-256 65fc83fb5dfdfaa1486fd9190398c1462a8d19f219b9b848cdcbf7592b0c855f

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0b7bcc2c0ee9276ca3fe53a02176222e2583f4a7e27201ff7719efb11de60249
MD5 66c14b7e86e103476475fb32b56fa245
BLAKE2b-256 6dfc86e98f8d2e0033041938768ff369517b2d9ad422ea2778826262a7df3da2

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 90c5442482762cf4fe6be26371b8603a6c30d5047521f42db3424c219b894f1f
MD5 700df4685023e8d3a81b39d4f6f1f51e
BLAKE2b-256 3f5c90bd9f782b55a007bd6e94aa490f87ee954f38f2eda41eae64d7a84f5d73

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 16b4996ee0fb8ca0b2408635292a0b74f36a5d7c3d9066af5a41537671d5bc4c
MD5 8ef629335e9646d6ce36a830889a6476
BLAKE2b-256 6d84347c7b174081fba5cb63ab59b23d9d52fccec54f40f2f0d2bf9a8a98a886

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a30e5ca5b076befbe90d0ae15b950c9eedd7ca881c11dd21328ffdd97bb3149d
MD5 effcc8edfe6259585d871418b33acf83
BLAKE2b-256 80b358b28433da18d8beba56370667397fc55023fa10bfc7184d7928691fc7d9

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 0cea32d39c6ff5afa8c7d4ff97538ee2180a499ff41d09fe585f5f9c5e1c6cc6
MD5 e114b80c2c6f4988d1cb74319a8690a3
BLAKE2b-256 b9c5bede915d2ebe908ada2dcc9aae994673c8d8cde45ccb1c3750297aa347f5

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f421d304a407e108fe2315d76ec881610305192be72f74eeaf19db290c09c356
MD5 24f648f3dd3d2877e839f227e06b664a
BLAKE2b-256 d38ea2b8f13a24507bb6ccce215bccbbe2adeb2897d40aff126ad33e78ec0a29

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6e28650fbc9372fa10ba0dc51473f3ff4dc6e74788f803a62f2bda2d7a72cb4
MD5 508e28cfc828abd9865bf653c594e353
BLAKE2b-256 faf1125f7ca138bd185d51257f010a38d4bddd1bcfb991eb528f5b713553c17f

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 a7504d632ac925e43ca73c0f3425763cfe63e122ea23cb7e5a015d4c57bbf93a
MD5 4348c94f041909993455f5d69115b917
BLAKE2b-256 12287ed61a354e2948c2231004ffd3587b21b2a9e6db18ce4a68b97b274bfff0

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 072cd1b1cde0d4a50265176f098cfb27fc9ce86e3981135b233cc0bee87abf3e
MD5 bfc86deacfcb333f5f1df7fd31c0b69b
BLAKE2b-256 baee1e850092af36a3ddc789d016e9ad3960ea30429ddabad3d4dc12b24bea46

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1e09a4fd4ad69602903af850856104a3229bcc98ce9c97920dabf1ede0cacb3a
MD5 dcb61a977d9c4d5142a616d3bc941213
BLAKE2b-256 f171b2f40d443b183e93f5c759c8e2ef3be99b1c50c27ae974cad6acda9119e8

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 15d992a73ab814b11be1d96ac92cb22ab17a799548ade0b4869ec4b59e9a1f3d
MD5 bb33fd1c940bda0b8e70948014310ddd
BLAKE2b-256 64e394db7552278a084da9666025328da8bf51e20e1e72c4d2d51db5d10acdc2

See more details on using hashes here.

File details

Details for the file atlaslib_ecmwf-0.42.1.dev20250620-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for atlaslib_ecmwf-0.42.1.dev20250620-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ecd4750dd27edfb2ea16a186246a7bf471936590d8bb973605e5233490f4120c
MD5 d2b80612186b8000f54de916c52fe60d
BLAKE2b-256 0032c2ed826ea91975ef3db39a3a1446e88e41c36eb74c82105c038b1909c375

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