Releases: CliMA/Oceananigans.jl
Releases · CliMA/Oceananigans.jl
🧮 Oceananigans v0.14.0
v0.14.0 (2019-10-24)
Main features:
- Support for abstract operations to define new diagnostics and equations!
- Support for β planes.
- Can specify domain for grids.
Closed issues:
- Output example for NetCDF errors (#499)
- Behavior of
data
is inconsistent with behavior ofBase.parent
(#454) - Clean up legacy constructors (#429)
- Diagnostic for computing horizontal averages of fluxes (#428)
- Grids should allow us to specify the domain (#413)
- β-plane and full Coriolis (#28)
Merged pull requests:
- Version 0.14.0 (#504) (glwagner)
- Fixes netcdf example (#503) (suyashbire1)
- Nuke
BasicModel
legacy constructor and fix `NonDimensionalMode… (#496) (ali-ramadhan) - Allow users to specify the domain when creating a `RegularCartes… (#464) (ali-ramadhan)
- AbstractOperations for diagnostics (and beyond...) (#463) (glwagner)
- More coriolis options (#438) (suyashbire1)
🔃 Oceananigans v0.13.0
v0.13.0 (2019-10-23)
Main feature:
- The
k
index (used for indexing the vertical level in 3D arrays) now increases as you go up so thatk=1
corresponds to the bottom of the domain.
Closed issues:
- Round-off error in
RegularCartesianGrid
produces ranges of wrong length (#480) - Rename Pearson vortex test to Taylor-Green vortex (#468)
- Vertical index k increases as z coordinate decreases (#90)
Merged pull requests:
- Bump version to 0.13.0 (#494) (ali-ramadhan)
- FINALLY reverse the k index (#462) (ali-ramadhan)
🐾 Oceananigans v0.12.0
v0.12.0 (2019-10-22)
Main features:
- Support for specifying 0-2 active tracers and an arbitrary number of passive tracers.
- Documentation overhaul.
- Faster and better NetCDF output writer using NCDatasets.jl
Closed issues:
- LES regression test (#473)
- Each tracer should have its own diffusivity (#430)
- Documentation, examples/tutorials, and cleanup for JOSS paper (#332)
- Numerical methods that need to be documented (#327)
- Reference or explanation of DCT-FFT translation used for GPU Poisson solver method (#240)
- Equations in documentation are not dimensionally consistent (#222)
- Arbitrary tracer fields. (#25)
Merged pull requests:
- Add compatiblity entries to Project.toml (#492) (ali-ramadhan)
- Bump v0.12.0 (#486) (ali-ramadhan)
- Regression tests for models with LES closures (round 2) (#484) (glwagner)
- All the documentation! (#474) (ali-ramadhan)
- Arbitrary tracers (#452) (glwagner)
- Purpose new README layout (#437) (kamontat)
- Add table of contents to README (#435) (MohanSha)
- A fast netcdf output writer (#433) (suyashbire1)
🗜️ Oceananigans v0.11.1
v0.11.1 (2019-10-15)
Main features:
- Stratified Couette flow verification experiment.
- Much improved examples.
Closed issues:
- Error when trying the hot bubble with GPU (#451)
- First example (hot bubble) fails when defining the model (#449)
- We should use CI to test that examples and verification tests run without errors (#415)
- Stratified plane Couette flow test (#310)
Merged pull requests:
- Use coverage job from earlier GitLab CI yaml (#472) (ali-ramadhan)
- Allow v1.3 GPU tests to fail on GitLab CI (#467) (ali-ramadhan)
- Update rising thermal bubble example in README (#450) (ali-ramadhan)
- Forcing API refactor (#444) (glwagner)
- Add contributing section to README and contributor's guide (#436) (ali-ramadhan)
- Get rid of docs replacement warnings on CPU (#426) (ali-ramadhan)
- Examples: more, better, tested (#425) (glwagner)
- Fix example test (#424) (ali-ramadhan)
- Wrapping up changes to buoyancy abstraction (#423) (glwagner)
- Search and replace testing for example scripts (#418) (ali-ramadhan)
- Stratified Couette flow verification (#381) (ali-ramadhan)
⚓ Oceananigans v0.11.0
v0.11.0 (2019-09-19)
Main feature:
- Massive API cleanup and stabilization!
Closed issues:
- New abstraction for buoyancy and equation of state? (#403)
- Convenience 'parameters' field in Model for user-defined functions (#394)
- User-defined forcing function signature (#390)
- Model constructor not general enough + different model constructors for different use cases (#372)
- Too many exported names (#364)
- Use dictionaries rather than arrays to store output writers and diagnostics? (#362)
- Purpose of Diagnostic abstract type? (#361)
- Utilities for diagnosing diffusive CFL numbers. (#360)
- Use Literate.jl for examples? (#358)
- Generalize JLD2OutputWriter (#357)
- We should only import what we need from packages (#351)
- ardata and ardata_view (#313)
- The future of the Field abstraction (#298)
- Manual conversions in Grid constructor are not necessary (#285)
- Different model constructors for different common use cases (#258)
- Better organization of rotation-related and buoyancy-related constants and parameters (#217)
- Tidal sloshing forcing function (#212)
- Idealized nonlinear equation of state (#191)
- Revise physical constants (#190)
- Do not install/load CUDA packages if no GPU is detected. (#178)
- Physics tests with analytic solutions for the statistics (#159)
- Physics tests for channel or box models with analytic solutions (#158)
- Physics tests for doubly-periodic domains with analytic solutions (#157)
- Validation and performance benchmarks. (#136)
- Ability to turn off/on certain terms in the momentum equations. (#36)
Merged pull requests:
- Bump version to v0.11.0 (#422) (ali-ramadhan)
- New abstractions for buoyancy and rotation (#412) (glwagner)
- Put Diagnostics and OutputWriters into OrderedDicts, plus code f… (#411) (glwagner)
- Docstrings everywhere! (#410) (ali-ramadhan)
- More general and compact Field implementation (#409) (glwagner)
- Simplify AbstractModel, fixes show for RegularCartesianGrid (#408) (glwagner)
- Timeseries diagnostic and CFL utilities (#407) (glwagner)
- Pre-documentation cleanup (#406) (ali-ramadhan)
- Refactor boundary conditions container (#405) (glwagner)
- Update packages (#404) (ali-ramadhan)
- Use {Flux, Nothing} for default boundary condition type rather than {Flux, 0} (#402) (glwagner)
- Increase tolerance for tracer conservation test (#400) (ali-ramadhan)
- More well-defined export statement / user API (#399) (glwagner)
- Add warning if GPU model grid Nx, Ny are not multiple of 16 (#398) (ali-ramadhan)
- Update README: installation instructions and development team (#396) (ali-ramadhan)
- Parameters field in Model for user convenience (#395) (glwagner)
- Updates Julia requirements mentioned in README.md (#393) (navidcy)
🧭 Oceananigans v0.10.1
v0.10.1 (2019-09-09)
Main feature:
- Bug fixes for diffusivisty halo regions and
Value
/Gradient
boundary conditions to play nice with LES models.
Closed issues:
- Register Oceananigans v0.10.0 (#384)
- Better Value and Gradient boundary condition implementation (#371)
Merged pull requests:
- Bump version to 0.10.1 (#392) (ali-ramadhan)
- Use halo regions to enforce Value and Gradient boundary conditions (#389) (glwagner)
- Update CUDA packages (attempt 2) (#388) (ali-ramadhan)
- Revert "Update CUDA packages to get rid of CUDA errors on CPU and use CUDAapi.has_cuda()" (#387) (ali-ramadhan)
- Improve HorizontalAverage and time to write function (#386) (glwagner)
- Fill halo regions for diffusivity (#385) (glwagner)
- Verbose flag for checkpointer (#382) (ali-ramadhan)
- Clean up benchmark scripts (#380) (ali-ramadhan)
📼 Oceananigans v0.10.0
v0.10.0 (2019-08-29)
Main feature:
- New and more correct turbulence closures.
Closed issues:
- Switch from HAVE_CUDA to new CUDAapi.has_cuda() (#376)
- Register Oceananigans v0.9.5 (#374)
- Register Oceananigans v0.9.4 (#373)
- Clearer Model instantiation error when HAVE_CUDA=false (#295)
Merged pull requests:
- New and more correct turbulence closures (#383) (glwagner)
- Fix diagnostics test problem size (#379) (ali-ramadhan)
- Update CUDA packages to get rid of CUDA errors on CPU and use CUDAapi.has_cuda() (#378) (ali-ramadhan)
- Checkpointer needs a previous field (#375) (ali-ramadhan)
🏺 Oceananigans v0.9.5
v0.9.5 (2019-08-28)
Main feature:
- Horizontal average diagnostic and we kind of decided on what diagnostics should look like.
Closed issues:
- Fast vertical profile diagnostic (#186)
- Allow forcing to be an array. (#110)
- Use @propagate_inbounds (#58)
Merged pull requests:
- Fast on-the-fly vertical profiles (#352) (ali-ramadhan)
🛂 Oceananigans v0.9.4
v0.9.4 (2019-08-28)
Main features:
- Model checkpointing via the
Checkpointer
output writer. - Verbose and maximum filesize options for the JLD2 output writer.
- Much cleanup.
Closed issues:
- Upgrade TimeStepWizard to support model spinup? (#356)
- Register Oceananigans v0.9.3 (#345)
- Split JLD2 output files by size (#344)
- Possibly incorrect halo region filling and missing boundary condition (#328)
- Barebones checkpointing (#324)
- Halo regions filling functions are not general (#307)
- What is the purpose of the 'dim' property of RegularCartesianGrid? (#287)
- HDF5 and plotting utilities are heavy dependencies (#284)
- More tuples! (#262)
- Constant Smagorinsky halo size (#260)
- Types of kernel arguments do not seem to be inferred (#251)
- Eliminate dichotomy between GPU and CPU tests (#242)
- Deep convection example and golden master test should switch to BCs. (#220)
- Dynamically install packages like Plots.jl and ArgParse.jl for examples. (#195)
- Better user API for interacting with fields (#174)
- isbits Fields and FieldSets (#163)
- Change AB-2 parameter to 0.5 + χ to offer first order forward time stepping (#160)
- Elegant unpacking (#155)
- set!(u::Field{G}, f::Function) should use xC, yC, zC (or xF, yF, zF) depending on Field. (#23)
- Using Reqiures.jl for optional GPU usage (#14)
Merged pull requests:
- Benchmarking forcing functions (#370) (ali-ramadhan)
- Nuke broken tests (#368) (ali-ramadhan)
- Nuke sandbox (#367) (ali-ramadhan)
- Cleanup README and Documentation building (#359) (ali-ramadhan)
- Dirchlet and Neumann aliases for Value and Gradient boundary conditions (#355) (ali-ramadhan)
- Verbose and maximum filesize options for JLD2 output writer (#350) (ali-ramadhan)
- Clean trailing whitespace and convert tabs to spaces. (#349) (ali-ramadhan)
- Checkpointer revival (#326) (ali-ramadhan)
📜 Oceananigans v0.9.3
v0.9.3 (2019-08-09)
Main feature:
- A sophisticated and efficient
set!
function for setting field to specific values calculated from a function or taken from an array. Especially useful for elegantly setting initial conditions.
Closed issues:
- Register Oceananigans v0.9.2 (#339)
Merged pull requests:
- Robust setting of fields (#343) (ali-ramadhan)
- Revert "Kernel for setting initial conditions so set_ic! runs fast on GPUs" (#342) (ali-ramadhan)
- Remove JLD and HDF5 dependency (#340) (ali-ramadhan)