Recent Releases of Oceananigans.jl
Oceananigans.jl - v0.64.0
Oceananigans v0.64.0
Merged pull requests:
- New Simulation API: more callbacks, less "progress" (#1971) (@glwagner)
- Updates simulation tips (#2029) (@tomchor)
- Regression test for Hydrostatic free surface model (#2031) (@simone-silvestri)
- Bump down to 0.64.0 (#2038) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🔧 v0.63.4
Oceananigans v0.63.4
Merged pull requests:
- Fixes grid equality for GPUs (#2030) (@tomchor)
- Adding regression test to lat-lon grid (#2032) (@simone-silvestri)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🚳 v0.63.3
Oceananigans v0.63.3
Closed issues:
- Changing notation from "resolution" to "grid size" in grids show methods (#1927)
- Does Stokes drift have two names in the docs? (#2007)
- Picking up a simulation fails with
VerticallyStretchedGrid
s (#2018)
Merged pull requests:
devbranch
->main
(#2003) (@navidcy)- Add compat entry for Literate in
docs/Project.toml
(#2004) (@navidcy) - Changes stokes drift nomenclature from
v
tou
in nonhydrostatic model description (#2008) (@tomchor) - Changes resolution to size and halo size to just halo (#2010) (@tomchor)
- Generalize
VerticallyStretchedRectilinearGrid
docstring to allowFlat
dims (#2011) (@navidcy) - Fix bug in
TurbulenceClosures
(#2015) (@navidcy) - Redefines equality (==) for VerticallyStretchedRectilinearGrids (#2019) (@tomchor)
- Bump CubedSphere to v0.2 (#2026) (@navidcy)
- Redefines equality (==) for Grids (#2028) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 👠 v0.63.2
Oceananigans v0.63.2
This patch release fixes CUDA versions to a specific range, preventing Julia from installing the latest CUDA.jl version (which as of now contains a bug (see #1996)). This temporary restriction will be lifted after the CUDA.jl bug is fixed upstream in a tagged release.
Closed issues:
- Rename
master
branch tomain
? (#1446) - GPU simulations tests fail? (#1992)
- GPU
AveragedField
fails to compute with CUDA.jl v3.4.2 (#1995) - Should we cap CUDA at v3.3 for now to guard agaisn't the CUDA v3.4.2 bug? (#1996)
Merged pull requests:
- Update dependencies (#1988) (@navidcy)
- Introduces range of acceptable CUDA packages to avoid bug in 3.4.2 (#1997) (@tomchor)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🎼 v0.63.1
Oceananigans v0.63.1
Closed issues:
- Regriding enhancements (#1991)
Merged pull requests:
- Quality of life improvements for
FieldDataset
(#1903) (@ali-ramadhan) - Adds docstring + example for
regrid!
(#1993) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🌯 v0.63.0
Oceananigans v0.63.0
Merged pull requests:
- Adds vertical regridding feature (#1987) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🥫 v0.62.2
Oceananigans v0.62.2
Closed issues:
- Why is bottom drag multiplied by domain depth? (#1974)
- Column stability for convective adjustment:
∂z_b > 0
, or∂z_b >= 0
? (#1980) - About Stratified Couette Flow validation case (#1981)
Merged pull requests:
- Adds clarification for
latitude
units inOceananigans.Coriolis
(#1975) (@navidcy) - Adds missing space in docs/Physics/Nonhydrostatic Model (#1976) (@navidcy)
- Fix typos + clarifying rephrase in
Oceananigans.Coriolis
docstrings (#1977) (@navidcy) - Create CITATION.cff file (#1978) (@navidcy)
- Minor clearing up in Bickley jet example (#1979) (@navidcy)
- Uses ValueBoundaryCondition in stratified couette flow validation test (#1982) (@glwagner)
- Neutral boundary layers are not unstable (#1983) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🥗 v0.62.1
Oceananigans v0.62.1
Closed issues:
- Issue with TimeStepWizard (#1946)
- Warning about inflating halo size does not take into account
Flat
dimensions (#1956) PrescribedVelocityFields
does not work withImmersedBoundaryGrid
(#1958)- Docstring for AveragedField is not informative; AveragedField does not appear in function library (#1965)
Merged pull requests:
- Overturning, eddying channel validation test following Abernathey et al. 2011 (#1744) (@glwagner)
- Update README.md (#1953) (@Moelf)
- introduces
UpwindBiasedFirstOrder
advection (#1957) (@francispoulin) - Only mask AbstractDataField (#1959) (@glwagner)
- Adds support for Arrays of coriolis forces with single column ensemble mode and fixes halo bug (#1963) (@glwagner)
- Fix verbose printing of file writing time in JLD2OutputWriter (#1964) (@glwagner)
- Improves AveragedField docstring (#1966) (@glwagner)
- Small change to README description (#1967) (@glwagner)
- Rectangular cuboids are not rectangles (#1969) (@glwagner)
- Adds optional second argument
value
tomask_immersed_field!
(#1970) (@glwagner) - Bumps patch release after bug fixes via #1744 (#1973) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🔏 v0.62.0
Oceananigans v0.62.0
The TKEBasedVerticalDiffusivity
was changed to CATKEVerticalDiffusivity
, and the implementation was changed to use the "triple max" formulation.
Closed issues:
- Documentation build is failing (#1949)
Merged pull requests:
- New Threaded Benchmark Scripts (#1881) (@hennyg888)
- Implements "triple max" CATKE formulation (#1926) (@glwagner)
- Updating Benchmark Docs (#1930) (@hennyg888)
- Adds a small bugfix to calculation in HydrostaticModel (#1944) (@sandreza)
- time::T number OR DateTime object (#1945) (@maeckha)
- Adds a test for broadcasting fields with arrays with singleton dimensions (#1947) (@glwagner)
- Revert "Updating Benchmark Docs" (#1950) (@glwagner)
- Bump to 0.62.0 (#1951) (@glwagner)
- Update benchmarks.md - attempt 2.0 (#1952) (@hennyg888)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🤸 v0.61.3
Oceananigans v0.61.3
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🧎🏾♀️ v0.61.2
Oceananigans v0.61.2
Merged pull requests:
- Fixed mpi_shallow_water example (#1933) (@vnderlev)
- Fix diffusive flux bug for immersed boundaries (#1935) (@whitleyv)
- Unrestrict second and fourth derivative operators for use with
ImmersedBoundaryGrid
(#1936) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🦆 v0.61.1
Oceananigans v0.61.1
Closed issues:
- Figures in "Convergence test" section of the docs are missing (#1212)
- A more general
NonTraditionalFPlane
to match the upcoming tilted gravity feaure (#1372) - Change of boundary condition from Periodic to Bounded problem (#1656)
- Should we rename the model option
coriolis
tobackground_rotation
? (#1905) - Choice of constant for the Smagorinsky model (#1907)
Merged pull requests:
- Adds an f-plane implementation with arbitrary direction of rotation (#1892) (@tomchor)
- Update Smagorinsky-Lilly model (#1908) (@tomchor)
- Make ab2_step_field! a bit less sketchy (#1913) (@glwagner)
- More robust initialization of u and v in
examples/two_dimensional_turbulence.jl
(#1917) (@glwagner) - Update TARTARUS_HOME to
/storage5
(#1920) (@glwagner) - SingleColumn enhancements and "ensemble of columns" abstraction (#1924) (@glwagner)
- Typo in the doc (#1925) (@xiaozhour)
- Add a test to check surface bc continuous functions work with ImmersedBoundary (#1928) (@christophernhill)
- Changes parameters name from p to params (#1931) (@tomchor)
- Fix bug in hydrostatic vertical velocity with stretched grid (#1932) (@kburns)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 3 years ago
Oceananigans.jl - 🧶 v0.61.0
Oceananigans v0.61.0
Merged pull requests:
- Nuke
restore_from_checkpoint
(#1893) (@glwagner) - Fix typo in Readme (#1897) (@navidcy)
- Fix broken link in Readme (#1898) (@navidcy)
- Change order in Docs/Numerical Implementations (#1900) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🧚🏽 v0.60.1
Oceananigans v0.60.1
Closed issues:
- Complex AbstractOperations cannot be computed on GPU (#1241)
- Reformulate
TKEBasedVerticalDiffusivity
(#1695) - Kernel calls for AMD diffusivity calculations (#1873)
NonhydrostaticModel
creates an extra empty element indiffusivities
list when a tuple is passed to asclosure
(#1878)- Adding
initial_conditions
argument to model constructors (#1890)
Merged pull requests:
- Refactors Poisson solver interfaces and new implicit free surface solver (#1869) (@glwagner)
- Update shallow_water_Bickley_jet.jl (#1874) (@francispoulin)
- Fix typo in boundary conditions docs (#1875) (@tomchor)
- Use CPU for shallow water Bickley jet (#1877) (@glwagner)
- Reformulates TKEBasedVerticalDiffusivity (#1883) (@glwagner)
- Changes model field
diffusivities
todiffusivity_fields
(#1884) (@tomchor) - Update issue referenced in
simulation_tips.md
(#1887) (@tomchor) - Mask tracers for immersed boundaries (#1888) (@whitleyv)
- Introducing Callback for Simulations (#1894) (@glwagner)
- Updates Docs packages (#1896) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🏴☠️ v0.60.0
Oceananigans v0.60.0
- Rename
IncompressibleModel
toNonhydrostaticModel
.
Closed issues:
- Boussinesq model vs incompressible model (#1620)
Oceananigans.BoundaryConditions.ContinuousBoundaryFunction
warnings in examples (#1775)FourierTridiagonalPoissonSolver
for Flat dimensions (#1849)- Incomplete docstring? (#1851)
Merged pull requests:
- Adds a 2D horizontal convection example (#1847) (@navidcy)
- Updates
offset_indices
docstrings (#1864) (@navidcy) - Flat VerticallyStretchedRectilinearGrid plus new hydrostatic and flat internal wave tests (#1865) (@glwagner)
- Some fixes in horizontal convection example (#1868) (@navidcy)
- Rename
IncompressibleModel
toNonhydrostaticModel
(#1870) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🧴 v0.59.0
Oceananigans v0.59.0
- Major refactor of boundary conditions for fields. Boundary conditions for prognostic fields are now constructed with
FieldBoundaryConditions()
. Boundary conditions for auxiliary / non-prognostic fields still require the grid and location viaFieldBoundaryConditions(grid, location)
.
Closed issues:
- Using a
Field
as aBackgroundField
(#1831) - Poincare constant in AMD (#1856)
Merged pull requests:
- Allow a background_field to be a Field (#1834) (@francispoulin)
- Major refactor of
FieldBoundaryConditions
(#1843) (@glwagner) - Nukes
NonDimensionalIncompressibleModel
(#1845) (@navidcy) - Test ArgumentError for wrong background_field location (#1848) (@glwagner)
- Fix some typos in
simulation_tips.md
(#1853) (@tomchor) - Fix typo in AMD closure in docs (#1857) (@tomchor)
- Fix LaTeX rendering bug in Kelvin Helmoltz instability example (#1858) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - ♥️ v0.58.9
Oceananigans v0.58.9
Closed issues:
- Tests for 'show' methods (#705)
- periodic_advection.jl fails because it can't find WENO (#1271)
- one_dimensional_advection_schemes.jl fails (#1272)
- Warnings outputting with AveragedTimeScheduler when window is equal to interval (#1274)
- introduce immersed boundary method to
ShallowWaterModel
(#1458) - Validation + Convergence tests: images not showing up (#1459)
- GKS not in proper state (#1657)
- Validation Experiments in Docs (#1696)
- Some WENO5 operations are not Float32-friendly (#1771)
- Inconsistency in
Field
s constructors? (#1813) T
orθ
for conservative temperature andS
orsᴬ
for absolute salinity? (#1814)- Regular lat-lon grid can only be [-180, 180]? (#1815)
- Trying to use QuadGK for initial conditions (#1826)
- Leftover exports in
Oceananigans.Advection
? (#1841)
Merged pull requests:
- Nukes Couette and Lid-driven flows, and reintroduces figures for convergence tests (#1797) (@tomchor)
- Make broadcasting depend on CUDA default stream (#1803) (@glwagner)
- Use constant near-surface grid spacing in ocean wind mixing and convection example + fixes some docstrings (#1810) (@glwagner)
- Updates
validation/periodic_advection.jl
(#1811) (@navidcy) - Fix various docstrings (#1812) (@navidcy)
- Throw ArgumentError for window > interval in AveragedTimeInterval (#1816) (@glwagner)
- Homogenizes notation for temperature
T
and salinityS
(#1817) (@navidcy) - Allows
RegularLatitudeLongitudeGrid
with more general longitude range (#1819) (@navidcy) - CUDA v3.3.1 ⇒ v3.3.2 (#1820) (@navidcy)
- Adds grid as positional argument to WENO functions and extracts floating point type for arithmetic (#1821) (@glwagner)
- Update several packages (#1822) (@navidcy)
- Adds BoundaryCondition.classification and changes NormalFlow to Open (#1824) (@glwagner)
- Update CUDAKernels and KernelAbstractions (#1830) (@navidcy)
- Adds warning-less inner constructor for ImmersedBoundaryGrid (#1833) (@glwagner)
- Allow non-zero diffusive and viscous fluxes with ImmersedBoundaryGrid (#1835) (@glwagner)
- Improves and fixes inconsistencies in boundary conditions docs (#1836) (@glwagner)
- Update packages for docs (#1837) (@navidcy)
- Reorganized docs structure (#1838) (@tomchor)
- Better momentum/tracer advection docstrings and function names (#1839) (@navidcy)
- Cleanup of doctest files after building docs (#1840) (@navidcy)
- Homogenizes T, S notation in Docs/Buoyancy Models (#1842) (@navidcy)
- Bump to 0.58.9 (#1844) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 💄 v0.58.8
Oceananigans v0.58.8
Closed issues:
- Very different results for the dissipation with NetCDFOutputWriter using snapshots and time-averaged fields (#1517)
- Hydrostatic pressure integral appears to be incorrect on stretched grid (#1693)
- GPU CI is actually running tests on the CPU (#1794)
Merged pull requests:
- Improves phrasing in
RegularRectilinearGrid
docstring (#1789) (@maeckha) - Don't set
JULIA_CUDA_USE_BINARYBUILDER
; up to CUDA@3.3.1 (#1799) (@glwagner) - Guidelines for style in CONTRIBUTING.md and clarity about pull requests (#1801) (@glwagner)
- Avoid data dep race condition in CI (#1804) (@ali-ramadhan)
- Adds test for race condition in
compute!(::AveragedField)
(#1805) (@glwagner) - Use correct grid metric for hydrostatic pressure integral (#1806) (@glwagner)
- Create copies of AveragedTimeInterval for each output (#1807) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🎶 v0.58.7
Oceananigans v0.58.7
- Fixes a bug (possibly a race condition) with
AveragedField
on the GPU
Closed issues:
- Output of
AveragedField
is sometimes wrong on the GPU (#1767) calculate_Gw
forIncompressibleModel
withWENO5
andFloat32
cannot compile on GPU (#1780)- Is something missing from
Bounded
docstring? (#1791)
Merged pull requests:
- Custom
mean!
forAbstractReducedField
(#1769) (@glwagner) - Add shortcuts for zeroing out advection of/by
ZeroField
s (#1790) (@glwagner) - Fix a docstring (#1795) (@navidcy)
- Update staggered_grid.md (#1796) (@tomchor)
- Updates notation for pressure
φ
->p
in tendencies docstrings (#1798) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🩴 v0.58.6
Oceananigans v0.58.6
Closed issues:
- cell_advection_timescale should dispatch on
Flat
topologies (#1309) - Can't build docs locally based on instructions in "Contributor's guide" (#1542)
- 'plot_rates_convergence_advection.jl` is broken (#1739)
- Changing an example to use VerticallyStretchedGrids (#1752)
- Manual adjustment invalidates grid spacings in
VerticallyStretchedRectilinearGrid
? (#1753) - Change notation in Docs/Pressure Decomposition (#1757)
- WENO5 is much slower on GPUs after Julia 1.6 upgrade (#1764)
- Does
docs/make.jl
adds the right directory to path? (#1777) - Can units be
nothing
? (#1778)
Merged pull requests:
- GridFittedBoundary for IncompressibleModel and faster ImmersedBoundaryGrid with high-order advection (#1733) (@glwagner)
- Plots and fixes for benchmarks (#1746) (@hennyg888)
- Correct min_Δz for VerticallyStretchedGrids (#1751) (@tomchor)
- Fix calculation of upper halo grid spacings in VerticallyStretchedRectilinearGrid (#1754) (@glwagner)
- Move simulation tips from using KernelComputedFields to KernelFunctionOperation (#1758) (@tomchor)
- Fixing array incides to compute the correct rates of convergence (#1759) (@francispoulin)
- Docs: Change pressure symbol φ -> p (#1760) (@navidcy)
- Added show method to KernelFunctionOperation (#1761) (@tomchor)
- Use VerticallyStretchedGrid in the Wind mixing and convection example (#1762) (@tomchor)
- Fix typo in Docs/Spatial Operators (#1763) (@navidcy)
- Expands contributor guidelines (#1765) (@glwagner)
- Exponentiate with Int32 not Int64 (#1770) (@glwagner)
- Updates building docs instructions (#1772) (@navidcy)
- Move Publications section to index.md (#1773) (@tomchor)
- Include Flat topologies when talking about the grids in the docs (#1774) (@tomchor)
- Docs: Physics + Numerics before Model description (#1776) (@navidcy)
- Nuke float_type arg for IncompressibleModel (#1786) (@glwagner)
- Docs: adds Oceananigans' path first in
LOAD_PATH
order (#1787) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🇦🇶 v0.58.5
Oceananigans v0.58.5
- Removes manual manipulation of grid metrics in constructor for
VerticallyStretchedRectilinearGrid
that may have lowered the order of accuracy or invalidated some calculations
Closed issues:
- Allow
DistributedShallowWaterModel
to specify different boundary conditions (#1742)
Merged pull requests:
- Propagate boundary_conditions kwarg through DistributedShallowWaterModel (#1743) (@glwagner)
- Removes manual grid manipulation in VerticallyStretchedRectilinearGrid constructor (#1755) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - ☀️ v0.58.4
Oceananigans v0.58.4
Closed issues:
- Adaptive time stepping for VerticallyStretchedRectilinearGrid( ) (#1741)
- DiffusiveCFL doesn't work for VerticallyStretchedGrids with LES closures (#1749)
Merged pull requests:
- Updates package dependencies to latest version (#1745) (@navidcy)
- Fixed units in ocean wind mixing example (#1747) (@tomchor)
- Changed units in docstring for linear eq of state (#1748) (@tomchor)
- Unifying approaches for
min_Δxyz
(#1750) (@tomchor)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🏓 v0.58.3
Oceananigans v0.58.3
Closed issues:
- Cannot run examples within the Oceananigans environment (#1205)
- using warning (#1636)
- Update Performance Benchmarks in Docs and README (#1676)
- Cannot compute
AveragedField
s on the GPU when grid is above some size (#1684) - Model setup/Overview is biased towards
IncompressibleModel
(#1708) - Model
struct
definitions should bemutable
? (#1709) - What's the use of
clock
as argument in theModels
' constructors? (#1710) - Docs/Library:
Models
section is empty (#1713) - Docs: typo in tracer advection in
HydrostaticFreeSurfaceModel
(#1728)
Merged pull requests:
- Updates packages used for building the Docs (#1677) (@navidcy)
- Update instructions for building docs (#1707) (@navidcy)
ShallowWaterModel
API documentation + Add all models in Model setup/Overview (#1711) (@navidcy)- Update Docs/API Library section (#1714) (@navidcy)
- Try 2: ShallowWaterModel with ImmersedBoundaryGrid (#1718) (@glwagner)
- New features for high-order advection in the presence of immersed boundaries (#1719) (@glwagner)
- Docs/Bibliography patch (#1721) (@navidcy)
- Bunch o' fixes to get
ImmersedBoundaryGrid(RegularLatitudeLongitudeGrid)
working (#1723) (@glwagner) - Fixes typo in Docs/Physics/HydrostaticFreeSurfaceModel (#1729) (@navidcy)
- Introduce
Flat
to shallow water benchmarks (#1735) (@francispoulin) - Updated docs for IncompressibleModel to reflect arbitrary buoyant acceleration direction (#1736) (@tomchor)
- Make Immersed work with cubed sphere (#1737) (@christophernhill)
- ConvectiveAdjustmentVerticalDiffusivity (#1738) (@glwagner)
- upgraded CUDA.jl to version 3.3.0 (#1740) (@tomchor)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - v0.58.2
Oceananigans v0.58.2
- Fixes an error in the sign of the flux divergences for
AnisotropicBiharmonicDiffusivity
Closed issues:
- Basic Documentation for ShallowWaterModel? (#1460)
- Splash on a sphere small correction needed (#1646)
- Ensure that the vertical dimension in
ShallowWaterModel
isFlat
(#1660) - Is it time to literate
spherical_splash.jl
and include it in Docs? (#1668) - Simulation with AnisotropicBiharmonicDiffusivity blows up (#1702)
Merged pull requests:
TKEBasedVerticalDiffusivity
closure for boundary layer and strongly-stratified ocean mixing (#1664) (@glwagner)- Update spherical_splash.jl (#1665) (@jmbeckers)
- Fix cubed sphere velocity halo exchange at/near corners (#1669) (@ali-ramadhan)
- Remove work-around for JuliaGPU/CUDA.jl#370 (#1681) (@ali-ramadhan)
- Add
show
method forZeroField
(#1682) (@ali-ramadhan) - Fix name conflict in
Utils
(#1683) (@ali-ramadhan) - Increase tolerance in implicit free surface solver tests (#1686) (@ali-ramadhan)
- Update boundary_conditions.md (#1687) (@maeckha)
- Increase tolerance on
FieldTimeSeries
reduction tests (#1688) (@ali-ramadhan) - Further increase tolerance in implicit free surface solver tests (#1689) (@ali-ramadhan)
- Update Physics Docs for the various Models (#1690) (@navidcy)
- Delete spherical_splash.jl (#1691) (@navidcy)
- CompatHelper: bump compat for "MPI" to "0.18" (#1692) (@github-actions[bot])
- Fixes sign error in flux divergence of
AnisotropicBiharmonicDiffusivity
(#1703) (@glwagner) - Docs/Physics: Shallow Water Dynamics -> Shallow Water Model (#1715) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🌽 v0.58.1
Oceananigans v0.58.1
Merged pull requests:
- Replaces a leftover Julia 1.5 -> 1.6 (#1675) (@navidcy)
- Changed -> to to in the benchmark scripts (#1678) (@francispoulin)
- Fix
show
forKernelComputedField
(#1680) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🎲 v0.58.0
Oceananigans v0.58.0
- Oceananigans.jl now supports and requires Julia 1.6+.
Merged pull requests:
- Upgrade to Julia 1.6 (#1514) (@ali-ramadhan)
- No need for explicit dependence on ArrayInterface.jl anymore (#1674) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🧱 v0.57.3
Oceananigans v0.57.3
- Preliminary implementation of
ImmersedBoundaryGrid
andGridFittedBoundary
!
Closed issues:
show()
for VerticallyStretchedRectilinearGrId (#1637)- Docstrings for VerticallyStretchedRectilinearGrids aren't in the Docs (#1651)
- GKS not in proper state (#1657)
- Should
examples/mpi_shallow_water_turbulence.jl
be inexamples
? (#1658)
Merged pull requests:
- Fix
set!
for cubed sphere reduced fields (#1622) (@ali-ramadhan) - Fixes show for VerticallyStretchedRectilinearGrid on GPUs (#1638) (@glwagner)
- Prototyping
Oceananigans.OutputReaders
(#1641) (@ali-ramadhan) - Extends
getindex
forNothing
locations toAbstractField
(#1649) (@glwagner) - Validate the convergence rates for advection (#1650) (@francispoulin)
- Adds Grids/vertically_stretched_rectilinear_grid.jl in Docs (#1652) (@navidcy)
- Deletes needless comma in
getindex
for 0D fields (#1653) (@glwagner) - Basic
ImmersedBoundaryGrid
+GridFittedBoundary
implementation (#1654) (@glwagner) - Using Flat for shallow water benchmark (#1659) (@francispoulin)
- moving mpi example to validation folder (#1661) (@francispoulin)
- assert shallow water model is flat and add test (#1662) (@francispoulin)
- Bump to 0.57.3 (#1671) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 🚦 v0.57.2
Oceananigans v0.57.2
- Adds
VerticallyImplicitTimeDiscretization
forIsotropicDiffusivity
,AnisotropicDiffusivity
,HorizontallyCurvilinearAnisotropicDiffusivity
,AnisotropicMinimumDissipation
, andSmagorinskyLilly
TurbulenceClosures
andQuasiAdamsBashforth2
andRungeKutta3
time steppers
Closed issues:
- Use 0 default viscosity and diffusivity in
IsotropicDiffusivity
? (#1278) - Checkpoint is never created after upgrade (both with Julia 1.5 and 1.6) (#1547)
- KernelFunctionOperation <: AbstractOperation to enable fast reduction of custom kernel functions (#1623)
- I can't start Oceananigans normally anymore even starting from a fresh install (#1625)
- FieldSlicer for function output that return AbstractField (#1629)
- instal (#1635)
- Docstring for BatchedTridiagonalSolver may be incorrect (#1643)
- Viscous fluxes with
IsotropicDiffusivity
and spatially-varying viscosity are not correct (#1644)
Merged pull requests:
- Eddying aquaplanet (#1602) (@ali-ramadhan)
- Barotropic turbulence validation tests on RegularLatitudeLongitudeGrid (#1626) (@glwagner)
- New
KernelFunctionOperation <: AbstractOperation
for custom kernel functions (#1627) (@glwagner) - Support FieldSlicer for function output that returns AbstractField (#1631) (@glwagner)
- Fix bug in
viscous_flux_vz
forHorizontallyCurvilinearAnisotropicDiffusivity
(#1632) (@glwagner) - Use copyto! to transfer data from GPU to CPU (#1633) (@glwagner)
VerticallyImplicitTimeDiscretization
for vertical diffusion of tracers and momentum (#1639) (@glwagner)- Adapt
DiscreteForcing
for the GPU (#1642) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 4 years ago
Oceananigans.jl - 📍 v0.57.1
Oceananigans v0.57.1
This release pins ArrayInterface
at 3.1.6 to circumvent an issue compiling run!(simulation)
with 3.1.7. See
- https://github.com/JuliaArrays/ArrayInterface.jl/issues/142
- https://github.com/JuliaLang/julia/issues/40457
- #1601
Closed issues:
- "run!(simulation)" get stuck in Julia 1.5.4 (#1601)
Merged pull requests:
- Pin ArrayInterface at 3.1.6 (#1621) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🗺️ v0.57.0
Oceananigans v0.57.0
This update adds support for direct reductions of AbstractOperations
using Base.mapreducedim!
. This eliminates the need to calculate and store AbstractOperations
in ComputedField
prior to evaluating the average. This is breaking change, because we no longer compute averages in halo regions.
Closed issues:
- Passing abstract operations (and
ComputedField
?) tomapreduce
(#1422) - Grid metrics and differences as AbstractOperations (#1452)
- Simulation is getting freeze (#1613)
- Schematic not showing in Docs/Appendix/Staggered Grid (#1615)
Merged pull requests:
- Adds GridMetric AbstractOperation (#1607) (@glwagner)
- Miscellaneous updates to get ConformalCubedSphereGrid simulations running on the GPU (#1608) (@glwagner)
- Added information about CuArrays (#1609) (@tomchor)
- Adds support for using
Base.mapreducedim!
with AbstractField and AbstractOperations (#1611) (@glwagner) - Fix for schematic not showing in Docs/Appandix/Staggered Grid (#1616) (@navidcy)
- Adds missing
\cdot
in isotropic viscosity in Docs/Numerical Implementation/Spatial Operators (#1617) (@navidcy) - Fixes AnisotropicMinimumDissipation bug with
buoyancy=nothing
(#1619) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🥺 v0.56.0
Oceananigans v0.56.0
Breaking changes:
zF
kwarg forVerticallyStretchedRectilinearGrid
is now calledz_faces
Closed issues:
with_halo
throws an error for VerticallyStretchedRectilinearGrid (#1605)
Merged pull requests:
- KernelComputedField CubedSphere support plus internal CubedSpheres refactoring (#1603) (@glwagner)
- Hydrostatic model explicit vs. implicit free surface benchmarks + some small fixes (#1604) (@ali-ramadhan)
- Changes zF to z_faces for VerticallyStretchedGrid (#1606) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 📡 Oceananigans v0.55.1
Oceananigans v0.55.1
Merged pull requests:
- Broadcasting for AbstractField, AbstractReducedField, and AbstractOperations (#1596) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🌿 Oceananigans v0.55.0
Oceananigans v0.55.0
- Tests and fixes for FFTBasedPoissonSolver for topologies with Flat dimensions (#1560)
- Improved AbstractOperations that are much more likely to compile on the GPU, with better "location inference" for BinaryOperation (#1595, #1599)
Closed issues:
- Pressure solves on
GPU
are not ready forFlat
(#1554) CubedSphereData
andCubedSphereBoundaryConditions
abstractions (#1583)- Circulation operator needs to be updated at the cubed sphere corners (#1584)
- Non-traditional f-plane approximation (#1591)
Merged pull requests:
- Curvilinear anisotropic biharmonic diffusion (#1531) (@glwagner)
- Adds inline annotations, plus forced specialization to functions for diffusivities (?) (#1550) (@glwagner)
- Adds tests for Poisson solvers with Flat topologies (#1560) (@glwagner)
- PreconditionedConjugateGradientSolver and ImplicitFreeSurface refactor (#1575) (@glwagner)
- Changes fourth type parameter of AbstractField to architecture (#1578) (@glwagner)
- Compute vertical circulation at the cubed sphere corners (#1590) (@ali-ramadhan)
- Fix typo in coriolis_forces.md (#1592) (@francispoulin)
- Update eady_turbulence.jl (#1594) (@francispoulin)
- Defines many identity's to avoid recursion when compiling AbstractOperations (#1595) (@glwagner)
CubedSphereFaces
abstraction (#1597) (@ali-ramadhan)- Update docs/publications (#1598) (@navidcy)
- Improved and simplified BinaryOperation with "stubborn" location inference (#1599) (@glwagner)
- Bump to 0.55.0 (#1600) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🧊 Oceananigans v0.54.2
Oceananigans v0.54.2
Closed issues:
- Equation numbering in docs broken (#528)
- Add "GPU simulation tips" section to the docs (#1478)
- General question: how to build laminar flow with one particle (#1572)
Merged pull requests:
- Fully connected cubed sphere (#1522) (@ali-ramadhan)
- Switch Documenter.jl math engine to MathJax3 + Doc Fixes (#1530) (@ali-ramadhan)
- Includes simulation tips section in the docs (#1543) (@tomchor)
- Use
JULIA_DEBUG: "Documenter"
when building docs (#1577) (@ali-ramadhan) - Stop using
@hascuda
macro (#1589) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🌆 Oceananigans v0.54.1
Oceananigans v0.54.1
Closed issues:
- Maintain a list of publications using Oceananigans in the docs? (#973)
- Models with
Flat
dimensions still return NaN (#1023) - Bug when trying to show velocities from a model with Flat dimensions (#1026)
- Add a section on citing Oceananigans to README and docs (#1101)
- Reducing boilerplate in OutputWriter specification (#1171)
- Are we computing CFL correctly? (#1201)
- (θ, φ) or (λ, ϕ) or (λ, ϑ) for coordinates on a sphere? (#1437)
- Ensure we can use
TimeStepWizard
for all grids (#1447) - More bugs when using VerticallyStretchedGrid (#1466)
- Removing vertical halos for
ShallowWaterModel
(#1499) - Field slicers and StepRange (#1512)
- Move
FieldSlicer
toOceananigans.Fields
module (#1521) - Error while running a GPU code (#1533)
Merged pull requests:
- Benchmark abstract operations (#870) (@ali-ramadhan)
- Cubed sphere validation experiment (#1480) (@ali-ramadhan)
- Adaptive time-stepping on all grids (#1497) (@ali-ramadhan)
- Updating examples to include
Flat
(#1513) (@francispoulin) - Use (λ, φ) (
\lambda
,\varphi
) for geographical coordinates (#1515) (@ali-ramadhan) - Add "citing" section and list of publications using Oceananigans.jl (also update README) (#1518) (@ali-ramadhan)
- Missed changes to operators for lat-lon implicit solver (#1523) (@christophernhill)
- Moves FieldSlicer to Fields module (#1525) (@glwagner)
- Extends FieldSlicer to support StepRange indices (#1526) (@glwagner)
- changing imcompressible to incompressible (#1529) (@francispoulin)
- Curvilinear abstract derivatives (#1534) (@glwagner)
- Extends PrescribedVelocityField to support concrete Fields (not just functions) (#1535) (@glwagner)
- Implements
similar(f::Field)
andsimilar(r::ReducedField)
(#1539) (@glwagner) - ReducedField surface displacement (#1540) (@glwagner)
- Fixes bug in FourierTridiagonalPoissonSolver that swapped
ΔzF
andΔzC
(#1541) (@glwagner) - Update cubed sphere 32 grid file sha256 checksum (#1552) (@ali-ramadhan)
- Adding norm for fields with some tests. (#1557) (@francispoulin)
- Revert "Adding norm for fields with some tests." (#1562) (@ali-ramadhan)
- docs: instantiate main env separately (#1573) (@simonbyrne)
- Add compat bounds for Tullio.jl (#1576) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🍉 Oceananigans v0.54.0
Oceananigans v0.54.0
Breaking changes:
- When constructing boundary conditions, use the long form constructors:
FluxBoundaryCondition(...)
instead ofBoundaryCondition(Flux, ...)
and so on. - To tilt gravity, the
Buoyancy
keyword argument changed fromgravitational_unit_vector
tovertical_unit_vector
.
Closed issues:
- Exporting only long-form boundary condition constructors? (#1140)
- VerticallyStretchedRectilinearGrid producing NaNs (#1429)
- doctest failuring in making docs (#1455)
- Is the name gravitational_unit_vector misleading? (#1496)
grid
not identical tomodel.grid
(#1501)- lid_driven_cavity & thermal_bubble: ERROR: LoadError: ArgumentError: length(size) must be 2. (#1507)
Merged pull requests:
- Long-form boundary condition constructors (#1489) (@ali-ramadhan)
- Test NetCDF output for all grids (#1490) (@ali-ramadhan)
- Adds information about Δz on show function for VerticallyStretchedGrid (#1494) (@tomchor)
- Make Bickley example work on GPU (#1495) (@francispoulin)
- Change nomenclature of vertical direction for Buoyancy() (#1500) (@tomchor)
- Specify that the Coriolis parameter is to be calculated at vertical vorticity points (#1503) (@glwagner)
Flat
for shallow water model (#1504) (@francispoulin)- More proper MPI etiquette, overlapping halo communication, and better scaling benchmarks (#1505) (@ali-ramadhan)
- fjp/updating-benchmarks-with-shallow-water-model (#1508) (@francispoulin)
- First attempt to add tracers (#1510) (@francispoulin)
- Fix shallow water model time step benchmark (#1511) (@ali-ramadhan)
- Update lid-driven cavity validation experiment (#1516) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🪐 Oceananigans v0.53.2
Oceananigans v0.53.2
Closed issues:
- Ability to run in hydrostatic mode. (#72)
- Upgrade to single/unified stretched vertical grid spacing 3D elliptic solver? (#211)
- Setup with DifferentialEquations.jl time steppers? (#391)
- Checkpointer fails if boundary condition is a CuArray (#420)
- Avoid need for
data
in user-interaction with fields through dispatch onColon
indices (#458) - More friendly error messages when types are passed to
Model
instead of objects (#465) - Non-trivial bathymetry (#530)
- Free surface (#580)
- Compressible atmospheric model (#605)
- Architecture struct should hold thread-block layout information (#624)
- Functions common to many submodules should be defined at top-level (#641)
- Value and gradient boundary conditions cannot be set with a stretched grid (#667)
- Internal wave verification experiment (#674)
- User interface for adding topography/boundaries (#694)
- Documentation of vertically-stretched grid notation (#696)
- Simulation does not stop at stop_iteration, in general (#702)
- Making it easier to set up and configure scripts with checkpointing on clusters with time limits (#779)
- Translate
fill_halo_regions
kernels toKernelAbstractions
kernel language (#811) NetCDFOutputWriter
constructor fails if attributes or dimensions are not specified (#885)- Fill halo regions in set!(model, ...)? (#1150)
- Abstraction for domains tilted with respect to
gravitational_acceleration
(#1151) - Convert at least one or two examples to use NetCDF (#1157)
- Add documentation section on how to run tests (#1176)
- Sponge layer not behaving as expected (#1203)
- Buildkite for both pull requests and pushes? (#1263)
- about Halo point (#1286)
- Adapt cell_advection_timescale for ShallowWaterModel (#1307)
- GPU architecture and plan_forward_transform (#1317)
- Rename Bickley_jet_shallow_water to shallow_water_Bickley_jet? (#1470)
- Triggers tagbot to register update to v0.53.1 (#1473)
- shallow water on
GPUs
(#1477)
Merged pull requests:
- Support for tilting gravity (#1242) (@ali-ramadhan)
- Conformal cubed sphere (#1417) (@ali-ramadhan)
- Distributed shallow water model (#1430) (@ali-ramadhan)
- Flux boundary conditions for HydrostaticFreeSurfaceModel and barotropic gyre validation experiment (#1433) (@glwagner)
- Improved fill_halo_regions (#1444) (@glwagner)
- CompatHelper: bump compat for "MPI" to "0.17" (#1472) (@github-actions[bot])
- CompatHelper: add new compat entry for "CubedSphere" at version "0.1" (#1474) (@github-actions[bot])
- CompatHelper: add new compat entry for "Rotations" at version "1.0" (#1475) (@github-actions[bot])
- Changing the name to shallow water Bickley jet (#1476) (@francispoulin)
- Revert "Improved fill_halo_regions" (#1484) (@ali-ramadhan)
- Generalizes budget tests for Flux boundary conditions to every topology and boundary (#1486) (@glwagner)
- Some bug fixes for VerticallyStretchedGrids (#1487) (@tomchor)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - ✈️ Oceananigans v0.53.1
Oceananigans v0.53.1
Closed issues:
- buildkite with Julia v1.5.4? (#1461)
- cell_advection_timescale is only defined for
RegularRectilinearGrid
(#1465) - Error in update (#1468)
Merged pull requests:
- Shallow Water Model Bickley Jet Example (#1305) (@francispoulin)
- Implicit free-surface code for discussion and then merging.... (#1418) (@christophernhill)
- Major refactor of TurbulenceClosures module plus more tests for HydrostaticFreeSurfaceModel (#1449) (@glwagner)
- VerticalVorticityField (#1454) (@glwagner)
- Buildkite with Julia v1.5.4 (#1463) (@navidcy)
- Some clarifications + fix typos in Bickley example (#1464) (@navidcy)
- Introduce timescale calculations for VerticallyStretched grids (#1467) (@tomchor)
- Clean up docs Project.toml (#1469) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🕸️ Oceananigans v0.53.0
Oceananigans v0.53.0
Closed issues:
- PrescribedVelocities type for tracer advection problems (#958)
- TurbulenceClosures module needs to be cleaned up (#1002)
- NaN error (#1432)
- Evaluating suitability for fish larvae simulation (#1438)
Merged pull requests:
- MPI distributed parallelism (#590) (@ali-ramadhan)
- Curvilinear diffusion validation experiments (#1423) (@glwagner)
- Typo in Contributors guide (#1425) (@navidcy)
- PrescribedVelocityFields for HydrostaticFreeSurfaceModel (#1426) (@glwagner)
- Nuke deprecated RozemaAnisotropicMinimumDissipation and BlasiusSmagorinsky (#1428) (@glwagner)
- Small typos (#1431) (@christophernhill)
- Fix a few typos (#1434) (@charleskawczynski)
- Make discrete transform plans more compact (#1435) (@charleskawczynski)
- Fixes sign error in HydrostaticSphericalCoriolis! (#1439) (@glwagner)
- Adding in terms to set the flux boundary conditions (#1441) (@francispoulin)
- fix advection fluxes in
ShallowWaterModel
(#1442) (@francispoulin) - Adds a bctype_str method for Nothing boundary conditions (#1445) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🕷 Oceananigans v0.52.1
Oceananigans v0.52.1
Bug fixes for RegularLatitudeLongitudeGrid
and HydrostaticSphericalCoriolis
.
Closed issues:
- Define
minimum
andmaximum
forField
(#1117) - Rename
NonDimensionalModel
? (#1411) - Warnings when starting Oceananigans 0.52 (#1419)
Merged pull requests:
- Bugfixes for HydrostaticSphericalCoriolis and solid body rotation validation experiment (#1404) (@glwagner)
- User-friendly field reductions (#1412) (@ali-ramadhan)
- Rename NonDimensionalModel to NonDimensionalIncompressibleModel (#1413) (@tomchor)
- Test and fix bugs in
RegularLatitudeLongitudeGrid
(#1415) (@ali-ramadhan) - No need for
CUDA.@allowscalar
when runningNaNChecker
(#1416) (@ali-ramadhan) - Fix warnings about conflicting existing identifiers (#1424) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🥞 Oceananigans v0.52.0
Oceananigans v0.52.0
- New
WindowedSpatialAverage
diagnostic for outputting averages of a subset of the domain by @tomchor! - Lots more stuff is now exported by Oceananigans so you should be able to run most scripts with just
using Oceananigans
. No need to import lots of submodules anymore!
Closed issues:
- Move
src/Utils/units.jl
to its ownOceananigans.Units
submodule (#1075) - Where to export schedules and output writers from? (#1131)
- Proposal to export the entire user interface at the top-level module (#1132)
- Creating a easy way to compute an average on a subset of the domain (#1392)
Merged pull requests:
- Adds WindowedSpatialAverage (#1397) (@tomchor)
- All-purpose
using Oceananigans
(#1406) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🏖️ Oceananigans v0.51.0
Oceananigans v0.51.0
Major features:
- Experimental support for immersed boundaries by @whitleyv!
- Experimental support for
HydrostaticFreeSurfaceModel
onRegularLatitudeLongitudeGrid
! VerticallyStretchedRectilinearGrid
now works for all topologies on the CPU and GPU!IncompressibleModel
with(Periodic, Periodic, Bounded)
topologies are actually faster with aVerticallyStretchedRectilinearGrid
.- New
cleanup
keyword argument forCheckpointer
to delete old checkpoint files. - You can now run your realistic simulations with
DateTime
s andTimeDate
s.
Closed issues:
- Unexpected behavior (bug?) when using background fields in AbstractOperations (#1323)
- Change "field dependencies" to "computed_dependencies" in KernelComputedField? (#1369)
- Zero result when using pressure derivatives in KernelComputedFields (#1401)
Merged pull requests:
- Add support for only keeping the latest checkpoint (#1341) (@ali-ramadhan)
- Add basic immersed boundary implementation (#1368) (@whitleyv)
- Adds HydrostaticSphericalCoriolis (#1384) (@glwagner)
- Updates VectorInvariant advection scheme for curvilinear grids (#1391) (@glwagner)
- Time step alignment and NetCDF output for
DateTime
andTimeDate
(#1396) (@ali-ramadhan) - Fixes for RegularLatitudeLongitudeGrid plus a spherical splash example (#1399) (@glwagner)
- Changed field_dependencies to computed_dependencies in KernelComputedField (#1402) (@tomchor)
- Vertically stretched grids for all topologies on CPUs and GPUs (#1403) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🦘 Oceananigans v0.50.0
Oceananigans v0.50.0
Breaking changes:
Renames RegularCartesianGrid
to RegularRectilinearGrid
and VerticallyStretchedCartesianGrid
to VerticallyStretchedRectilinearGrid
.
Closed issues:
- Our grids are usually not Cartesian (#1377)
Merged pull requests:
- Regular latitude-longitude grid (#1380) (@ali-ramadhan)
- Change Cartesian -> rectilinear (#1393) (@navidcy)
- Nuke vertically stretched sandbox (#1395) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🧪 Oceananigans v0.49.0
Oceananigans v0.49.0
Checkpoint release including documentation fixes and very experimental support for curvilinear grids, a vertically-stretched rectilinear grid, and a preconditioned conjugate-gradient solver.
Closed issues:
- Strategy for implementing and testing models with vertically stretched grids (#471)
- NetCDFOutputWriter docstring is mangled (#1275)
- Docstring for KernelComputedField is incorrect (#1370)
Merged pull requests:
- Adds boundary conditions to ComputedField and KernelComputedField (#1340) (@glwagner)
- Vertically stretched grid (finally) (#1348) (@ali-ramadhan)
- Adding a first form on PCG pressure solver (#1360) (@christophernhill)
- VectorInvariant momentum advection "scheme" and Bickley jet validation example (#1366) (@glwagner)
- Adds a few areas and volumes needed for correct Coriolis terms on curvilinear grids (#1371) (@glwagner)
- Horizontal divergence and vertical vorticity operators (#1374) (@glwagner)
- HorizontalCurvilinearDiffusivity for dissipation on horizontally-curvilinear grids (#1375) (@glwagner)
- AbstractRectilinearGrid and curvilinear horizontal grid spacing and gradient operators (#1376) (@glwagner)
- Changed KernelComputedField's docstring to the user-facing dfunction (#1379) (@tomchor)
- Fixes formatting issues in kernel_computed_field.jl (#1382) (@glwagner)
- Update netcdf_output_writer.jl (#1383) (@tomchor)
- Correct pressure gradients for curvilinear grids in HydrostaticFreeSurfaceModel (#1385) (@glwagner)
- Update Documenter v0.26.2 (#1387) (@navidcy)
- Bump v0.49.0 (as a checkpoint) (#1388) (@ali-ramadhan)
- Adds instruction for building docs locally in the Contributors Guide (#1389) (@navidcy)
- Remove duplicate include (#1390) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🛶 Oceananigans v0.48.0
Oceananigans v0.48.0
Breaking changes:
- The
Oceananigans.SurfaceWaves
module has been renamed toOceananigans.StokesDrift
and theIncompressibleModel
keyword argumentsurface_waves
has been renamed tostokes_drift
for clarity.
Closed issues:
- Change
IncompressibleModel.surface_waves
toIncompressibleModel.stokes_drift
? (#1331) - CompatHelper is broken (#1344)
- Possibly out-of-date docs page (#1358)
Merged pull requests:
- CompatHelper with Julia v1.5 (#1345) (@navidcy)
- Changed notation from surface_waves to stokes_drift (#1346) (@tomchor)
- CompatHelper: bump compat for "StructArrays" to "0.5" (#1347) (@github-actions[bot])
- Begins the implementation of Oceananigans.HydrostaticFreeSurfaceModel for general circulation modeling (#1349) (@glwagner)
- Implements boundary_conditions for ReducedField (#1350) (@glwagner)
- Deletes reference to PressureSolver in hydrostatic_free_surface_model (#1351) (@glwagner)
- Fully explicit free surface algorithm and geostrophic adjustment example (#1352) (@glwagner)
- Update make_example.jl (#1353) (@navidcy)
- Conservatively adapt ReducedField for GPUs (#1354) (@glwagner)
- Fix typo in Geostrophic Adjustement example (#1357) (@navidcy)
- CompatHelper: bump compat for "JLD2" to "0.4" (#1359) (@github-actions[bot])
- Add missing import for shallow water model (#1363) (@ali-ramadhan)
- Removed outdated model_setup/time_stepping from docs (#1367) (@tomchor)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🐎 Oceananigans v0.47.1
Oceananigans v0.47.1
Update docs Grids section removing discussion about Flat
topologies (since currently it's broken) and also removing discussion about restrictions for certain topology combinations.
Merged pull requests:
- Updates Docs (Grids section) (#1343) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🛣️ Oceananigans v0.47.0
Oceananigans v0.47.0
All topologies are now supported on CPUs and GPUs. In particular, (Periodic, Bounded, Bounded)
channel simulations on the GPU are ~2x faster now.
Closed issues:
- Poisson solvers for all types of domains (triply/doubly periodic, channels, boxes) and grids (regular, stretched) (#586)
- Comments in pressure solvers are incorrect (#593)
- Implicit design of pressure solver hinders interpretability (#594)
- Running on GPU with topology = (Bounded, Bounded, Bounded) (#1007)
- Run convergence tests on GPU (#1216)
- one_dimensional_cosine_advection_diffusion.jl fails (#1273)
- Calculation of PV using KernelComputedField fails when interpolating one of the fields (#1324)
Merged pull requests:
- Convergence test and validation experiment Buildkite pipeline (#1223) (@ali-ramadhan)
- Fixes bug in internal wave example that resulted in mangled text (#1322) (@navidcy)
- Add update_state! to set_shallow_water_model.jl (#1325) (@francispoulin)
- Creating the time-step wizard for shallow water model. (#1328) (@francispoulin)
- Deletes unused code in ShallowWaterModel (#1329) (@glwagner)
- Adds div_uhvh for calculating mass flux divergence in h_tendency (#1330) (@glwagner)
- Tiny doc typo in kernel_computed_fields (#1335) (@christophernhill)
- Fixed inconsistency in docs for NetCDFOutputWriter (#1337) (@tomchor)
- Faster, cleaner pressure solvers for all topologies on CPUs and GPUs (#1338) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 4 years ago
Oceananigans.jl - 🌱 Oceananigans v0.46.1
Oceananigans v0.46.1
Merged pull requests:
- Revive examples and bump v0.46.1 (#1319) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - ⚛️ Oceananigans v0.46.0
Oceananigans v0.46.0
Breaking changes:
- The
Cell
location has been renamed toCenter
which is a clearer name for cell centers on the staggered grid.
Major features:
- Support for online Lagrangian particle tracking with custom particles and tracked field properties (see model setup docs, examples incoming!).
- Support for higher-order advection schemes, forcing functions, and different time steppers for shallow water models.
- New
KernelComputedField
for fields that need to be computed using a KernelAbstractions.jl CPU/GPU kernel. - Abstract operations are now conditionally computed as needed to avoid wasted computations.
- Numerous bug fixes and documentation improvements.
Closed issues:
- Change Cell to 'Center' and Face to 'Interface' to specify Field locations? (#414)
- Lagrangian particle trajectories (#511)
- Animations in Docs don't show up on Safari Mac OS X (#944)
- Make announcement post on Discourse (#1111)
- Include units and longname for time in netcdf output (#1208)
- Abstraction for using "custom" kernels to compute fields (plus an example)? (#1246)
- The Great Debate: NetCDF vs JLD2 (#1261)
- Tests fail because shallow water model with h=0 blows up when time stepped (#1262)
- Example in Field docstring is mangled (#1268)
- Aborted (core dumped) on tutorial (#1281)
- ShallowWaterModel needs more options (#1284)
- ERROR: importing Flux into Main conflicts with an existing identifier (#1285)
- "NaN error in u" when trying to simulate open-ocean convection problem (#1289)
- Trying to calculate Richardson number using GPU kernel is failing at the bottom boundary (#1290)
- Do Oceananigans and magnetohydrodynamics mix? (#1304)
- Adding background fields to perturbations fails when writing to NetCDF (#1308)
- Including installation of required packages in examples creates clutter in Docs (#1315)
Merged pull requests:
- Lagrangian particle tracking (#1091) (@ali-ramadhan)
- Set h=1 in shallow water time stepping tests (#1264) (@ali-ramadhan)
- Adding advection schemes into Shallow Water (#1266) (@francispoulin)
- Fixes mangled docstring for Field (#1269) (@glwagner)
- Adds support for advection=nothing (#1270) (@glwagner)
- Timesteppers and forcing functions for shallow water models (#1291) (@ali-ramadhan)
- Adds kernel computed field (#1293) (@tomchor)
- CompatHelper: bump compat for "KernelAbstractions" to "0.5" (#1295) (@github-actions[bot])
- Update to CUDA v2.4.0 (#1296) (@ali-ramadhan)
- Adds explanatory remark on KH power-method (#1298) (@navidcy)
- Creates long_name and units attributes for the time dimension in netcdf outputs (#1299) (@tomchor)
- Implements compute_at! pattern for conditional computation (#1301) (@glwagner)
- Always take positive time steps (#1303) (@ali-ramadhan)
- Animations in Docs go back in using mp4 instead of gif (#1306) (@navidcy)
- Changed every instance of Cell in .jl files to Center using sed (#1314) (@tomchor)
- Avoid executing the lines to install dependencies within examples (#1316) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🧄 Oceananigans v0.45.2
Oceananigans v0.45.2
Closed issues:
- set! should enforce incompressibility when setting an initial condition for an Incompressible model (#1027)
- Halos should be filled as part of
set!
(#1252)
Merged pull requests:
- Introducing two dimensional shallow water model (#1258) (@francispoulin)
- Adds incompressiblity enforcement and state update to set! (#1259) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🧅 Oceananigans v0.45.1
Oceananigans v0.45.1
Closed issues:
- Kill simulation after a crash (#1196)
- Do we need compat "^1.4" for OffsetArrays? (#1233)
- Examples are NaNing out 😱 (#1247)
- Run simulation callback/progress function at iteration 0? (#1250)
- Time step should be updated before simulation callback/progress function (#1251)
- Taking a time step of 0 causes the model to NaN out (#1254)
Merged pull requests:
- Add NaN checker to simulations by default (#1198) (@ali-ramadhan)
- Update OffsetArrays compat entry to v1.4+ (#1240) (@ali-ramadhan)
- Handle edge case of Δt = 0 for
IncompressibleModel
(#1255) (@ali-ramadhan) - Check for NaNs in the model's first field (#1257) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🗝️ Oceananigans v0.45.0
Oceananigans v0.45.0
This release fixes an important bug affecting GPU simulation with odd-sized wall-bounded dimensions.
You should upgrade to Oceananigans v0.45.0 as soon as possible!
Also, Oceananigans simulations will now shorten the time step as needed to align model output with each output writer's schedule.
Closed issues:
- Deploy documentation through Buildkite. (#1051)
- Buildkite not cleaning up environments (#1055)
- Switch to using DocumenterCitations.jl (#1096)
- contributing to Oceananigans (#1153)
- Surface artifacts in GPU simulations (#1170)
- Travis-CI (#1186)
- Model constructor should check that inputs are named tuples. (#1204)
- NetCDFOutputwriter clobber mode is ignored when the file already exists. (#1215)
- Upgrade to CUDA v2.3.0? (#1220)
- Unexpected behavior in NetCDF writer after upgrade to 0.44.2 (#1227)
- Is compat right for OffsetArrays? (#1233)
Merged pull requests:
- Switch to using DocumenterCitations.jl (#1202) (@ali-ramadhan)
- Error if expected input is not a NamedTuple (#1206) (@ali-ramadhan)
- Goodnight Travis (#1207) (@ali-ramadhan)
- Deploy docs from Buildkite (#1209) (@ali-ramadhan)
- Generalize RungeKutta3 and QuasiAdamsBashforth2 for any model (#1210) (@francispoulin)
- Fix speed plot in
two_dimensional_turbulence.jl
(#1211) (@ali-ramadhan) - Align time step with output writing and simulation stop (#1213) (@ali-ramadhan)
- Respect create/clobber mode in NetCDFOutputWriter (#1219) (@ali-ramadhan)
- Update packages (#1221) (@navidcy)
- Properly clean up Buildkite environments (#1224) (@ali-ramadhan)
- Patch security loophole (#1225) (@ali-ramadhan)
- Fix math in Leith documentation (#1226) (@kburns)
- Fix index permutation for GPU DCT when dimension size is odd (#1228) (@ali-ramadhan)
- Open/close NetCDF at the start/end of
run!
(#1229) (@ali-ramadhan) - Bump v0.45.0 (#1231) (@ali-ramadhan)
- Use latest Julia in buildkite pipeline (#1236) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🚧 Oceananigans v0.44.2
Oceananigans v0.44.2
Closed issues:
- Multiple warnings about "incremental compilation may be fatally broken for this module" (#537)
- Change contributor's guide to ColPrac (#1044)
- More powerful and elegant benchmarking framework (#1088)
- When multithreading use 4 times more threads for FFTW (#1113)
run!(simulation, pickup=true)
should work even with zero checkpoints (#1159)- NetCDF output writer should append by default if file already exists (#1160)
- invalid assignment location (#1164)
- Making room for
ShallowWaterModel
(#1165) - Accidental double hashed comments in two_dimensional_turbulence.jl (#1167)
- Oceananigans should complain if boundary conditions are inconsistent (#1177)
- CUDA ERROR (#1189)
- Unrealistic Temperatures? (#1190)
- Which topologies are actually supported? (#1192)
- Minimum time step for
TimeStepWizard
(#1197)
Merged pull requests:
- Trilinear
interpolate
functionality for fields (#1090) (@ali-ramadhan) - Use 4x more threads for FFTW (#1120) (@ali-ramadhan)
- Update convecting plankton example to more closely resemble Taylor and Ferrari (2011) (#1128) (@glwagner)
- Switch to ColPrac: Contributor's Guide on Collaborative Practices for Community Packages (#1155) (@ali-ramadhan)
- Update TagBot.yml (#1158) (@navidcy)
- Allow
pickup=true
with zero checkpoints (#1161) (@ali-ramadhan) - Append to NetCDF file if it already exists (#1162) (@ali-ramadhan)
- Fix erroneous double hashes in two_dimensional_turbulence.jl example (#1168) (@navidcy)
- New benchmarking framework (#1169) (@ali-ramadhan)
- Makes room for ShallowWaterModels (#1174) (@glwagner)
- Explicit install of deps in Examples (#1184) (@navidcy)
- CompatHelper: bump compat for "JLD2" to "0.3" (#1185) (@github-actions[bot])
- Slight terminology upgrade in eady example (#1187) (@navidcy)
- A new ShallowWaterModel type (#1188) (@francispoulin)
- Update grids.md (#1193) (@tomchor)
- Time stepping tests for ShallowWaterModel (#1195) (@francispoulin)
- Teach wizard about minimum time step (#1199) (@ali-ramadhan)
- Bump v0.44.2 (#1200) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🌫️ Oceananigans v0.44.1
Oceananigans v0.44.1
- New example: Stratified Kelvin-Helmholtz instability with stability analysis!
- Named tuple support for
NetCDFOutputWriter
. - Some bug fixes.
Closed issues:
- Cleaning up Simulation and run! (#1095)
- Do we need a discourse / zulip / Google group / mailing list / other kind of public forum or chat service? (#1098)
- TimeStepWizard doesn't like function diffusivities (#1104)
- Check that
architecture
is correct when constructing anIncompressibleModel
(#1118) - Stop adapting
OffsetArray
in Oceananigans (#1141)
Merged pull requests:
- Blending magic and diffusivities-as-functions (#1105) (@glwagner)
- Upgrade to CUDA v2 (#1106) (@ali-ramadhan)
- Remove "colorbar oscillations" in examples (#1107) (@navidcy)
- Actually they're validation experiments, not verification experiments (#1108) (@ali-ramadhan)
- Fix bug in plotting of averaged momentum fluxes in Langmuir turbulence example (#1114) (@glwagner)
- Make sure users always construct a model with an
AbstractArchitecture
(#1121) (@ali-ramadhan) - Adds Kelvin-Helmholtz instability example (#1125) (@navidcy)
- "stable" url should be the canonical for Docs (#1126) (@navidcy)
- Langmuir Turbulence in the Ocean has a mixed layer (#1129) (@glwagner)
- NetCDFOutputWriter accepts named tuples now (#1139) (@ali-ramadhan)
- Update packages and one less adapt (#1142) (@ali-ramadhan)
- Some further enhancements for the KH example (#1144) (@navidcy)
- Brings back sanity in KH example (#1147) (@navidcy)
- Fixes broken admonition in langmuir_turbulence.jl (#1148) (@glwagner)
- Bump v0.44.1 (#1152) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🛻 Oceananigans v0.44.0
Oceananigans v0.44.0
Adds support for "picking up" a simulation from a checkpoint via the keyword pickup=true
, pickup=checkpoint_iteration::Int
and pickup=checkpont_filepath::String
in run!(simulation)
(#1082)
Adds a function set!(model, checkpoint_filepath)
for "setting" a model state to the state recorded in a checkpoint file (#1082)
Adds support for "field-dependent" boundary conditions similar to field-dependent forcing terms (#1093)
Beautifies and cleans up many of the examples, including getting them to build faster on Travis (#1099)
Closed issues:
- Abstraction for "equation" for performance, code clarity, memory footprint reduction, and powerful user interface (#259)
HorizontalAverage
diagnostic leaves halo regions zeroed out (#427)- Documentation: typo in vertical integrals (numerical section) (#596)
- Resume from checkpoint should be integrated with model constructor (#602)
- Outputting abstract operation computations to NetCDF (or disk) is cumbersome (#653)
- Mixing plotting + animations + simulations produces bad examples (#676)
- "Field-dependent" boundary condition functions (#897)
- Halo regions for fields cannot be filled without references to other model fields (#971)
- ComputedField needs nice show method (#1030)
- Halo regions need to be filled prior to computations and abstract operations (#1063)
- Feature idea: keyword "pickup" in
run!
(#1068) - Execute
precomputations!
after a time-step is complete, rather than before (#1069) - Use
-O1
or even-O0
to reduce compile time for faster testing? (#1076)
Merged pull requests:
- Fix Eady turbulence example (#1072) (@navidcy)
- Set
-O0
when testing (#1078) (@ali-ramadhan) - Use mean! not sum! for AveragedField + nuke zero_halo_regions (#1081) (@glwagner)
- New checkpointer features: set! and simulation "pickup" (#1082) (@glwagner)
- Postcompute, not precompute (#1083) (@glwagner)
- Field slicing with floats and other numbers (#1084) (@ali-ramadhan)
- Update badges in README (#1092) (@ali-ramadhan)
- Field-dependent boundary conditions (#1093) (@glwagner)
- Typo in Eady example (#1094) (@navidcy)
- Remove dollar signs used for latexing in Docs (#1097) (@navidcy)
- Beautify the examples (#1099) (@glwagner)
- CompatHelper: add new compat entry for "Glob" at version "1.3" (#1102) (@github-actions[bot])
- Bump version to 0.44.0 (#1103) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 📅 Oceananigans v0.43.0
Oceananigans v0.43.0
Release notes:
-
Fixes a bug in
TwoDimensionalLeith
(PR #1073, issue #1034). Previously tests were being skipped due to extreme slowness. Now we run tests on GPU (but not CPU, where the closure is much slower to compile). -
Rewrites the interface for "scheduling" output and diagnostics (PR #1070). Previously output and diagnostics were usually scheduled by specifying either
time_interval
oriteration_interval
kwargs in the constrcutor for the object in question. Now, the relevant kwarg is calledschedule
and takes a callableAbstractSchedule
object (or any user-defined functionfunc
that returnstrue
orfalse
depending on the single argumentfunc(model)
). This design is more flexible and extensible, and also simplifies underlying code. Four schedules are provided:TimeInterval(interval)
IterationInterval(interval)
WallTimeInterval(interval)
AveragedTimeInterval(interval; window=interval, stride=1)
(for time-averaging output).
Breaking changes:
-
Output writers and diagnostics no longer have the keyword arguments
time_interval
oriteration_interval
. The most commonly-used features that are affected areJLD2OutputWriter
,NetCDFOutputWriter
, andCheckpointer
.JLD2OutputWriter
andNetCDFOutputWriter
no longer have the kwargstime_averaging_window
andtime_averaging_stride
. The specific syntax changes are:time_interval=T
becomesschedule=TimeInterval(T)
iteration_interval=I
becomesschedule=IterationInterval(I)
time_interval=T, time_averaging_window=W
becomesschedule=AveragedTimeInterval(T, window=W)
.
Closed issues:
- Should we change 'OutputWriters' to 'Output'? (#706)
- Possible elegant solution for compiling kernels with fields as arguments (#722)
- Different output intervals for different field outputs using JLD2OuputWriter (#826)
- More general criteria for writing data, checkpointing, calculating diagnostics, printing progress statements, etc (#845)
- Better criterion for writing output (#853)
- Ensure BinaryOperations between fields occur at any of their common locations? (#959)
JLD2OutputWriter
needs a nice show method (#1019)- Bug in TwoDimensionalLeith closure (#1034)
- ContinuousForcing doesn't compile when diffusivities is not
nothing
(#1059)
Merged pull requests:
- Adapt Field, AveragedField, and ComputedField for GPU, round 2 (#1057) (@glwagner)
- Omit diffusivities from model_fields (#1061) (@glwagner)
- AbstractSchedules for scheduling output and diagnostics (#1070) (@glwagner)
- Don't do time-stepping tests on Travis (#1071) (@glwagner)
- Fix Leith closure (#1074) (@glwagner)
- Bump v0.43.0 (#1077) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🍞 Oceananigans v0.42.0
Oceananigans v0.42.0
Added support for time averaging to NetCDFOutputWriter
and revamped how field slicing is done.
Breaking changes:
NetCDFOutputWriter
constructor: Thefilename
keyword argument is nowfilepath
.NetCDFOutputWriter
constructor: To specify slices, pass aFieldSlicer(i, j, k; with_halos)
instead of using thexC
,xF
,yC
,yF
,zC
, andzF
keyword arguments.
Closed issues:
Computation
has result at wrong location (#876)- Split up TEST_GROUP=model? (#1048)
- Initializing environment on Buildkite can be a testing bottleneck (#1056)
Merged pull requests:
- Time averaging and
FieldSlicer
forNetCDFOutputWriter
(#1040) (@ali-ramadhan) - Split-explicit Buildkite (#1064) (@ali-ramadhan)
- Fix
pipeline.yml
(#1066) (@ali-ramadhan) - Bump v0.42.0 (#1067) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🎑 Oceananigans v0.41.0
Oceananigans v0.41.0
Oceananigans.jl fully supports Julia 1.5 now!
Major changes:
- Support for setting background fields. See background fields section of the model setup docs for more details and examples.
- Shiny new Eady turbulence example that involves setting background fields.
- A few bug fixes.
Closed issues:
- Obscure GPU error when time stepping a model with Julia 1.5 and Oceananigans v0.33.0 (#828)
- Background tracer distributions and advecting velocity fields (#960)
FieldSlicer
does not convert to parent indices for integer indices (#1028)- Run on GPU without network access (#1035)
- Stop testing on GitLab CI (#1049)
Merged pull requests:
- Attempting to get Oceananigans to work on GPUs with Julia 1.5 (#997) (@ali-ramadhan)
- Prescribed background velocity and tracer fields (#1014) (@glwagner)
- Use allowscalar when converting output (#1025) (@glwagner)
- Proper FieldSlicer indices (#1029) (@glwagner)
- Better Buildkite CI pipeline (#1031) (@ali-ramadhan)
- Bump v0.41.0 (#1032) (@ali-ramadhan)
- Teach Oceananigans about plural nouns (#1033) (@ali-ramadhan)
- Run Buildkite cleanup step on Tartarus (#1038) (@ali-ramadhan)
- Update JLD2 to v0.2.4 (#1039) (@ali-ramadhan)
- Updates buildkite pipeline (#1047) (@glwagner)
- Stop testing on GitLab CI (#1054) (@ali-ramadhan)
- Reduce the size of the eady_turbulence.jl script test (#1058) (@glwagner)
- Update README badges (#1060) (@ali-ramadhan)
- Update compat entries (#1065) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🪔 Oceananigans v0.40.0
Oceananigans v0.40.0
- Support for
Flat
dimensions. See the grid section of the model setup documentation for more details and examples. - New advection schemes:
UpwindBiasedThirdOrder
andUpwindBiasedFifthOrder
. - Grid halos are automatically adjusted on model construction depending on advection scheme and turbulence closure used.
- Improved two-dimensional turbulence example.
- Fixed Langmuir turbulence example.
- Numerous bug fixes.
Closed issues:
- Only perform operations as needed depending on model dimension. (#35)
Float32
tracer conservation test not actuallyFloat32
(#487)- Utilities for calculating buoyancy and density offline (#516)
- Floating point equality checking in 2D Leith (#535)
- Model not enforcing zero vertical shear at top and bottom (do we expect this?) (#540)
- Deepening mixed layer verification experiment (#547)
NetCDFOutputWriter
output does not include global attributes (#576)- Incompressibility and pressure projection step test (#673)
- ERROR: LoadError: UndefVarError: SolutionBoundaryConditions not defined (#686)
- Cubic lattice grid with missing nodes (#743)
- An example with stable mixed layer depth? (#749)
- questions relating to Oceananigans.jl (#770)
- Possible bug in checkpointing? (#778)
- test Oceananigans returns CUDA error depsite being able to run examples on CPU and GPU (#788)
- Is any way to simulate the hydrodynamic behaviour of a bioreactor with Oceananigans.jl? (#830)
- Test failing on GPU (#882)
- Eliding differences, interpolation, and
fill_halo_regions
forFlat
dimensions (#902) - Stop simulation when output is NaN (#938)
- Model immediately turns to
NaN
after 1 time step when grid length is zero alongFlat
dimensions (#940) - Model constructor should check that halos are big enough for chosen advection scheme and turbulence closure (#941)
- Bug(s) somewhere in
UpwindBiasedThirdOrder
left-biased interpolation functions (#986) - Requiring Lz and Nz for two-dimensional grids is a bit counterintuitive (#1001)
- Langmuir example broken (#1004)
- Passing a
Clock
torestore_from_checkpoint
gets overwritten by clock from checkpoint file (#1008) - Cannot use
Forcing
s withfield_dependencies
on GPU with Oceananigans v0.39.0 (#1010)
Merged pull requests:
- Fixes bug in UpwindBiasedThirdOrder advection scheme (#993) (@glwagner)
- Adds naive (non-WENO) fifth order advection scheme (#994) (@glwagner)
- Better two-dimensional turbulence Docs example (#1000) (@navidcy)
- More support for
Flat
dimensions (#1003) (@glwagner) - Update langmuir_turbulence.jl (#1005) (@glwagner)
- Add Buildkite CI pipeline (#1006) (@ali-ramadhan)
- Fix bug in
restore_from_checkpoint
(#1009) (@ali-ramadhan) - Adjust halos according to advection scheme and turbulence closure (#1012) (@glwagner)
- Adds adapt_structure for ContinuousForcing (#1016) (@glwagner)
- Add Dev in Docs versions menu (#1017) (@navidcy)
- Build and test but do not deploy docs on Buildkite (#1018) (@ali-ramadhan)
- Fixes tests with AveragedField and BuoyancyField (#1020) (@glwagner)
- Bump v0.40.0 (#1021) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🥊 Oceananigans v0.39.0
Oceananigans v0.39.0
- Overhauled interface for forcing functions. Instead of calling
ModelForcing
to set up model forcing functions, you should pass a named tuple ofForcing
objects to the model constructor.- See the model setup documentation on forcings for examples.
- See the
Forcing
docstring for more details.
Closed issues:
- getindex and setindex! much slower than just accessing array contents directly. (#13)
- Can we inline source term calculation to save memory? (#98)
- Unified forcing function interface (#896)
- fourth-order advection tested? (#925)
- Not sure why Oceananigans instantly kills a constant velocity field in a box (#951)
- Flatten
state
in boundary condition functions and forcing functions to single tuple? (#985) - Remove SymPy dependency in next release of Oceananigans (#990)
MethodError
whenusing Oceananigans
with Julia 1.5 and OffsetArrays v1.3.0 (#991)
Merged pull requests:
- New forcing function interface, defaults, and functionality (#989) (@glwagner)
- Update new_data.jl (#992) (@glwagner)
- Remove SymPy dependency for now (#996) (@ali-ramadhan)
- Bump v0.39.0 (#998) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - ⚖️ Oceananigans v0.38.0
Oceananigans v0.38.0
- New experimental WENO-5 advection scheme for momentum and tracers. Use by passing
advection=WENO5()
when creating a model. See https://github.com/CliMA/Oceananigans.jl/pull/592 for convergence tests, comparisons, and benchmarks. - Very experimental automatically generated
WENO{N}
advection schemes. - New framework for high-order advection schemes abstracting centered and upwind schemes.
- Lid-driven cavity verification experiment against data by Ghia et al. (1982). See the docs for movies.
- New lazily-computed
PressureField
. - Avoiding unnecessary recomputation of fields in output evaluation.
- Bug fixes for
WindowedTimeAverage
andAveragedField
. - BREAKING: Internal functions
run_diagnostic(model, diag)
andwrite_output(model, output_writer)
are nowrun_diagnostic!(diag, model)
andwrite_output!(output_writer, model)
.
Closed issues:
- Sugary syntax for boundary conditions (#637)
- Don't require
simulation.progress
to subtypeFunction
(#642) - Checkpointing docs are stale (#660)
- Incorporate performance benchmarks into tests and CI (#684)
- Doc strings for some kernel functions are out of date (#763)
- Introduce "location" notation :u, :v, :w, :c ? (#766)
- Incomplete docstring for
SeawaterBuoyancy
? (#768) - Proper bangs (#861)
- Typo in docs, should be
Non-traditional
(#912) - Advection scheme benchmarks (#934)
- halo points behaving differently in master branch compared with 0.36.0 (#949)
- Identifier conflict warnings when
using Oceananigans
(#950) - Avoiding repeated computations in the evaluation of
AbstractOperations
(#955) - Docstring for RungeKutta3TimeStepper is incorrect (#957)
- Bug due to "initialization" of WindowedTimeAverage diagnostic (#962)
- Bugs in fourth order advection in bounded directions (#965)
- Typo in docstring for
AveragedField(op::AbstractOperation)
(#967)
Merged pull requests:
- Lid-driven cavity verification experiment (#572) (@ali-ramadhan)
- WENO advection schemes and advection verification experiments (#592) (@ali-ramadhan)
- Fixes bug in adapt_structure for ComputedField (#953) (@glwagner)
- More specific imports from KernelAbstractions in Fields module to solve identifier conflict warnings (#954) (@glwagner)
- PressureField and tests for AveragedFields and ComputedFields in operations (#956) (@glwagner)
- Fixes initialization and finalization bugs in WindowedTimeAverage (#964) (@glwagner)
- Updating Julia DOI (#966) (@arfon)
- Avoiding unnecessary recomputation of fields in output evaluation (#968) (@glwagner)
- Do not zero out halo regions in directions that arent averaged (#970) (@glwagner)
- New framework for high-order advection schemes (#972) (@glwagner)
- Add JOSS badge (#976) (@ali-ramadhan)
- Fixes timestepper docstrings and simplifies constructor (#977) (@glwagner)
- Fixes typo in docs for non-traditional beta plane and simplifies language (#978) (@glwagner)
- Docs comply with julia = "^1.4" compat entry (#979) (@navidcy)
- Adds bangs and conventionalizes signatures of run_diagnostic! and write_output! (#980) (@glwagner)
- Completes docstring for SeawaterBuoyancy constructor (#981) (@glwagner)
- Cleans up docstrings for tendency kernels (#982) (@glwagner)
- Changes default progress from nothing to an innocuous function (#983) (@glwagner)
- Moves boundary condition aliases to FieldBoundaryConditions (#984) (@glwagner)
- Bump v0.38.0 (#988) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🌾 Oceananigans v0.37.0
Oceananigans v0.37.0
- More empowered
Field
abstraction:AbstractReducedField
and concreteReducedField
for representing fields that are reduced along one or more dimensions.AveragedField <: AbstractReducedField
representing a field that is averaged along one dimension.AveragedField
will replaceAverage
in the near future and can be inserted intoAbstractOperations
.ComputedField
representing fields whose data must be "computed".ComputedField
s are intended to hold the results ofAbstractOperations
. They can also participate inAbstractOperation
s.
FieldSlicer
abstraction representing a "slice" or sub-indexing operation applied to fields prior to output.- Functionality in
JLD2OutputWriter
for handling field output. This eliminates the need for theFieldOuputs
constructor.FieldSlicer
can be used withJLD2OutputWriter
. - Bugfixes and improvements to
WindowedTimeAverage
and full integration withFieldSlicer
andJLD2OutputWriter
. - Support for
closure = nothing
so that models can be run with no diffusivity or turbulence closure. - A new, as-of-now non-default third-order Runge-Kutta time-stepper, along with dynamics tests and convergence tests.
- Bugfix in the experimental fourth order advection scheme.
- Bugfix that incorrectly created
MultiaryOperation
s when they should have beenBinaryOperation
s.
Breaking changes:
FieldOutputs
no longer exists; named tuples of fields should be passed directly toJLD2OutputWriter
instead (and halos are omitted by default when using this functionality)
Closed issues:
- Explicitly time-step w instead of recomputing it from continuity? (#338)
- Forward Euler + 3rd order Runge-Kutta time-stepping (or integration with DifferentialEquations.jl) (#506)
ReducedField
type (#525)- zero_halo_regions needs to know about field and grid topology (#734)
- Need to update
ParameterizedForcing
constructor (#785) - Setting up inflow condition in bounded domain with buoyancy as tracer (#789)
- Why is
w*T
is aMultiaryOperation
? (#892) - Docstring for IncompressibleModel is incorrect (#895)
- Keyword
array_type
in JLD2OutputWriter (and perhaps NetCDFOutputWriter) (#901) - More meaningful notation for non-traditional beta plane (#918)
zero_halo_regions
is incorrect for fields located on faces in bounded directions (#919)- The values of
slices
dictionary in NetCDFOutputWriter are identical for every field (#926) - Cannot create model with
closure = nothing
(#939)
Merged pull requests:
- Stop 'recomputing w' at the end of each time step (#711) (@glwagner)
- Clean up Fields module (#914) (@glwagner)
- ReducedField (#920) (@glwagner)
- Changes definition of MultiaryOperation to a function of 3 or more fields (#922) (@glwagner)
- Updates docstring for IncompressibleModel (#923) (@glwagner)
- CompatHelper: bump compat for "KernelAbstractions" to "0.4" (#924) (@github-actions[bot])
- Functionality for output as fields with JLD2 (#927) (@glwagner)
- Starts process of modernizing WindowedTimeAverage (#928) (@glwagner)
- Fixes bug in zero_halo_regions that uses wrong indices for face-located fields in Bounded directions (#929) (@glwagner)
- AveragedField (#930) (@glwagner)
- ComputedField (#931) (@glwagner)
- Adds FieldSlicer and integrates with JLD2OutputWriter and WindowedTimeAverage (#932) (@glwagner)
- Only test Mac OSX on Travis now (#933) (@ali-ramadhan)
- Fixes interpolation error in centered fourth order tracer advection (#935) (@glwagner)
- Slims down model size for many tests (#937) (@glwagner)
- Regenerate LES regression test data (#943) (@glwagner)
- Third-order Runge-Kutta timestepper (#945) (@glwagner)
- Support closure=nothing; resolves #939 (#947) (@glwagner)
- Bump v0.37.0 (#948) (@ali-ramadhan)
- BuoyancyField (#952) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🧻 Oceananigans v0.36.0
Oceananigans v0.36.0
This release coincides with the publication of the Oceananigans.jl Journal of Open Source Software (JOSS) paper.
Changelog:
- Simplified boundary condition interface, types, and constructors. See the "boundary conditions" section under "Model setup" in the documentation for updated examples.
- Support for a
NonTraditionalBetaPlane
Coriolis force implementation. - The
AnisotropicBiharmonicDiffusivity
closure now works properly in closed domains with zeroFlux
boundary conditions, as higher-order boundary conditions are enforced. - Bug fix: Appending to NetCDF files with
NetCDFOutputWriter
works now. - Bug fix: Computations of abstract operations compute the right end point of face-centered fields along bounded dimensions.
- Bug fix: Averages
with_halos=false
return results with the correct dimensions for face-centered results along bounded dimensions. - Small bug fixes for
show
methods.
Breaking changes:
- When constructing a
NetCDFOutputWriter
, usemode="c"
instead ofclobber=true
andmode="a"
instead ofclobber=false
.
Closed issues:
- More streamlined interface for boundary functions? (#769)
- Return of the multiple of 16 bug (#780)
- When printing an
AbstractOperation
, the tree should be indented for readability (and without newline separation) (#893) - Is the warning "This simulation will recalculate the time step every iteration which can be slow" correct? (#903)
- Wrong size for averages with halos of face-centered fields along bounded dimensions (#906)
- Computations do not compute the right end point faces of bounded dimensions (#908)
- Cannot append to NetCDF file even with
clobber=false
(#913) - Docs for 0.35.0 seem to be missing (#917)
Merged pull requests:
- Journal of Open Source Software paper (#564) (@ali-ramadhan)
- Output writer "diagnostic dependencies" (#886) (@glwagner)
- Convenience kwargs in
JLD2OutputWriter
constructor for averaging output (#887) (@glwagner) - Simplifies boundary condition interface, types, and constructors (#894) (@glwagner)
- Non-traditional β plane (#899) (@ali-ramadhan)
- Generalizes halo filling for flux boundary conditions (#904) (@glwagner)
- Nicer
Base.show
for abstract operations (#905) (@ali-ramadhan) - Fix size for averages with halos of face-centered fields along bounded dimensions (#907) (@ali-ramadhan)
- Update test to also catch multiple of 16 bug (#909) (@ali-ramadhan)
- Fix computation work layout for faces along bounded dimensions (#910) (@ali-ramadhan)
- Fix typo in AnisotropicBiharmonicDiffusivity docstring (#911) (@navidcy)
- Fix appending to NetCDF file (#915) (@ali-ramadhan)
- Bump v0.36.0 (JOSS release) (#916) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🧵 Oceananigans v0.35.0
Oceananigans v0.35.0
- Support for multithreaded CPU simulations! Set the number of threads via the
JULIA_NUM_THREADS
environment variable or via the-t
flag in Julia 1.5+. - New
OceananigansLogger
for fancy log messages with time stamps. - New experimental diagnostic: the
WindowedTimeAverage
. Average
diagnostic can include or exclude halos via thewith_halos
keyword argument.- Improved testing infrastructure made possible by splitting tests into four groups, selectable with the
TEST_GROUP
environment variable. - Cleaned up convergence test scripts and plots. Convergence tests can now be fully run by running the tests with the
TEST_GROUP=convergence
environment variable. - Numerous bug fixes and documentation updates.
Closed issues:
- We need to upgrade our testing infrastructure soon-ish. (#139)
- Abstraction / Diagnostic for moving averages (#501)
- Failed to precompile GPUArrays, CUDA, Oceananigans on macOS (#854)
- Error when trying to diagnose
Average
of an abstract operation (#857) - Error with NetCDF output - Julia v1.5, Oceananigans v0.34.1 (#862)
scalar getindex is disallowed
withtopology = (Periodic, Bounded, Bounded)
using Oceananigans v0.34.1 (#864){x,y,z}nodes
function docstrings do not document thereshape
keyword argument (#865)- Getting GPU name in
versioninfo_with_gpu()
fails with CUDA v1.3.0 (#866) - Use
FFTW.set_num_threads
(#867) test/test_*.jl
is a redundant naming scheme (#871)- Run convergence tests as part of the verification testset (#873)
- Include all convergence test plots in documentation (#879)
total_size(grid::AbstractGrid)
seems wrong (#883)
Merged pull requests:
- Logging with crayons (#855) (@ali-ramadhan)
- WindowedTimeAverage (#856) (@glwagner)
- Clearer error in operation average constructor (#858) (@ali-ramadhan)
- Add
with_halos
option toAverage
diagnostic (#859) (@ali-ramadhan) - Update dependencies (#860) (@ali-ramadhan)
- Dont close output writers at the end of
run!
(#863) (@ali-ramadhan) - Use
FFTW.set_num_threads
if more than 1 thread is available (#868) (@ali-ramadhan) - Multithreading benchmarks (#869) (@ali-ramadhan)
- Split tests into four groups for CI job matrices (#872) (@ali-ramadhan)
- Update
Utils.versioninfo_with_gpu()
(#875) (@ali-ramadhan) - Update docstrings for
{x,y,z}nodes
functions (#877) (@ali-ramadhan) - Fix some CuArray scalar operations (#878) (@ali-ramadhan)
- Adds missing convergence plots to docs (#880) (@glwagner)
- Clean up convergence test scripts and plots (#881) (@ali-ramadhan)
- Moves total_size(loc, grid) to grid_utils.jl (#889) (@glwagner)
- Bump v0.35.0 (#891) (@ali-ramadhan)
- CompatHelper: add new compat entry for "SafeTestsets" at version "0.0.1" (#898) (@github-actions[bot])
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - ⏳ Oceananigans v0.34.1
Oceananigans v0.34.1
This is a bugfix release that disables CuArray scalar operations by default (to avoid surprise scalar operations that can cause huge slowdowns) and fixes a related bug where writing GPU fields to NetCDF was very slow. Also includes small updates to the documentation.
Closed issues:
- Dynamically disable CuArray scalar operations (#276)
- Update performance benchmarks plot and discuss results (#607)
- Fix citations and references in documentation (#609)
- Link documentation of numerical methods with code and API (#610)
Merged pull requests:
- Small documentation improvements and fixes for JOSS (#849) (@ali-ramadhan)
- Update benchmarks for JOSS (#850) (@ali-ramadhan)
- Dynamically disable CuArray scalar operations (#851) (@ali-ramadhan)
- Bump v0.34.1 (#852) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🏵️ Oceananigans v0.34.0
Oceananigans v0.34.0
This release adds some new features, fixes some bugs, and improves the API (so there are some breaking changes, listed below).
Major changes:
- Triply periodic models are now available by passing the
topology = (Periodic, Periodic, Periodic)
keyword argument to grids. - All 1D, 2D, and 3D averages are now available through the
Average
diagnostic with thedims
keyword argument. - Fixed some checkpointing bugs.
- BREAKING: Use
Average(..., dims=(1, 2))
instead ofHorizontalAverage(...)
. - BREAKING: Use
iteration_interval
andtime_interval
instead offrequency
andinterval
for diagnostics and output writers. - BREAKING: Use
iteration_interval
instead ofprogress_frequency
for simulations. - BREAKING: Use
IsotropicDiffusivity
andAnisotropicDiffusivity
instead ofConstantIsotropicDiffusivity
andConstantAnisotropicDiffusivity
. Also, useνz
instead ofνv
andκz
instead ofκv
. - BREAKING: To
restore_from_checkpoint
, pass model constructor arguments as you would to a normal constructor, e.g.restore_from_checkpoint("my_checkpoint.jld2", boundary_conditions=custom_bcs)
. Previous behavior was to pass a dictionary which was less user friendly.
Closed issues:
- Update README and fix broken links (#608)
- Clearer names for
frequency
andinterval
for diagnostics (#672) - Misleading documentation for JLD2OutputWriter (#827)
- Typo: no such thing as "tradient" (#831)
- IsotropicDiffusivity and AnisotropicDiffusivity are not exported by Oceananigans.jl (#835)
Flux
boundary condition docstring should mention the sign convention (#837)versioninfo_with_gpu
util fails on machine with CUDA but running CPU models (#840)NetCDFOutputWriter
should recast the type ofglobal_attributes
intoDict{String,Any}
(#841)
Merged pull requests:
- Zonal averages, horizontal averages, and volume averages under the same structure (#798) (@sandreza)
- Fix performance benchmarks dead link in README (#822) (@ali-ramadhan)
- Fix plot in example (#829) (@mancellin)
- fix tradient -> gradient (#832) (@navidcy)
- Fix triply periodic pressure solver and add/cleanup some tests (#834) (@ali-ramadhan)
iteration_interval
andtime_interval
(#836) (@ali-ramadhan)- Checkpointer bug fixes and improved interface (#839) (@ali-ramadhan)
- Recast
global_attributes
intoDict{Any,Any}
(#842) (@ali-ramadhan) - Explanation of
Flux
BC in docstring (#843) (@ali-ramadhan) - Export
{Isotropic, Anisotropic}Diffusivity
(#844) (@ali-ramadhan) - Nuke
Constant{Isotropic,Anisotropic}Diffusivity
in favor of{Isotropic,Anisotropic}Diffusivity
(#846) (@ali-ramadhan) - Bump v0.34.0 (#847) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] over 4 years ago
Oceananigans.jl - 🏷️ Oceananigans v0.33.0
Oceananigans v0.33.0
This release adds new features to the NetCDFOutputWriter
and fixes some bugs.
- The date the file was generated, the Julia version, and the Oceananigans version used are always written as global attributes (metadata) to all NetCDF files.
- Added
with_halos
andverbose
keyword arguments toNetCDFOutputWriter
. - Fixed bug in writing grid coordinates to NetCDF (they were previously offset).
- Fixed bug in printing of grid coordinate ranges for
Bounded
dimensions.
Closed issues:
- Add option to
NetCDFOutputWriter
to include halo regions (#683) - ERROR: Unsatisfiable requirements detected for package CuArrays (#796)
Merged pull requests:
- NetCDFOutputWriter: new features and bug fixes (#823) (@ali-ramadhan)
- Bump v0.33.0 (#825) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 5 years ago
Oceananigans.jl - 🌡️ Oceananigans v0.32.0
Oceananigans v0.32.0
Everyone should stop using Oceananigans v0.31.0 and upgrade to this version. Oceananigans now requires Julia 1.4 or later.
This release fixes a major bug concerning a race condition making GPU simulation, especially large models, explode into NaNs in v0.31.0.
It also restores the "Examples" section in the documentation and adds experimental support for higher order advection schemes.
Closed issues:
- Support for parameter profiles and fields. (#51)
- Advection schemes: a model property or field property? (#77)
- Multithreaded FFTs on the CPU (#119)
- Better grids, including better RegularCartesianGrid (#330)
- Reshape grid ranges xC, zF, etc? (#348)
- Extend equation of state functionality (#439)
- Surface wave effects via the Craik-Leibovich or wave-averaged Navier-Stokes formulation (#443)
- Change 'closure' to 'diffusivity'? (#445)
- Convention for definition of
Field
"halo points" is potentially confusing (#455) - Example or test: advection of a square or Gaussian (#481)
- Doctests (#493)
- Langmuir turbulence example is non-rotating (#532)
- Confusing API for specifying parameters in low-level forcing functions versus
SimpleForcing
(#565) - Grid should record depths of halo points (#600)
- Taylor-Green vortex verification experiment and convergence test (#611)
- Hard-coded thread-size code should be commented (#645)
- User interface for specifying advection schemes (#695)
- Abstract operations
compute_kinetic_energy
test fails with CUDA error (#732) - Document and test numerical convergence validation (#777)
- Issues with CUDA.jl (#784)
- Travis can't deploy docs (#808)
- Race condition leading to NaNs with KernelAbstractions.jl on v0.31.0? (#816)
- Missing pages in documentation v0.31 (#818)
Merged pull requests:
- Slightly better README examples (#814) (@ali-ramadhan)
- Advection scheme abstraction plus centered fourth order advection (#815) (@glwagner)
- Fix existing identifer conflicts (#817) (@ali-ramadhan)
- Fixes wrong page list for example_pages in docs (#819) (@glwagner)
- Adds barriers at the top of many kernel launches (#820) (@glwagner)
- Bump v0.32.0 (#821) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 5 years ago
Oceananigans.jl - 🧴 Oceananigans v0.31.0
Oceananigans v0.31.0
This release fixes a major bug where you couldn't run GPU models so if you're using GPUs you should upgrade to this version. Oceananigans.jl now requires Julia 1.4+.
Major changes:
- Updated the backend to use KernelAbstractions.jl instead of GPUifyLoops.jl.
- Updated to using CUDA.jl instead of CuArrays.jl, CUDAnative.jl, and CUDAdrv.jl.
- Updated and slightly expanded the model setup documentation.
- Added a bibliography and citations to the documentation.
- Generalized
ConstantIsotropicDiffusivity
andConstantAnisotropicDiffusivity
to accept functions ofx, y, z, t
as well as constants. These types are calledIsotropicDiffusivity
andAnisotropicDiffusivity
;ConstantIsotropicDiffusivity
andConstantAnisotropicDiffusivity
aliases are provided for backwards compatibility. - Lots of new convergence tests confirming the accuracy of the model!
Closed issues:
- NormalFlow and NoNormalFlow instead of NoPenetration (#703)
- Error showing value of type IncompressibleModel (#707)
- Test that horizontal average is correct over time (#737)
- [Documentation] Why use bit.ly link in documenation? (#773)
- Prescribed variable diffusivities and viscosities (#781)
- Error when attempting to plot results in langmuir_example.jl (#787)
- Movie missing in Langmuir turbulence example in docs (#791)
Merged pull requests:
- CompatHelper: add new compat entry for "SeawaterPolynomials" at version "0.2" (#759) (@github-actions[bot])
- Fix bitly link in README (#764) (@ali-ramadhan)
- Update to Julia 1.4 and CUDA.jl (#765) (@ali-ramadhan)
- Validation tests of numerical convergence (#767) (@glwagner)
- Bugfix in ModelForcing constructor for SimpleForcing of tracers (#772) (@glwagner)
- Upgrade to CUDA.jl v1.0.0 (#776) (@ali-ramadhan)
- Adds documentation page for convergence tests (#782) (@glwagner)
- Nukes unused code and simplifies timestepping (#786) (@glwagner)
- Adds a hook for constant targets in Relaxation (#790) (@glwagner)
- Fix Langmuir turbulence example (#792) (@navidcy)
- Changes v1.3 -> v1.4 in Readme.md/Docs (#793) (@navidcy)
- BibTeX citations and references in the docs (#794) (@ali-ramadhan)
- Suppress stray output in Languir turbulence literated example (#795) (@navidcy)
- Fixes checkpointer GPU to CPU loading and writing fields with function boundary conditions (#797) (@sandreza)
- Updating the documentation and keeping it up to date (#799) (@ali-ramadhan)
- Update README: bitly to direct link (#800) (@ali-ramadhan)
- Deploys docs to clima.github.com/OceananigansDocumentation (#801) (@glwagner)
- Updates one dimensional diffusion example to post-process output (#803) (@glwagner)
- Fix deploying docs to OceananigansDocumentation (#804) (@ali-ramadhan)
- Switches from GPUifyLoops backend to KernelAbstractions (#805) (@glwagner)
- Generalizes ConstantIsotropicDiffusivity and ConstantAnisotropicDiffusivity (#806) (@glwagner)
- Revert "Fixes checkpointer GPU to CPU loading and writing fields with function boundary conditions" (#807) (@ali-ramadhan)
- Update documentation links in README (#809) (@ali-ramadhan)
- Bump v0.31.0 (#810) (@ali-ramadhan)
- Run CompatHelper every hour and use Julia 1.4 (#812) (@ali-ramadhan)
- Add compat entry for KernelAbstractions.jl (#813) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 5 years ago
Oceananigans.jl - 🏥 Oceananigans v0.30.0
Oceananigans v0.30.0
Closed issues:
- Support for a full equation of state for seawater (TEOS-10?) (#692)
- topology(grid) returns instantiated types while location(field) returns uninstantiated types (#714)
- Mushrooms not fruit (#716)
- Horizontal average is allocating on the CPU (#735)
Merged pull requests:
- Transition to SeawaterPolynomials (#742) (@glwagner)
- Allows field-dependent SimpleForcing. Updates plankton growth example. (#744) (@glwagner)
- fix doc links (clima org) and examples (extent keyword) (#747) (@gaelforget)
- Fixes strange error in ocean wind mixing and convection examples (#748) (@glwagner)
- Bump v0.30.0 (#750) (@ali-ramadhan)
- Fix the internal wavegroup example (#752) (@navidcy)
- Upper bound for SeawaterPolynomials.jl (#754) (@navidcy)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] almost 5 years ago
Oceananigans.jl - 😷 Oceananigans v0.29.0
Oceananigans v0.29.0
This release adds a TEOS10
nonlinear equation of state and fixes some bugs.
Closed issues:
- TimeStepWizard should probably be defined in Simulation.jl (#725)
Merged pull requests:
- Update and test benchmarks (#727) (@ali-ramadhan)
- Adds diffusive criterion to dt update in TimeStepWizard (#729) (@glwagner)
- TEOS-10 nonlinear equation of state (#731) (@ali-ramadhan)
- Benchmark tests: Just do small sizes on GPU models (#733) (@ali-ramadhan)
- Use in-place division to normalize horizontal average (#736) (@glwagner)
- Bump v0.29.0 (#738) (@ali-ramadhan)
- Export
ParameterizedForcing
and fix docstring (#739) (@ali-ramadhan) - Minor fix in
*nodes
docstrings (#740) (@ali-ramadhan) - Export
TEOS10
(#741) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🧼 Oceananigans v0.28.0
Oceananigans v0.28.0
This release refactors the grid implementation so that the coordinate arrays xC
, yC
, zC
, xF
, yF
, and zF
have nodal points within the halo regions of fields and are reshaped to match their respective dimension.
In other words, we now have size(c, 2) == length(yC)
and size(u, 1) == length(xF)
, for example, and xC * yC * zC
produces an object of size(c)
.
There are three new methods xnodes(loc, grid::AbstractGrid)
, ynodes(loc, grid::AbstractGrid)
, znodes(loc, grid::AbstractGrid)
. For example, xnodes(Cell, grid)
extracts a view over the interior nodes grid.xC
, while xnodes(Face, grid)
extracts a view over the physical points of grid.xF
, which include both boundaries for Bounded
directions.
In addition, the RegularCartesianGrid
keyword length
is changed to extent
, and the VerticallyStretchedCartesianGrid
no longer accepts a keyword length
, or a keyword z
.
Note that the VerticallyStretchedCartesianGrid
implementation is incomplete and untested.
Merged pull requests:
- Reshape and offset grid coordinate arrays (#715) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🦠 Oceananigans v0.27.2
Oceananigans v0.27.2
- Fixes a bug with the zeros function so we can compute
HorizontalAverage
s on the GPU.
Closed issues:
- Bug in zeros function (#719)
progress(simulation)
is not always called duringrun!
(#723)- Major performance regression (#726)
Merged pull requests:
- Test for second-order convergence of pressure solver (#704) (@glwagner)
- Update CUDA packages (#713) (@ali-ramadhan)
- CompatHelper: bump compat for "CUDAnative" to "3.0" (#717) (@github-actions[bot])
- CompatHelper: bump compat for "CuArrays" to "2.0" (#718) (@github-actions[bot])
- Make generic zeros function work on GPU (#720) (@glwagner)
- Bump to 0.27.2 (#730) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🦗 Oceananigans v0.27.1
Oceananigans v0.27.1
Merged pull requests:
- Fix has_velocities again (#708) (@glwagner)
- Consistent Field API again (#709) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 📯 Oceananigans v0.27.0
Oceananigans v0.27.0
Breaking changes:
- in
FieldBoundaryConditions(grid, location)
, the argumentlocation
is now be a 3-tuple of uninstantiated types, eg:(Face, Cell, Cell)
for a field at the location of theu
-velocity field. Previously,location
was a 3-tuple of instantiated types.
Release notes:
has_velocities
was fixed so thatshow
works for models with no tracersBoundaryFunction
can now have parameters: useBoundaryFunction(func, parameters)
iffunc(ξ, ζ, t, parameters)
takes a final argumentparameters
. (parameters=nothing
by default.)- four new wrapper functions were defined for specifying 'simple' boundary condition functions:
TracerBoundaryCondition
UVelocityBoundaryCondition
VVelocityBoundaryCondition
WVelocityBoundaryCondition
- All four functions take three (optionally four) arguments:
(bctype, boundary, func, [parameters=nothing])
, wherebctype
isValue
,Gradient
, orFlux
and boundary is:x
,:y
, or:z
. Ifparameters=nothing
,func(ξ, ζ, t)
is a function of the on-boundary coordinates(ξ, ζ)
and timet
. Ifparameters
is set, it is passed tofunc(ξ, ζ, t, parameters)
.
Closed issues:
- API divergence for abstract operations versus boundary conditions (#659)
- "show" method throws an error for models with no tracers (#700)
Merged pull requests:
- Consistent API for field locations (#698) (@glwagner)
- More convenient BoundaryFunction functionality (#699) (@glwagner)
- Fix has_velocities (#701) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - ✒️ Oceananigans v0.26.0
Oceananigans v0.26.0
Some breaking changes:
- Function signatures for boundary condition functions and forcing functions have been simplified.
- The
model.parameters
field has been nuked in favor of more local "parameters" functionality.ParameterizedForcing
andParameterizedBoundaryCondition
convenience types and functions have been added
The new forcing function signature is
F(i, j, k, grid, clock, state)
while the new boundary condition function signature is
bc(i, j, grid, clock, state)
where i, j
are indices along the boundary.
state
is a NamedTuple
with fields velocities
, tracers
, and diffusivities
, each corresponding to an OffsetArray
that references the data associated with each field.
Closed issues:
- Stabilizing forcing function arguments and boundary condition function arguments (#682)
Merged pull requests:
- CompatHelper: bump compat for "CUDAdrv" to "6.0" (#688) (@github-actions[bot])
- CompatHelper: bump compat for "CUDAapi" to "4.0" (#689) (@github-actions[bot])
- Fix typo in application of y value BCs (#690) (@ali-ramadhan)
- Fix
cell_diffusion_timescale
with zero tracers (#691) (@ali-ramadhan) - Simpler boundary condition functions and forcing functions (#697) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🦮 Oceananigans v0.25.2
Oceananigans v0.25.2
Closed issues:
- Abstraction for "equation" for performance, code clarity, memory footprint reduction, and powerful user interface (#259)
Merged pull requests:
- Calculate tendencies on boundaries (#677) (@glwagner)
- Add CompatHelper as a GitHub action (#687) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🛠️ Oceananigans v0.25.1
Oceananigans v0.25.1
Closed issues:
- Pretty printing for model structs. (#26)
- Grid should encode whether positive means east, north, etc. (#50)
- Iterate over a node list instead of using nested loops. (#61)
- Standard field names for NetCDF output. (#91)
- How to deal with cell-centered and face-centered fields in NetCDF output? (#92)
- Faster and more flexible NetCDF IO. (#145)
- Safely using @inbounds (#164)
- Casting CuArrays to Arrays for many operations. (#171)
- Staging branch (#206)
- PoissonBCs for pressure solver are redundant (#311)
- Model verification experiments (#346)
- Boundary condition API kernels should use dynamic launch configuration (#363)
- Minor performance regression (more memory allocations) (#397)
time_step!
function for adaptive time stepping (#431)- Add finalizer for NetCDFOutputWriter so we don't have to manually close files (#568)
- CPU performance regression: tons of allocations (#675)
- Bounded not defined (#679)
- ERROR: LoadError: UndefVarError: SolutionBoundaryConditions not defined (#686)
Merged pull requests:
- Update examples and test them again (#671) (@ali-ramadhan)
- Reorganize boundary function functionality (#680) (@glwagner)
- Update README.md (#681) (@glwagner)
- Fix memory allocations on CPU (#685) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🔮 Oceananigans v0.25.0
Oceananigans v0.25.0
Closed issues:
- Integrate opening and closing of Netcdf outputwriters in simulation loop (#650)
- Netcdf output writer does not respect the clobber keyword (#651)
- Bug in fill_north_halo (#668)
- Bug (?) in loop_xz macro (#669)
Merged pull requests:
- Simulation handles closing of
NetCDFOutputWriter
(#652) (@suyashbire1) - Change default NetCDF temperature units: K to °C (#663) (@ali-ramadhan)
- Store tendencies correctly after time-step (#664) (@glwagner)
- Rewrite regression tests (#665) (@glwagner)
- Time step with predictor velocities (#666) (@glwagner)
- Correct no penetration bcs (#670) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🕰️ Oceananigans v0.24.2
Oceananigans v0.24.2
Closed issues:
- Model constructor is slightly mangled (#647)
- Method redefinition warnings (#655)
- Register Oceananigans v0.24.1 (#657)
- Unexpected Simulation checkpointing frequency behavior (#661)
Merged pull requests:
- Allow for
DateTime
clocks (#632) (@ali-ramadhan) - Fix method redefinition warnings (#656) (@ali-ramadhan)
- Model constructor cleanup (#662) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🧶 Oceananigans v0.24.1
Oceananigans v0.24.1
Closed issues:
- Register Oceananigans v0.24.0 (#646)
- Getting timestep from simulation class is cumbersome (#648)
- Method redefinition warnings (#655)
Merged pull requests:
- New default size for FaceFields (#644) (@glwagner)
- Improves getting time step from Simulation type (#649) (@suyashbire1)
- Fix method redefinition warnings (#656) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🗿 Oceananigans v0.24.0
Oceananigans v0.24.0
Closed issues:
- Storing boundary conditions inside fields (#606)
- Register Oceananigans v0.23.0 (#638)
Merged pull requests:
- Upgrade fields to store boundary conditions (#631) (@ali-ramadhan)
- Simulation parameters and prettier show methods (#639) (@ali-ramadhan)
- Upgrade NetCDF output writer to write arbitrary outputs for LESbrary use (#643) (@ali-ramadhan)
- New default size for FaceFields (#644) (@glwagner)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🦐 Oceananigans v0.23.0
Oceananigans v0.23.0
Closed issues:
- More modular and reproducible 3D plotting script (#203)
- Make checkpointer more memory efficient (#416)
- Checkpointer warning if properties included make restoring impossible (#417)
- Should
Model
be renamed toIncompressibleModel
orBoussinesqModel
? (#566) - Storing boundary conditions inside fields (#606)
- Make Julia 1.3 the new minimum required version? (#625)
- Flux boundary condition with two components (#629)
- Register Oceananigans v0.22.0 (#630)
- README is out of date (#633)
- Error when setting GPU field using CuArray (#634)
Merged pull requests:
- Rename Model to IncompressibleModel (#626) (@ali-ramadhan)
- Ability to construct field tuples with non-zero data (#627) (@ali-ramadhan)
- Simplify checkpointer and make it work for large models (#628) (@ali-ramadhan)
- Upgrade fields to store boundary conditions (#631) (@ali-ramadhan)
- Import CUDAnative in Fields submodule (#635) (@ali-ramadhan)
- Make Julia 1.3 the new minimum required version (#636) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - ✈️ Oceananigans v0.22.0
Oceananigans v0.22.0
Closed issues:
- Make progress statements a part of
time_step!
(#432) - Use
FT
for "floating point type" (#446) - 'Simulation' type for managing time stepping (#447)
- Use less defaults in model construction? (#459)
- Grid
Topology
concept (#489) - Updating the code the "normal" way (#598)
Merged pull requests:
- Grids now have a topology (#614) (@ali-ramadhan)
- Create field boundary conditions using information from grid topology (#620) (@ali-ramadhan)
- High-level
Simulation
type to manage time stepping (#621) (@ali-ramadhan) - Differentiated and variable AMD model constants (#622) (@glwagner)
- Allow 2D GPU models (#623) (@ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🍩 Oceananigans v0.21.0
Oceananigans v0.21.0
Closed issues:
- Notation for non-traditional f-plane is obscure (#616)
Merged pull requests:
- Fixes off-by-one indexing error in hydrostatic pressure integrat… (#612) (@glwagner)
- Purge famous people (#613) (@ali-ramadhan)
- Changes notation for NonTraditionalFPlane (#617) (@glwagner)
- Changes Timeseries to TimeSeries (#618) (@glwagner)
- Install TagBot as a GitHub Action (#619) (@JuliaTagBot)
Hydrosphere - Ocean Models
- Julia
Published by github-actions[bot] about 5 years ago
Oceananigans.jl - 🎏 Oceananigans v0.20.0
v0.20.0 (2020-01-31)
Closed issues:
TemperatureBuoyancy
for evolving temperature without salinity (#581)- Output extraction via
Dict
generator inJLD2OutputWriter
fails when outputting fields directly (#562) - Poisson solver that allows for variable vertical grid spacing. (#46)
Merged pull requests:
- Settable boundary conditions for LES diffusivities (#601) (glwagner)
- SeawaterBuoyancy with constant temperature or constant salinity (#595) (glwagner)
- Non-traditional f-plane (#577) (suyashbire1)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] about 5 years ago
Oceananigans.jl - ♻️ Oceananigans v0.19.0
v0.19.0 (2020-01-14)
Closed issues:
- Conflicting identifiers (#563)
- Ranges are
Float64
even ifFT=Float32
is passed toRegularCartesianGrid
(#544) - More local import statements. (#497)
- What should be split into submodules? (#495)
- More modules / hierarchical code structure (#456)
- Vertically stretched Cartesian grid (#47)
Merged pull requests:
- Submodules for everything! (#591) (ali-ramadhan)
- Pressure solvers for everything! (#589) (ali-ramadhan)
- Vertically stretched Cartesian grid (#543) (ali-ramadhan)
- Pressure solver for vertically stretched grids (#306) (ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🎆 Oceananigans v0.18.1
v0.18.1 (2020-01-04)
Closed issues:
- We should get rid of the
BoundaryConditions
alias (#582) - Switch tests to use the new logger (#578)
- Switching to Plots.jl and unbreaking the example tests (#536)
- Add section on "using GPUs" to documentation (#483)
- Document vertical integral of buoyancy (#482)
- Benchmark scripts should report CPU and GPU being used (#466)
Merged pull requests:
- Clean up dependencies (#588) (ali-ramadhan)
- Switch Tests to use the new logger (#585) (arcavaliere)
- Fix documentation homepage (#584) (ali-ramadhan)
- Remove
BoundaryConditions
alias (#583) (ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🎄 Oceananigans v0.18.0
v0.18.0 (2019-12-19)
Major features:
- Major improvements to documentation.
- Submission to Journal of Open Source Software.
Closed issues:
set!
for vertical profiles (#542)Ωᵉᵃʳᵗʰ
default for Coriolis constructors? (#510)- Should we make z the fast index? (#470)
- Merge
Oceananigans.Operators
withclosure\_operators.jl
(#460) - Verification experiments should become sophisticated tests (#347)
- Some Poisson solver tests, e.g. test_3d_poisson_ppn_planned!_div_free, fail when using FFTW.MEASURE or FFTW.PATIENT. (#99)
Merged pull requests:
- Sometimes if you wait tests fix themselves (#575) (ali-ramadhan)
- Fix and test
RoquetIdealizedNonlinearEquationOfState
(#574) (ali-ramadhan) - Bugfix in SurfaceWaves module (#571) (glwagner)
- Major documentation refactoring for JOSS (#570) (ali-ramadhan)
- Fix launch_config for BatchedTridiagonalSolver (#569) (ali-ramadhan)
- Fix typos in
cell\_diffusion\_timescale
methods. (#557) (ali-ramadhan) - Add default Ω_Earth and R_Earth for FPlane and BetaPlane (#550) (ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🎁 Oceananigans v0.17.0
v0.17.0 (2019-12-12)
Main features:
- Model setup documentation
- General-purpose batched tridiaginal solver.
- A new logger that's better than the default one.
- Support for horizontal/channel boundary conditions.
- Several bug fixes.
Closed issues:
NetCDFOutputWriter
errors when givenoutputs
as named tuple (#553)- Document convinient unit definitions (#545)
- Need to test that time stepping works with all diffusivity closures (#539)
- Large JLD2 file has invaded our git history (#509)
- Logging. (#71)
Merged pull requests:
- Bump version v0.17.0 (#567) (ali-ramadhan)
- Update stratified Couette flow verification experiment for JOSS (#561) (ali-ramadhan)
- Update public API documentation (#560) (ali-ramadhan)
- On CI servers select the GPU with the most memory (#559) (ali-ramadhan)
- Delete leftover JLD2 files before deploying docs (#558) (ali-ramadhan)
- Update
NetCDFOutputWriter
docstring and clobber default (#556) (ali-ramadhan) - Update
DiffusiveCFL
docstring (#554) (ali-ramadhan) - Banners like ##### instead of #### (#551) (ali-ramadhan)
- Test time-stepping with all turbulent diffusivity closures (#549) (ali-ramadhan)
- Document convinient unit definitions (#548) (ali-ramadhan)
- Support for applying channel boundary conditions (#546) (ali-ramadhan)
- Model setup documentation for JOSS (#534) (ali-ramadhan)
- General-purpose batched tridiagonal solver (#533) (ali-ramadhan)
- Logging (#478) (arcavaliere)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🏒 Oceananigans v0.16.0
v0.16.0 (2019-12-02)
Main feature:
- Finite volume operators.
Closed issues:
- Multiple warnings about "incremental compilation may be fatally broken for this module" (#537)
- Large JLD2 file has invaded our git history (#509)
- Supressing harmless warning and error messages (#366)
- Broadcasting and operations on different Field types (#12)
Merged pull requests:
- Add compat bounds for Cassette (#541) (ali-ramadhan)
- Get rid of method redefinition warnings during precompile stage (#538) (ali-ramadhan)
- Integrate finite volume operators (#529) (ali-ramadhan)
- Fixes a typo in Eady example and in Docs (#527) (navidcy)
- Regenerate regression test data following reversal of
k
index (#526) (ali-ramadhan)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🏄 Oceananigans v0.15.0
Main features:
- Multiple turbulence closures per tracer (#517)
- Anisotropic biharmonic diffusivity closure (#518)
- Craik-Leibovich terms and surface waves effects (#519)
- BoundaryFunction wrapper for simple boundary condition functions (#513)
- Start splitting code into submodules (#512)
Hydrosphere - Ocean Models
- Julia
Published by ali-ramadhan over 5 years ago
Oceananigans.jl - 📒 Oceananigans v0.14.1
v0.14.1 (2019-10-25)
Merged pull requests:
- Bump version 0.14.1 (#507) (ali-ramadhan)
- Even better docs (#488) (glwagner)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🔃 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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🐾 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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🗜️ 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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - ⚓ 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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 🧭 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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago
Oceananigans.jl - 📼 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)
Hydrosphere - Ocean Models
- Julia
Published by julia-tagbot[bot] over 5 years ago