Skip to content

Releases: ecmwf/atlas

0.37.0 - 2024-04-09

09 Apr 14:56
Compare
Choose a tag to compare

Added

  • Add SphericalVector interpolation method using parallel transport (#163)
  • Added arrayForEachDim method

Fixed

  • Bugfix for regional grids with ny > nx
  • Fix build for configuration setting ATLAS_BITS_LOCAL=64

Changed

  • Use new LocalConfiguration baseclass functions in util::Config and util::Metadata instead of eckit::Value backdoor
  • atlas_io is an adaptor library when eckit_codec is available (#181)

0.36.0 - 2023-12-11

11 Dec 12:24
Compare
Choose a tag to compare

Added

  • Add TriangularMeshBuilder with Fortran API, so far for serial meshes only
  • Add Fortran API for CellCollumns functionspace
  • Add EqualAreaPartitioner which is geometry based rather than loadbalanced like EqualRegionsPartitioner

Fixed

  • Compilation with Intel LLVM compiler
  • Fix 180 degrees phase shift error in MDPI_gulfstream function

Changed

  • Update install scripts
  • Preparation for using eckit::codec as backend for atlas_io

0.35.1 - 2023-10-24

24 Oct 20:16
Compare
Choose a tag to compare

Added

  • Don't output with output::Gmsh the triangle elements with wrong orientation when coordinates are "lonlat"
  • Add control to skip Gmsh-output of triangles with too large edge length ratio
  • Configurable geometry in KDTree
  • Use configurable KDTree geometry in PointCloud
  • atlas-grid-points executable to list grid points
  • Allow constructor of atlas::io::ArrayShape with different integer types
  • Support atlas_io with vector<std::int64_t>

Fixed

  • Control FPE in StructuredColumns::checksum to avoid overflow and invalid in unimportant halo regions
  • Fixes to MeshBuilder validate_mesh_vs_grid

Changed

  • Use search radius in FiniteElement interpolation when mesh defines metadata to do so

0.35.0 - 2023-02-10

05 Oct 11:55
Compare
Choose a tag to compare

Added

  • Add accessors for the GridBox class (MIR-632)
  • Add FunctionSpace::partition() field
  • Add configurable MPI communicator to data structures (#131)
  • Add single precision support for fvm::Nabla
  • Implement PointCloud parallel construction with halo_radius

Fixed

  • Fix StructuredMeshGenerator for Gaussian grids that don't start at 0 degrees (ATLAS-375)
  • Remove functionspace::Spectral via Trans initialisation (fixes #153)
  • Enable MeshBuilder to set up the Grid (#152)
  • Fix use of cmake option ATLAS_ENABLE_TRANS as in a bundle

Changed

  • Cleanup long-standing temporary element types. API change but with deprecated old API
  • Deprecated rename Mesh::nb_partitions -> Mesh::nb_parts
  • Implement Delaunay triangulation using Qhull instead of CGAL but CGAL can still be enabled instead for now

0.34.0 - 2023-07-10

05 Oct 11:54
Compare
Choose a tag to compare

Added

  • Fieldset::metadata (#126)
  • Fieldset::adjointHaloExchange
  • Field/Fieldset::clone method
  • Functions to enable/disable FPE
  • Add function to build mesh from imported connectivity data (#135)
  • Implement field::for_each capabilities (#139)
  • Introduce colon-separated environment variable ATLAS_PLUGIN_PATH to simplify plugin detection
  • Introduce atlas::mdspan, contributed from github.com/kokkos/mdspan
  • Add function Field::horizontal_dimension() -> std::vector<idx_t>
  • Setup horizontal_dimensions() for BlockStructuredColumns fields
  • Upgrade the halo exchange procedure for the function space 'PointCloud' (#120)

Fixed

  • Enable latitude normalisation in KDTree coordinate transform (#140)
  • Fix LocalView indexing bug for non-contiguous slices
  • C++17 flag public propagation to downstream C++ CMake packages
  • Fix cells().global_index() metadata for RegularLonLat grids in StructuredMeshGenerator
  • BuildHalo: mark interior added cells as ghost

0.33.0 - 2023-04-03

05 Oct 11:53
Compare
Choose a tag to compare

Added

  • Add support for StructuredPartitionPolygon with halo > 0
  • Add information on atlas having PROJ support

Changed

  • C++17 standard is now a requirement

Fixed

Fix StructuredInterpolation2D with retry for failed stencils

0.32.1 - 2023-02-09

09 Feb 14:12
Compare
Choose a tag to compare

Added

  • Added (lon, lat) to (alpha, beta) transforms to cubed sphere projection

0.32.0 - 2023-01-23

09 Feb 14:07
Compare
Choose a tag to compare

Added

  • Added BlockStructuredColumns FunctionSpace
  • Added function SolidBodyRotation
  • Added convenience Fortran constructors for ShiftedLonLat, SHiftedLon, ShiftedLat
  • Support for more FunctionSpaces in various interpolation methods

Changed

  • PolygonLocator now wraps around longitudes for non-matching domains
  • StructuredMeshGenerator can generate meshes with partitions without elements
  • SerialDistribution makes every MPI task have the entire mesh

Fixed

  • Remove assertion for checking of empty mesh in NodeColumns FunctionSpace
  • Gaussian latitudes can now be computed for very high resolution, without running out of memory.
  • Interpolation to functionspaces with empty partitions

0.31.1 - 2022-11-11

11 Nov 15:21
Compare
Choose a tag to compare

Fixed

  • Fix bug introduced in StructuredMeshGenerator global numbering with release 0.31.0 in commit a63fc62
  • Fix healpix global numbering for pentagon pole elements in parallel
  • Fix validity check of atlas::HealpixGrid

0.31.0 - 2022-11-10

10 Nov 10:55
Compare
Choose a tag to compare

Added

  • Extend PointCloud functionspace to do halo exchanges, including Fortran API
  • Add FunctionSpace::gather and FunctionSpace::scatter abstraction

Changed

  • Improve performance of MatchingMeshPartitionerLonLatPolygon using OpenMP
  • Improve performance of BuildHalo using OpenMP and unordered_map
  • Improve performance of StructuredMeshGenerator using OpenMP
  • Improve performance of ATLAS_TRACE
  • Reduce memory peak in GatherScatter setup
  • Global element numbering of RegularLonLat grids is now following rows independent of partitioning

Fixed

  • Running CI with Github Actions
  • Fix output of atlas-grids y-range for shifted grids
  • Fix building with ATLAS_BITS_LOCAL=64