Recent Releases of veros

veros - v1.6.0

What's Changed

  • Drop Python3.9 support, the minimum Python version is now 3.10.
  • Add support for token-less mpi4jax.

Full Changelog: https://github.com/team-ocean/veros/compare/v1.5.2...v1.6.0

- Python
Published by dionhaefner 11 months ago

veros - v1.5.2

What's Changed

  • Update get-started.rst by @iuryt in https://github.com/team-ocean/veros/pull/567
  • Remove unused asset files in NA setup by @dionhaefner in https://github.com/team-ocean/veros/pull/594
  • Fix pyom MPI build with gcc by @dionhaefner in https://github.com/team-ocean/veros/pull/688
  • Fix bolusiso and bolusdepth accumulation by @dionhaefner in https://github.com/team-ocean/veros/pull/697

New Contributors

  • @iuryt made their first contribution in https://github.com/team-ocean/veros/pull/567

Full Changelog: https://github.com/team-ocean/veros/compare/v1.5.1...v1.5.2

- Python
Published by dionhaefner over 1 year ago

veros - v1.5.1

What's Changed

  • Bump dependencies
  • Ensure Veros works with modern JAX versions
  • Fix gpu extension by @dionhaefner in https://github.com/team-ocean/veros/pull/541

Full Changelog: https://github.com/team-ocean/veros/compare/v1.5.0...v1.5.1

- Python
Published by dionhaefner over 2 years ago

veros - v1.5.0

What's Changed

  • Introduce more netcdf attributes for reproducibility by @dionhaefner in https://github.com/team-ocean/veros/pull/509
  • Bump dependencies

Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.6...v1.5.0

- Python
Published by dionhaefner almost 3 years ago

veros - v1.4.6

What's Changed

  • Fixes url in Introduction by @tomchor in https://github.com/team-ocean/veros/pull/369
  • remove codecov dependency by @dionhaefner in https://github.com/team-ocean/veros/pull/454
  • [docs] rename master -> main; fix version in docs by @dionhaefner in https://github.com/team-ocean/veros/pull/466
  • [docs] fixthedocs.org by @dionhaefner in https://github.com/team-ocean/veros/pull/467
  • [docs] fix harder by @dionhaefner in https://github.com/team-ocean/veros/pull/468
  • Bump dependencies

New Contributors

  • @tomchor made their first contribution in https://github.com/team-ocean/veros/pull/369

Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.5...v1.4.6

- Python
Published by dionhaefner almost 3 years ago

veros - v1.4.5

What's Changed

  • Fix versioneer for PEP 660 editable installs by @dionhaefner in https://github.com/team-ocean/veros/pull/366
  • Fix veros.tools.setup.get_coastline_distance with recent SciPy versions

Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.4...v1.4.5

- Python
Published by dionhaefner almost 4 years ago

veros - v1.4.4

What's Changed

  • ensure that using the CLI does not import veros by @dionhaefner in https://github.com/team-ocean/veros/pull/323
  • [doc] erda install by @nutrik in https://github.com/team-ocean/veros/pull/344
  • :bug: missing net radiation forcing by @nutrik in https://github.com/team-ocean/veros/pull/348
  • Do not import plugins when finding setup files by @dionhaefner in https://github.com/team-ocean/veros/pull/356
  • Add version limit for jaxlib by @dionhaefner in https://github.com/team-ocean/veros/pull/362
  • Add dimensions parameter to plugin interfaces by @dionhaefner in https://github.com/team-ocean/veros/pull/364

Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.3...v1.4.4

- Python
Published by dionhaefner almost 4 years ago

veros - v1.4.3

What's Changed

  • [core] change to current JAX update syntax by @dionhaefner in https://github.com/team-ocean/veros/pull/243
  • [doc] analysis tutorial by @nutrik in https://github.com/team-ocean/veros/pull/249
  • Fix unhelpful error message for non-existing inputs to veros run by @dionhaefner in https://github.com/team-ocean/veros/pull/259
  • Add surface pressure solver by @dionhaefner in https://github.com/team-ocean/veros/pull/274
  • Automatically split barotropic mode from initial velocity by @dionhaefner in https://github.com/team-ocean/veros/pull/272
  • Re-structure tests by @dionhaefner in https://github.com/team-ocean/veros/pull/280
  • Fix CI error with Conda on Windows by @dionhaefner in https://github.com/team-ocean/veros/pull/286
  • Test Python 3.10 by @dionhaefner in https://github.com/team-ocean/veros/pull/287
  • Bump dependencies

Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.2...v1.4.3

- Python
Published by dionhaefner about 4 years ago

veros - v1.4.2

Extension modules are now optional as intended.

- Python
Published by dionhaefner over 4 years ago

veros - v1.4.1

Bumped dependencies, fixes a path issue on some systems.

- Python
Published by dionhaefner over 4 years ago

veros - v1.4.0

The following setups are not part of the main Veros repository anymore:

  • acc_sector
  • fjord
  • wave_propagation

They are now found in the veros-extra-setups plugin.

- Python
Published by dionhaefner almost 5 years ago

veros - v1.3.4

  • Benchmarks now use at most 120 vertical layers
  • Runtime settings are now correctly parsed from environment variables

- Python
Published by dionhaefner almost 5 years ago

veros - v1.3.3

  • biharmonic_friction_cosPower now works as intended (a value of 3 has a total impact of cos(lat)^3, not cos(lat)^6).
  • Added multi-GPU support to benchmarks (via -c jax-gpu-mpi).

- Python
Published by dionhaefner almost 5 years ago

veros - v1.3.2

Changes

  • New setting biharmonic_friction_cosPower to scale biharmonic friction with latitude
  • New runtime setting monitor_streamfunction_residual to switch off convergence checks in PETSc solver
  • Restart files are never written in the first iteration

- Python
Published by dionhaefner almost 5 years ago

veros - v1.3.1

Source distributions now include files missing in v1.3.0.

- Python
Published by dionhaefner almost 5 years ago

veros - v1.3.0

This is a huge release with many breaking changes.

Setups written for previous versions of Veros will not be compatible with this version.

New versioning scheme

  • We have decided to add +1 to the Veros version. Veros has been at a stage where it is mature enough for scientific applications for a while, and we feel that a version 1.x.x reflects that better than 0.x.x.

Major changes

  • A new command line interface to execute Veros setups: $ veros run mysetup.py
  • Bohrium is now replaced with JAX. JAX is easier to install and provides better performance on CPU and GPU.
  • Overhauled the internal data model. All model state is now encapsulated in a VerosState object that can be passed around and inspected.
  • Major performance increases on GPU.
  • The PETSc linear solver now works on GPUs.
  • Explicit support for custom variables and dimensions.
  • Many bug fixes and quality-of-life improvements.
  • Asset files are now in JSON format.

Internal changes

  • Enforcing of a code formatting standard via flake8 and black.
  • Hand-written TDMA kernels (CUDA kernel by @sefrin).
  • A more robust testing suite.
  • Better modularity of diagnostics and model restarts.

- Python
Published by dionhaefner almost 5 years ago

veros - v0.2.3

This is the last release before replacing Bohrium with JAX, and before switching to a new versioning scheme.

Besides some bug fixes and tweaks this also introduces the setup acc_basic (a simplified version of ACC).

- Python
Published by dionhaefner about 5 years ago

veros - v0.2.2

Changes

  • Assets are now downloaded the first time they are accesses (instead of during import)
  • Dependencies are pinned by default
  • Streamfunction solver uses a new ILU preconditioner that shows very good performance. PyAMG support has been dropped.
  • Linear solver can now be chosen via the VEROS_LINEAR_SOLVER environment variable.
  • Wind stress (surface_taux, surface_tauy) now has the correct units in output files.
  • global_4deg setup now has an ITF (Indonesian Throughflow).
  • Fixed critical bugs related to wind stress in acc and global_flexible setups.

- Python
Published by dionhaefner about 6 years ago

veros - v0.2.1

Changes

  • A new plugin system that supports external development on Veros
  • Diagnostics now have their own log level to make sure output is displayed in most cases
  • Veros now supports system-wide setup folders that can be discovered by veros copy-setup
  • Fixed bugs in overturning diagnostic
  • Potential density is now computed as a model variable
  • Fixed missing attributes on netCDF outputs
  • Tweaked documentation

- Python
Published by dionhaefner over 6 years ago

veros - v0.2.0

This is a huge release with many exciting changes!

This release is not backwards-compatible. Setups created with v0.1.x will have to be rewritten to work with this version.

Changes

  • Veros now fully supports distributed architectures through MPI, for both NumPy and Bohrium backends. If you have MPI installed, just run something like

bash $ mpirun -n 4 python mysetup.py -n 2 2

to get started.

  • A new realistic flexible resolution setup (global_flexible) that automatically adapts to the chosen resolution. Just choose a resolution and time step and that's it! Also comes with automatic removal of marginal seas.

  • Better output and logging capabilities: terminal colors, a progress bar and throughput indicator, more verbosity options.

  • A re-implementation of the island routines, which are now faster and more stable.

  • A fully distributed Poisson solver via PETSc that is over 10x faster than PyOM's solver.

  • netCDF output via HDF5, so libnetcdf is not a dependency anymore.

  • The old Veros base class is now separated into VerosSetup (containing all setup-specific logic) and VerosState (holding the model settings and variables).

  • Global runtime settings:

```python from veros import runtime_settings as rs

rs.backend = 'bohrium' ```

  • Polished documentation.

  • Various code quality improvements and polish.

Removed features

  • Dropped Python 2 support.

  • Removed Eady setup.

  • Removed logfile argument.

- Python
Published by dionhaefner about 7 years ago

veros - v0.1.1

Veros on PyPI

Veros is now installable via pip! This allows you to get started with Veros in lightning speed:

bash $ pip install veros $ veros copy-setup --to /tmp $ python /tmp/acc/acc.py

Other changes

  • Command line interfaces are now based on click instead of argparse.
  • Unless explicitly told, Veros does not consume any arguments from the command line any more. In setups meant to be run interactively, you can add the following to parse command line arguments:

    ```python @veros.tools.cli def run(args, *kwargs): simulation = MySetup(args, *kwargs) simulation.setup() simulation.run()

    if name == "main": run() ```

  • Setup assets (i.e., external binary files required to run the standard setups) are now downloaded on demand to $HOME/.veros, or to wherever the environment variable VEROS_ASSET_DIR pointed when Veros was imported.

  • Git LFS is not required anymore.

  • Veros is now licensed under a MIT license.

- Python
Published by dionhaefner over 8 years ago

veros - v0.1.0

The first official release of Veros!

All core routines in this version are more or less direct (vectorized) translations of their respective pyOM 2.1.0 counterpart.

The code is optimized for use with NumPy or Bohrium, using either the OpenMP or OpenCL backend.

Supports both Python 2.7 and 3.x, but you might run into issues with Bohrium on Python 3.x.

- Python
Published by dionhaefner over 8 years ago