Veros

Latest version: v1.5.1

Safety actively analyzes 626004 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 4

1.3.1

Source distributions now include files missing in v1.3.0.

1.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.

0.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).

0.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.

0.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

0.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.

Page 3 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.