The versatile ocean simulator, in pure Python, powered by JAX.
MIT License
Bot releases are hidden (Show)
Full Changelog: https://github.com/team-ocean/veros/compare/v1.5.0...v1.5.1
Published by dionhaefner about 1 year ago
Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.6...v1.5.0
Published by dionhaefner over 1 year ago
Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.5...v1.4.6
Published by dionhaefner about 2 years ago
veros.tools.setup.get_coastline_distance
with recent SciPy versionsFull Changelog: https://github.com/team-ocean/veros/compare/v1.4.4...v1.4.5
Published by dionhaefner about 2 years ago
Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.3...v1.4.4
Published by dionhaefner over 2 years ago
Full Changelog: https://github.com/team-ocean/veros/compare/v1.4.2...v1.4.3
Published by dionhaefner about 3 years ago
Extension modules are now optional as intended.
Published by dionhaefner about 3 years ago
Bumped dependencies, fixes a path issue on some systems.
Published by dionhaefner about 3 years ago
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.
Published by dionhaefner over 3 years ago
Published by dionhaefner over 3 years ago
biharmonic_friction_cosPower
now works as intended (a value of 3 has a total impact of cos(lat)^3
, not cos(lat)^6
).-c jax-gpu-mpi
).Published by dionhaefner over 3 years ago
biharmonic_friction_cosPower
to scale biharmonic friction with latitudemonitor_streamfunction_residual
to switch off convergence checks in PETSc solverPublished by dionhaefner over 3 years ago
Source distributions now include files missing in v1.3.0.
Published by dionhaefner over 3 years ago
This is a huge release with many breaking changes.
Setups written for previous versions of Veros will not be compatible with this version.
1.x.x
reflects that better than 0.x.x
.$ veros run mysetup.py
VerosState
object that can be passed around and inspected.flake8
and black
.Published by dionhaefner over 3 years ago
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).
Published by dionhaefner over 4 years ago
VEROS_LINEAR_SOLVER
environment variable.surface_taux
, surface_tauy
) now has the correct units in output files.global_4deg
setup now has an ITF (Indonesian Throughflow).acc
and global_flexible
setups.Published by dionhaefner almost 5 years ago
veros copy-setup
Published by dionhaefner over 5 years ago
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.
Veros now fully supports distributed architectures through MPI, for both NumPy and Bohrium backends. If you have MPI installed, just run something like
$ 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:
from veros import runtime_settings as rs
rs.backend = 'bohrium'
Polished documentation.
Various code quality improvements and polish.
Dropped Python 2 support.
Removed Eady setup.
Removed logfile
argument.
Published by dionhaefner over 6 years ago
Veros is now installable via pip
! This allows you to get started with Veros in lightning speed:
$ pip install veros
$ veros copy-setup --to /tmp
$ python /tmp/acc/acc.py
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:
@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.
Published by dionhaefner almost 7 years ago
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.