Recent Releases of SpeedyWeather.jl
SpeedyWeather.jl - v0.16.0
SpeedyWeather v0.16.0
Non-breaking changes
- Move full differentiability tests to separate CI workflow #759
- Type stability for particle advection #757
- Scratch memory for SpeedyTransforms now part of DiagnosticVariables #680
- Reworked GPU and utility code structure and added GPU versions of spectral gradients#727
- Added
animateto animate a NetCDF output file with GeoMakie #755 - Makie v0.24 compatibility #750
- Fixed an error in the LowerTriangularArrays documentation #749
- Add Millenium and Century periods and allow conversion of Month and Year to seconds #746
- Return UnicodePlot after run! if UnicodePlots.jl is loaded #748
- git-auto-commit-action v6 #747
- Makie v0.23 compatibility #743
- LowerTriangularArray-preserving view #739
- Array-agnostic LowerTriangularMatrix #738
- Major rework of LowerTriangularArrays: Introduce Spectrum type, changes in indexing and constructors #734
- Reduce CI time #731
- Remove DocsPreviewCleanup workflow #730
- Move UnicodePlots to extension #728
- Baroclinic wave initial conditions ZonalWind divergence free #729
- reverse and reverse! for LowerTriangularArray, in longitude or latitude #720
- Speed up CI for land models #719
- Move documentation to SpeedyWeatherDocumentation repository #713, #722, #723, and #725
- Ensure docs don't deploy with
.jld2or.ncfiles #724
Breaking changes
- Use views instead of unpacking a tuple for 2-step prognostic variables #745
This means prognostic variables are now indexed with [ij, k, lf] (horizontal grid point ij, vertical layer k, leapfrog time step lf) instead of [lf][ij, k]
- Introduce Field for data on grid #732
The meaning of grid/Grid changed, it is considered to not contany any data but only holds resolution, architecture (CPU/GPU) and indices. A Field is data on a grid. Many fields can share the same grid. Some changes arose for the construction of grids/fields.
Merged pull requests: - SpeedyTransforms scratch memory part of DiagnosticVariables (#680) (@maximilian-gelbrecht) - Move docs to SpeedyWeatherDocumentation (#713) (@milankl) - Speed up CI for land (#719) (@milankl) - Reverse for LowerTriangularArray (#720) (@milankl) - Move Documentation to a separate repo, take #2 (#722) (@navidcy) - Update docs/dev link in README (#723) (@navidcy) - Remove jld2 & nc files from docs after make before deploy (#724) (@milankl) - Update docs urls (#725) (@navidcy) - Restructure (GPU) utilities and work towards spectral gradients GPU (#727) (@maximilian-gelbrecht) - Move UnicodePlots to extension (#728) (@milankl) - Baroclinic wave divergence free (#729) (@milankl) - Remove DocPreviewCleanup workflow (#730) (@milankl) - Reduce CI time (#731) (@milankl) - Introduce Field for data on grid (#732) (@milankl) - Introduce Spectrum for LowerTriangularArrays (#734) (@milankl) - Array-agnostic LowerTriangularMatrix (#738) (@milankl) - Add view that returns a LowerTriangularArray (#739) (@milankl) - CompatHelper: bump compat for Makie in [weakdeps] to 0.23, (keep existing compat) (#743) (@github-actions[bot]) - Use view instead of tuple for prognostic variables (#745) (@milankl) - More shameless piracy on the high seas of time (#746) (@bgroenks96) - Bump stefanzweifel/git-auto-commit-action from 5 to 6 (#747) (@dependabot[bot]) - Return UnicodePlots after run! when UnicodePlots.jl is loaded (#748) (@milankl) - Fix LTA docs (#749) (@maximilian-gelbrecht) - CompatHelper: bump compat for Makie in [weakdeps] to 0.24, (keep existing compat) (#750) (@github-actions[bot]) - GeoMakie extension: animate simulation function (#755) (@maximilian-gelbrecht) - Adjust particles for GPU (#757) (@maximilian-gelbrecht) - Release v0.16 (#758) (@milankl) - Move full differentiability tests outside of regular tests (#759) (@maximilian-gelbrecht)
Closed issues:
- Jablonowski test case (#265)
- Feature Request: Kolmogorov Flow (#676)
- Spatial generalisation (#682)
- SpeedyWeather Colab Demo (#690)
- Introduce Field to separate data from Grid (#709)
- Move Documentation: Repository size (#711)
- CI time (#721)
- How to use simulation.prognosticvariables.ocean for SST forcing sensitivity tests in SpeedyWeather? (#741)
- How to use simulation.prognosticvariables.ocean for SST forcing sensitivity tests in SpeedyWeather? (#742)
- Allow Month, Year, Millenium (#744)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] 6 months ago
SpeedyWeather.jl - v0.15.0
SpeedyWeather v0.15.0
Breaking changes
- Make KolmogorovFlow forcing default for BarotropicModel #687
Non-breaking changes
- RingGrid and LowerTriangularArray longitude rotation #710
- ImplicitShallowWater without precomputed arrays #717
- CUDA-ised spectral transform #602
- Fix isapprox for particles with longitude modulo #714
- Fix docustring rendering #712
- Updated documentation to include four illustrative figures in the large-scale precipitation and convection sections #702
- Added documentation to output surface variables #708
get_gridcell_polygonsin RingGrids #706- Revised extended CI tests for differentiability can be launched on comment in PRs #695, #696, #697, #698
- Reverse for AbstractGridArrays #691
- LandGeometry, LandThermodynamics as component of LandModel, DryLandModel #677
- Diagnostic albedo separate for ocean/land #677
- Increasing precision for accumulated precipitation output #685
- Allow steps to be specified for for run!(simulation, steps=n) #684
- Restrict extended CI tests to Julia v1.10 (due to Enzyme) #681
- SigmaCoordinates constructors #679
- Full timestepping differentiable by Enzyme with Julia 1.10 #656
- Type instabilities etc flagged by Reactant #674
- Added JLD2 Output to directly output PrognosticVariables and DiagnosticVariables #675
- Compat for GPUArrays v11, JLArrays 0.2, KernelAbstractions 0.9 #658
- MITgcm's 2-layer land bucket model #672
- Fix gridcellaverage! bugs for some grids and resolutions #673
- Interfaces for interpolation of AbstractGridArray #671
- Test folder sorted into subfolders #671
- Land model modularised + land netCDF output #671
Merged pull requests: - Implementation of CUDA-ised transform (#602) (@jackleland) - Differentiability tests for time stepping (#656) (@maximilian-gelbrecht) - bump compat to GPUArrays v11, JLArrays v0.2, KernelAbstractions 0.9 (#658) (@milankl) - Land model modularised (#671) (@milankl) - Grid cell average bug fixes (#673) (@milankl) - Changes for Reactant.jl (#674) (@milankl) - JLD2 Output (#675) (@maximilian-gelbrecht) - Modular land model + diagnostic albedo, independent for ocean/land (#677) (@milankl) - SigmaCoordinates double-defined () constructor (#679) (@milankl) - Extended tests only on 1.10 (#681) (@maximilian-gelbrecht) - run! with steps argument (#684) (@milankl) - Increase output precision for accumulated precip (#685) (@milankl) - Make KolmogorovFlow default for BarotropicModel (#687) (@milankl) - Reverse for AbstractGridArray (#691) (@milankl) - Extended tests on comment and (maybe) all passing (#695) (@maximilian-gelbrecht) - Extended tests launched on comment on PR branch (#696) (@maximilian-gelbrecht) - Revising extended tests (#697) (@maximilian-gelbrecht) - Bump xt0rted/pull-request-comment-branch from 1 to 3 (#698) (@dependabot[bot]) - Documentation of convection (#702) (@sunmoumou1) - Move get_faces function from extension to RingGrids (#706) (@milankl) - Documentation: surface variable output (#708) (@maximilian-gelbrecht) - RingGrid and LowerTriangularArray (longitude) rotation (#710) (@milankl) - Fix docstring rendering (#712) (@navidcy) - Add mod(lon, 360) for isapprox particles (#714) (@milankl) - Shallow water implicit without precomputed arrays (#717) (@milankl) - bump to v0.15 (#718) (@milankl)
Closed issues: - Simplified spectral transform towards GPU version (#575) - Particle modulo bug (#655) - Grainy convection/precipitation in long simulations (#683) - NoVegetation broken (#688) - Error when adding surface pressure vector as netCDF output variable to model (#707)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] 8 months ago
SpeedyWeather.jl - v0.14.0
SpeedyWeather v0.14.0
Breaking changes
- Precipitation is not outputted anymore by default, use
add!(model, SpeedyWeather.PrecipitationOutput()...)now - Coordinates defined in degrees lond, latd, not colat, lon https://github.com/SpeedyWeather/SpeedyWeather.jl/pull/647
Merged pull requests:
- Add tracer advection (#579) (@milankl)
- Change timestep to 40min at T31 (#623) (@milankl)
- NBandRadiation scheme for longwave outgoing (#633) (@milankl)
- Number format flexibility with set! (#634) (@rocroc2017)
- Forcing/drag for primitive models too (#635) (@milankl)
- Roll back GPUArrays upgrade (#636) (@maximilian-gelbrecht)
- RingGrinds more general indexing with Colon (less escapes) (#637) (@maximilian-gelbrecht)
- Spectral Gradients Gradients (#638) (@maximilian-gelbrecht)
- ConvectiveHeating implemented (#639) (@milankl)
- GPU CI Pipeline (#645) (@maximilian-gelbrecht)
- Dummy Buildkite Pipeline (#646) (@maximilian-gelbrecht)
- Grid coordinates defined in degrees not colatitudes and radians (#647) (@milankl)
- Clamp in ZonalWind to [0, 1] for sqrt (#649) (@milankl)
- set! for time step (#650) (@milankl)
- CI Extended Tests on 1.10 as well (#651) (@maximilian-gelbrecht)
- Group initialize!, timestep!, finalize! of main time loop (#652) (@milankl)
- New output variables definition simplified (#653) (@milankl)
- bug: south pole at -90 for vertices (#654) (@milankl)
- NetCDF output for tracers, precipitation rates at initialize! again (#657) (@milankl)
- First timesteps in main loop (#659) (@milankl)
- CompatHelper: bump compat for Makie in [weakdeps] to 0.22, (keep existing compat) (#663) (@github-actions[bot])
- Prescribed surface heat and evaporative fluxes (#664) (@milankl)
- AbstractVectors in interpolation.jl (#665) (@milankl)
- Initialize simulation restructured (#666) (@milankl)
- Surface fluxes modular on ocean and land (#667) (@milankl)
- [LowerTriangularMatrices] Sum for LTA (#668) (@maximilian-gelbrecht)
- Precipitation rate for coupling (#669) (@milankl)
- Bump to v0.14 (#670) (@milankl)
Closed issues:
- Design choices towards stochastic parameterizations (#199)
- Modified dynamics (#507)
- arbitrary tracer support (#564)
- Implement Heating as model component (#567)
- Profiling of timestep (#594)
- Differentiability of Spatial Gradients (#598)
- How to use SpeedyWeather to diagnose model run instability caused by initial conditions. (#643)
- Issue with Model Execution When trunc is Greater Than or Equal to 600 (#644)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] 11 months ago
SpeedyWeather.jl - v0.13.0
SpeedyWeather v0.13.0
Merged pull requests: - SpeedyTransforms: Differentiable transforms via custom Enzyme rule (#589) (@maximilian-gelbrecht) - CompatHelper: bump compat for GPUArrays to 11 and JLArrays to 0.2, (keep existing compat) (#590) (@github-actions[bot]) - Rossby-Haurwitz wave initial conditions for eta (#604) (@rivwgk) - Optical depth parameterization + array-agnostic ColumnVariables (#606) (@milankl) - large-scale condensation at <100% (#609) (@minqi6) - Slab ocean and net surface and top-of-atmosphere fluxes (#613) (@milankl) - Include large-scale condensation tests (#615) (@milankl) - Power spectrum for n-dimensional LowerTriangularArray (#618) (@milankl) - CompatHelper: add new compat entry for FiniteDifferences in [weakdeps] at version 0.12, (keep existing compat) (#620) (@github-actions[bot]) - CompatHelper: add new compat entry for Enzyme in [weakdeps] at version 0.13, (keep existing compat) (#622) (@github-actions[bot]) - One band longwave radiation implemented (#624) (@milankl) - [SpeedyTransforms] Restrict finite difference tests to one grid only (#625) (@maximilian-gelbrecht) - [SpeedyTransforms] Exclude second differentiation identity test for OctahedralGrid (#627) (@maximilian-gelbrecht) - Introduce separate extended tests in CI (#628) (@maximilian-gelbrecht) - AbstractStochasticPhysics and SPPT (#629) (@milankl) - AbstractSurfacePerturbation (#631) (@milankl) - bump to v0.13 (#632) (@milankl)
Closed issues: - Driven by reanalysis data (#576) - Stability Issues with Multiple Weather Trajectories Generation (#607)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 1 year ago
SpeedyWeather.jl - v0.12.1
SpeedyWeather v0.12.1
Merged pull requests:
- GeoMakie extension and interactive 3D grid visualisation on the sphere (#600) (@milankl)
- Array-agnostic horizontal diffusion, +modularised (#601) (@milankl)
- Define zonal_mean for any AbstractGridArray (#603) (@milankl)
- Update README.md with dataviz (#608) (@milankl)
- set! for boundary conditions (#611) (@milankl)
- ConstantLandTemperature implemented (#612) (@milankl)
Closed issues: - Spectral filtering instead of hyperdiffusion (#547) - Interactive 3D data visualisation directly on the grid (#599)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 1 year ago
SpeedyWeather.jl - v0.12.0
SpeedyWeather v0.12.0
Merged pull requests:
- Feedback.verbose coupled to isinteractive() (#582) (@milankl)
- Array-agnostic SpectralTransform (#583) (@milankl)
- Stop supporting Julia 1.9 (#585) (@milankl)
- Move CUDA to extension (#586) (@milankl)
- Do not interweave transform (#587) (@milankl)
- Add Haversine and general spherical_distance and AbstractSphericalDistance functionality (#588) (@treigerm)
- Rossby-Haurwitz wave initial conditions +docs (#591) (@milankl)
- SpectralAR1Process and AbstractRandomProcess (#592) (@milankl)
- Model constructors with positional SpectralGrid argument (#593) (@milankl)
- Introduce OctaminimalGaussianArray; smaller, faster but less accurate (#595) (@milankl)
- NetCDF output: Precipitation accumulated and rate (#596) (@milankl)
- Bump to v0.12 (#597) (@milankl)
Closed issues: - Performance of the spectral transform (#32) - Set! discontinuous across prime meridian (#584)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 1 year ago
SpeedyWeather.jl - v0.11.0
SpeedyWeather v0.11.0
Merged pull requests: - Restructured dynamical core, variables array-agnostic and 3-dimensional, modular netCDF output (#525) (@milankl) - Change LowerTriangularArrays to be subtype of AbstractArray{T,N-1} (#543) (@maximilian-gelbrecht) - JOSS paper citation (#548) (@navidcy) - Bump actions/upload-artifact from 1 to 4 (#550) (@dependabot[bot]) - Bump actions/checkout from 3 to 4 (#551) (@dependabot[bot]) - Bump stefanzweifel/git-auto-commit-action from 4 to 5 (#552) (@dependabot[bot]) - All parameterizations at prev timestep, flux limiters removed (#555) (@milankl) - Create CHANGELOG.md (#559) (@milankl) - LTA: copyto! for Vectors (#561) (@maximilian-gelbrecht) - LTA: colon indexing for LTM (#562) (@maximilian-gelbrecht) - Set! function for PrognosticVariables and ICs for new structure (#563) (@maximilian-gelbrecht) - New 4D Variable Structure: nlayers instead of nlev; starting to adjust docs (#566) (@maximilian-gelbrecht) - Fix RingGrid broadcast issue with mismatching dimensions (#568) (@maximilian-gelbrecht) - RingGrids: Fix RingGrids Array conversion (#572) (@maximilian-gelbrecht) - NetCDF output modularised (#573) (@milankl) - CompatHelper: bump compat for JLD2 to 0.5, (keep existing compat) (#574) (@github-actions[bot]) - Benchmarks for individual dynamics functions (#577) (@maximilian-gelbrecht) - set! for orography (#578) (@milankl) - Set! documentation / keywords (#580) (@maximilian-gelbrecht)
Closed issues: - Example GPU kernels (#121) - Modularise netCDF output (#522) - Instability develops over long integrations (#553) - RingGrids: Conflicting Broadcast Rules (#565) - RingGrids: N-dim Matrix/Array constructors (#570)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 1 year ago
SpeedyWeather.jl - v0.10.0
SpeedyWeather v0.10.0
Merged pull requests:
- JOSS paper (#387) (@milankl)
- Scheduler for callbacks (#488) (@milankl)
- Zenodo DOI added (#489) (@milankl)
- Schedule bug with millisecond time steps (#490) (@milankl)
- Update README.md with particle advection video (#491) (@milankl)
- Field trees (#492) (@milankl)
- Export coriolis, unscale diagnostics at finish, add! callbacks directly to model too (#494) (@milankl)
- Trees with summarysize (#495) (@milankl)
- ConstantOceanClimatology, AquaPlanet (#496) (@milankl)
- Document typical online analysis steps (#497) (@milankl)
- Convection with work arrays for thread safety (#498) (@milankl)
- Bulk Richardson-based vertical diffusion (#499) (@milankl)
- LowerTriangularMatrix copyto! range bug (#501) (@milankl)
- Jeevanjee longwave radiation (#502) (@milankl)
- LowerTriangularMatrices: N-dimensional and GPU ready (#503) (@maximilian-gelbrecht)
- Add to analysis doc (from new branch) (#505) (@milankl)
- Broadcasting for RingGrids (#506) (@milankl)
- Benchmark overview (#509) (@milankl)
- Large-scale condensation documented (#510) (@milankl)
- Add Makie extension (#511) (@milankl)
- Convection documentation (#512) (@milankl)
- Radiation documentation (#513) (@milankl)
- Held-Suarez example, NoTypes for surface fluxes (#514) (@milankl)
- Bump julia-actions/setup-julia from 1 to 2 (#516) (@dependabot[bot])
- Remove PythonPlot dependency of docs (#517) (@milankl)
- Model construction without type constraints (#519) (@milankl)
- AbstractGridArray N-dimensional and GPU ready (#520) (@milankl)
- Exports more gradient operators from SpeedyTransforms (#523) (@milankl)
- Change weight in ZonalJet() (#524) (@miniufo)
- Orography documented (#526) (@milankl)
- Particle advection time stepping corrected (#528) (@milankl)
- Humidity video for readme (#529) (@milankl)
- Surface flux documentation (#530) (@milankl)
- Add explicit arithmetics again to LowerTriangularArrays (#531) (@maximilian-gelbrecht)
- Vertical diffusion documentation (#532) (@milankl)
- Ocean model documentation (#533) (@milankl)
- Parameterization structure documented (#534) (@milankl)
- Bump Makie compat (#535) (@asinghvi17)
- Docs clarification: Parameterization for primitive models only (#536) (@milankl)
- Restructure docs following #443 (#537) (@milankl)
- Scale orography and smooth fraction of resolved wavenumbers (#538) (@milankl)
- StochasticStirring example with CairoMakie (#539) (@milankl)
- Horizontal diffusion not adaptive (#540) (@milankl)
- Large-scale condensation at previous time step (#541) (@milankl)
- Surface fluxes calculated from previous time step (#542) (@milankl)
- bump to v0.10 (#545) (@milankl)
Closed issues:
- Physical parameterizations: inconsistencies between speedy.f90 and the Speedy Documentation (#126)
- Progress towards primitive equations (#192)
- Divergence of (hu, hv, h) (#372)
- Initial conditions from PDEArena (#377)
- Conserved quantity verifying (#400)
- shallow-water case for a global ocean (#412)
- [JOSS review] Nat's Review of SpeedyWeather.jl (#443)
- [JOSS Review] questions + suggestions (#446)
- [JOSS review] Zenodo archival (#448)
- Another simple radiation scheme (#456)
- Automatic performance testing (#464)
- JOSS review: text comments (#480)
- Replace PythonPlot with a Julia-based plotting library in Docs (#482)
- Verifying conserved quantities (#500)
- PrimitiveDry and WetModel generation on Julia v1.9 hangs (#508)
- The PrimitiveWetModel example fails (#515)
- unbalanced initial condition for Galewsky Jet (#518)
- Time stepping of particle tracking (#527)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 1 year ago
SpeedyWeather.jl - v0.9.0
SpeedyWeather v0.9.0
Merged pull requests:
- Solar zenith angle calculation (#438) (@milankl)
- ImmediateCondensation and Clausius-Clapeyron (#439) (@milankl)
- Flux limiters for surface drag and heat fluxes (#440) (@milankl)
- Bulk Richardson number-based boundary layer drag (#441) (@milankl)
- Simplified BettsMiller convection (#442) (@milankl)
- Simple radiation schemes: UniformCooling, TransparentShortwave (#444) (@milankl)
- ImplicitCondensation not immediate anymore (#447) (@milankl)
- AquaPlanetMask (#450) (@milankl)
- Use Documenter.@docs functionality to display docstring in Documentation (#451) (@navidcy)
- Run LowerTriangularMatrix and output examples while building the docs (#453) (@navidcy)
- Some more examples running live in the Docs (#454) (@navidcy)
- Callbacks (#455) (@milankl)
- Restructuring the docs (#457) (@milankl)
- Collapse levels to streamline the documentation navigation (#458) (@natgeo-wong)
- Parametric models, non-parametric abstract types, remove DynamicsConstants, Dict of callbacks (#459) (@milankl)
- Particle advection in 2D, all models (#465) (@milankl)
- Dry Betts-Miller convection (#467) (@milankl)
- Add dependabot (#468) (@milankl)
- Initial conditions modular for variables (#469) (@milankl)
- Remove DEFAULT_NF generators of Earth and EarthAtmosphere (#470) (@milankl)
- Bump actions/cache from 3 to 4 (#471) (@dependabot[bot])
- Bump actions/checkout from 3 to 4 (#472) (@dependabot[bot])
- Add space after comma (#473) (@navidcy)
- Change arg name for isincreasing/isdecreasing to agree w docstring (#474) (@navidcy)
- Fix the Docs/SpeedyTransforms/Geostrophy example + make it run live by doc built (#475) (@navidcy)
- Remove testing for 1.8 and 1.9 temporarily (#476) (@milankl)
- Add space after semicolon (#477) (@navidcy)
- Delete deprecated doc instructions (#479) (@navidcy)
- Add @ids for model pages + add links to models pages in Docs landing page (#481) (@navidcy)
- ParticleTracker with netCDF (#484) (@milankl)
- rand(Particle) cos-distribution corrected (#485) (@milankl)
- Update README.md (#486) (@milankl)
- Bump to v0.9 (#487) (@milankl)
Closed issues: - online particle tracking (#413) - Convection too weak?! (#436) - Condensation fireworks (#445) - [JOSS Review] firstnames vs. initials in .bib file (#449) - Question about example in Docs/SpeedyTransforms/Geostrophy (#452) - Precompilation Error (#466)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] almost 2 years ago
SpeedyWeather.jl - v0.8.0
SpeedyWeather v0.8.0
Merged pull requests: - Make prognostics available for forcing, drag in Barotropic/SWM (#423) (@milankl) - Stochastic stirring video (#424) (@milankl) - Add random wave video (#425) (@milankl) - Export forcing!, drag!, etc for extending those with fewer conflicts (#426) (@milankl) - CompatHelper: bump compat for Adapt to 4, (keep existing compat) (#427) (@milankl) - Use Julia v1.10 for CI and building Docs (#428) (@navidcy) - Add compat entry for NCDatasets v0.14 (#429) (@navidcy) - Adjust time step with radius (#430) (@milankl) - Add remark about Julia compat (#431) (@navidcy) - Switch off dynamics (#432) (@milankl) - Vertical diffusion of humidity (#433) (@milankl) - NoBoundaryLayer but TemperatureRelaxation default for dry & wet models (#435) (@milankl) - bump to v0.8 (#437) (@milankl)
Closed issues:
- Literated example with the animation that is currently in README? (#297)
- Global shallow-water run (#323)
- Hybrid vertical coordinates (#329)
- What constitutes the 'state' of the model at a particular timestep (#347)
- SpeedyWeather's logic and information flow (#350)
- Zanna & Bolton eddy parameterization (#402)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] almost 2 years ago
SpeedyWeather.jl - v0.7.1
SpeedyWeather v0.7.1
Merged pull requests: - Period Keyword Argument instead of n_days (#420) (@maximilian-gelbrecht) - JOSS badge added (#421) (@milankl) - bump to v0.7.1 (#422) (@milankl)
Closed issues: - Given user-facing parameters that represent a time period actually units (#417)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 2 years ago
SpeedyWeather.jl - v0.7.0
SpeedyWeather v0.7.0
Merged pull requests: - Forcing and drag for the ShallowWaterModel (#376) (@milankl) - eta/pres was not output (#378) (@milankl) - RandomWaves initial conditions (#379) (@milankl) - scalecoslat funcs without Geometry, moved to RingGrids (#381) (@milankl) - Set lmax+1 row to zero in divergence!, curl! (#383) (@milankl) - Output via NCDatasets.jl, remove NetCDF.jl deps (#384) (@milankl) - Pretty printing for structs (#385) (@milankl) - Model setups documented (#386) (@milankl) - Land-sea mask (#389) (@milankl) - Bug: First NetCDF time step is always 2000-01-01 (#390) (@milankl) - Coriolis and div,curl,laplace convience functions (#392) (@milankl) - Accumulate vor/div tendencies (#393) (@milankl) - Ocean/Land for prognostic variables added (#395) (@milankl) - CompatHelper: bump compat for CUDA to 5, (keep existing compat) (#396) (@milankl) - Documentation: Extending SpeedyWeather.jl (#397) (@milankl) - CompatHelper: bump compat for FastGaussQuadrature to 1, (keep existin… (#398) (@milankl) - Surface fluxes of heat, moisture and momentum: Land and ocean seasonal climatology (#399) (@milankl) - CompatHelper: bump compat for NCDatasets to 0.13, (keep existing compat) (#401) (@milankl) - Soil moisture and vegetation (#403) (@milankl) - Overhauled initial conditions for humidity (#404) (@milankl) - Output cloud top [Pa], condensation simplified (#405) (@milankl) - NetCDF output with BFloat16 (#407) (@milankl) - plot(::LowerTriangularMatrix) (#408) (@milankl) - Simplify default vertical coordinate spacing to equi-distant with sigma (#409) (@milankl) - Convection (#414) (@milankl) - Fix loadtrajectory (#415) (@maximilian-gelbrecht) - Output_dt in leapfrog time stepping and some adjustments for using Dates (#418) (@maximilian-gelbrecht) - Bump to v0.7 (#419) (@milankl)
Closed issues: - References for the dynamical core (#45) - Use logging infrastructure for feedback messages (#68) - Number format-flexibility (#137) - Forcing and climatology in the shallow water system (#151) - Liniting (#220) - 16 bit model (#375) - divergence! should set last row to zero (#382) - plotting error with Float32sr spectralgrid! (#388) - Shallow water run (#391) - Barotropic vorticity model: Stochastic stirring (#394) - run BarotropicModel T21 with BFloat16 and output (#406) - low precision stochastic rounding (#411) - Output time axis: option to adhere to output_dt exactly (#416)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 2 years ago
SpeedyWeather.jl - v0.6.0
SpeedyWeather v0.6.0
Closed issues:
- 16-bit FFT (#31)
- Expanding the Documentation (#263)
- Cannot run example on non-GPU system (#282)
- Windows permssions problem (#285)
- Precompilation warnings? (#296)
- Away from monolithic run_speedy()? (#320)
- CI runs on latest Julia release -- should we add more? (#325)
- Query about computational resources (#342)
- CI test on supported Julia versions? (#359)
- Precompilation errors of IrrationalConstants dependency (#366)
- SpectralGrid not defined in v0.5 (#367)
Merged pull requests:
- New SpectralGrid, Model, initialize!, simulation, run! structure (#327) (@milankl)
- Add clarification for SWE variables (#332) (@navidcy)
- Update README.md (#333) (@milankl)
- RingGrids and LowerTriangularMatrices docs (#335) (@milankl)
- remove Model from SpectralGrid (#336) (@milankl)
- Update README.md (#337) (@milankl)
- SpeedyCondensation implemented (#338) (@milankl)
- Update README.md (#339) (@milankl)
- NetCDF output documented (#340) (@milankl)
- Barotropic vorticity equation algorithm described (#341) (@milankl)
- barotropic, shallowwater test cases (#343) (@milankl)
- absolute paths docs img (#344) (@milankl)
- Run examples and produce output with every Docs built (#345) (@navidcy)
- Plot ::AbstractGrid as Unicode heatmap (#346) (@milankl)
- Barotropic, shallow water, and some primitive model documentation (#348) (@milankl)
- Update README.md with logo (#349) (@milankl)
- Fix typos in docs (#351) (@pitmonticone)
- Fix typos in mk/docs (#352) (@pitmonticone)
- Move clock to prognostic variables (#353) (@milankl)
- plot small grids without spaces (#354) (@milankl)
- Non-adaptive implicit: tempprofile in implicit only (#355) (@milankl)
- SpectralTransform for square LowerTriMats too (#356) (@milankl)
- CompatHelper: bump compat for KernelAbstractions to 0.9, (keep existi… (#357) (@milankl)
- Support KernelAbstractions 0.9 (#358) (@vchuravy)
- Other video for primitive (#360) (@milankl)
- CI tests on Julia 1.8, 1.9 + test on Julia nightly every week (#361) (@milankl)
- Different vertical advection schemes (#362) (@simone-silvestri)
- SpeedyTransforms documentation (#363) (@milankl)
- Increase test tolerance (#364) (@milankl)
- Primitive equation documentation (#365) (@milankl)
- Bugfix in vertical advection (#368) (@simone-silvestri)
- Speedstring precompilation warning (#369) (@milankl)
- Full and octahedral Gaussian grid documented (#371) (@milankl)
- gettruncation(::AbstractGrid) (#373) (@milankl)
- bump to v0.6 (#374) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 2 years ago
SpeedyWeather.jl - v0.5.0
SpeedyWeather v0.5.0
Closed issues:
- Parallelism in the vertical (#20)
- Pretty printing (#57)
- Horizontal domain decomposition for parametrizations (#83)
- Overhaul approach to physical constants and model parameters (#86)
- Consistency between NetCDF output grid and internal grid? (#146)
- OctahedralGaussianGrid not defined (#168)
- Variable initialisation (#170)
- Inconsistency of pressure variable in convection parametrizations (#171)
- Use PsychroLib for psychrometric calculations (#172)
- Precision of Time Output in NetCDF Files (#180)
- Move to SpeedyWeather orga (#182)
- Move parameterisations into folder (#183)
- Discuss general API (#184)
- Solution struct / return the Output struct (#185)
- Pre-compilation warnings (#194)
- Gradients in spectral space ref in Docs/Dynamical Core is broken (#203)
- Merging strategy (#214)
- Abstraction, type-hierarchy and modularity (#222)
- Not more than 70 vertical levels (#228)
- Outsourcing packages (#231)
- Incompatible with Julia 1.7? (#232)
- Unable to open output files using NCDatasets.jl (#236)
- First output timestep is < 6 hours. (#237)
- semi-implicit corrections (#252)
- Linearize virtual temperature for geopotential? (dynamics only) (#254)
- Renaming in Prognostic/DiagnosticVariables (#255)
- Crazy temperatures: Vertical advection bug? (#257)
- Output time precision (again) (#266)
- Vertical advection instability? (#271)
- Not thread-safe / bit reproducible ?! (#272)
- Missing (-1)^{n+1} factor from hyperdiffusion term (#286)
- Greenland whole column instability at T255 (#289)
- Broken precompilation on Linux? (#294)
- Temperature profiles, forcing vs implicit (#299)
- Power spectrum (#304)
- Diffusion scaling (#306)
- Vertical diffusion (#309)
- Topography smoothing (#310)
- Static energy diffusion (#311)
Merged pull requests:
- Add shortwave radiation parametrization (#169) (@dmey)
- Adapt functions (#173) (@katharinamaetschke)
- CompatHelper: bump compat for FastGaussQuadrature to 0.5, (keep existing compat) (#174) (@github-actions[bot])
- runspeedy!(progn,diagn,model) (#175) (@milankl)
- Use BarotropicModel instead of :barotropic etc (#176) (@milankl)
- Add longwave radiation parametrization (#177) (@dmey)
- Update copyright and licensing information (#179) (@dmey)
- allocate arrays filled with nans (#181) (@milankl)
- Output Time Int64 and Custom RunId (#186) (@maximilian-gelbrecht)
- Adapt functions DefineDiffusion, DefineImplicit and Geometry (#187) (@katharinamaetschke)
- Geopotential calculation (#188) (@milankl)
- Surface pressure tendency (#189) (@milankl)
- Vertical velocity dsigma/dt (#191) (@milankl)
- Keep GPU branch up-to-date with Main (#193) (@maximilian-gelbrecht)
- addtendencies! updated to LowerTriangularMatrix (#195) (@milankl)
- Bernoulli potential for PrimitiveEquation (#196) (@milankl)
- Virtual temperature calculation (#197) (@milankl)
- Vertical advection of u,v + tendencies (vor, pres grads) (#198) (@milankl)
- Fix link to doc in README.md (#200) (@dmey)
- Fix typo (#202) (@navidcy)
- -Dbar in spectral; a,b work arrays; humidity advection; vorticityfluxdivcurl! with flags (#204) (@milankl)
- Temperature equation and primitive equation time stepping (#205) (@milankl)
- temp, pres initial conditions at rest (#206) (@milankl)
- mountain on/off/scale as parameter (#207) (@milankl)
- test ∇×∇=0 and ∇⋅∇=∇² (#208) (@milankl)
- horizontaldiffusion! generalised to ::ModelSetup (#209) (@milankl)
- Reformulated temperature equation (#210) (@milankl)
- Overhauled vertical advection (#211) (@milankl)
- Interpolation: AbstractGrid -> arbitrary grid (#212) (@milankl)
- In-place and more efficient eachring computation (#213) (@milankl)
- add colorbar to unicodeplots (#215) (@milankl)
- typo in vertical advection (#216) (@milankl)
- Parameters{Model<:ModelSetup} and orography abstracted (#217) (@milankl)
- Add mini development notes (#221) (@dmey)
- ZonalRidge orography added, Geometry with lond,latd (#223) (@milankl)
- u,vgrid instead of U,Vgrid; /coslat in spectrans (#224) (@milankl)
- interpolate, interpolate! between grids (#225) (@milankl)
- NetCDF output with interpolator (#226) (@milankl)
- Obtain nstratospherelevels from default parameter sigmatropopause (#227) (@milankl)
- add convenience interpolate method, show ring info for grids (#229) (@milankl)
- InitialConditions abstracted (#230) (@milankl)
- Scaling centralised, output on adjustable grid sizes (#233) (@milankl)
- Rename to OctaHEALPixGrid (#234) (@milankl)
- started grid documentation (#235) (@milankl)
- Adapt docs to SpeedyWeather orga (#238) (@milankl)
- Galewsky 2004 initial conditions for shallow water (#239) (@milankl)
- update @ref in docs (#240) (@milankl)
- restructure into folders and submodules (#241) (@milankl)
- grids comparison.png link corrected (#243) (@milankl)
- Update README.md (#244) (@milankl)
- New normalization for automatic sigma levels (#245) (@milankl)
- remove callside @inline as this requires 1.8 (#246) (@milankl)
- Galewsky init conditions modifiable in default params (#247) (@milankl)
- CompatHelper: bump compat for CUDA to 4, (keep existing compat) (#248) (@milankl)
- Jablonowski and Williamson initial conditions (#249) (@milankl)
- JW06 pressure constant (#250) (@milankl)
- Semi-implicit corrections for primitive equations (#251) (@milankl)
- Update README.md (#253) (@milankl)
- Primitive equation dry core bughunt (#256) (@milankl)
- Utility function loadtrajectory added (#258) (@maximilian-gelbrecht)
- Use Temporary Files for Test Output (#261) (@white-alistair)
- copy! for PrognosticVariables (#262) (@maximilian-gelbrecht)
- Multi-threading added (#264) (@milankl)
- Boundary layer scheme from Held and Suarez (#269) (@milankl)
- Held Suarez temperature forcing (#270) (@milankl)
- Update README.md (#273) (@milankl)
- Make default RNG seed deterministic (#274) (@white-alistair)
- Reduce memory: no U,V,bernoulli in DiagnVariables (#275) (@milankl)
- Shorten implicit geopotential k:nlev (#276) (@milankl)
- Planet abstracted, Earth <: Planet (#277) (@milankl)
- Hyper diffusion overhauled (#278) (@milankl)
- primitive equation video in readme (#279) (@milankl)
- TemperatureRelaxation, BoundaryLayer type stable (#280) (@milankl)
- Merge main into mk/parameterizations (#281) (@milankl)
- Missing (-1)^{n+1} factor from hyperdiffusion term (#283) (@navidcy)
- Add spaces after commas (#284) (@navidcy)
- restructure PrognosticVariables (#287) (@milankl)
- Docs for Parameters (#288) (@navidcy)
- Dealiasing parameter for quad,cub truncation (#290) (@milankl)
- Better docs rendering (#291) (@navidcy)
- Diffusion tapering for stratosphere (#292) (@milankl)
- Fix typo in docs: julia v1.78 -> v1.8 (#293) (@navidcy)
- Bump up julia requirement to v1.8 (#295) (@navidcy)
- New stratosphere diffusion defaults (#298) (@milankl)
- Progress.txt output with speed and ETA (#301) (@milankl)
- Temperature relaxation towards Jablonowski's profile (#302) (@milankl)
- new time step scaling following Jablonowski (#303) (@milankl)
- ETA and speedstring in progress.txt got lost (#305) (@milankl)
- Power spectrum analysis (#307) (@milankl)
- HyperDiffusion and VerticalDiffusion (#308) (@milankl)
- @unpack + import Paramters removed (#312) (@milankl)
- Parameterization fluxes and dry static energy diffusion (#313) (@milankl)
- docs minor stuff (#314) (@milankl)
- Truncate orography always to smooth T85 (#315) (@milankl)
- Keepbits per variable (#316) (@milankl)
- Float32, PrimitiveDryCore, OctaGauss new defaults (#317) (@milankl)
- Avoid type instability in fluxestotendencies! (#318) (@milankl)
- Minor things (#319) (@milankl)
- Some docs improvements (#321) (@navidcy)
- Update CompatHelper.yml (#322) (@navidcy)
- Update TagBot.yml (#324) (@navidcy)
- Add compat entry for FLoops (#326) (@navidcy)
- spectral_truncation/interpolation type stable (#328) (@milankl)
- 1st order upwind scheme for vertical advection (#330) (@milankl)
- bump to v0.5 (#331) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 2 years ago
SpeedyWeather.jl - v0.4.0
SpeedyWeather v0.4.0
Closed issues:
- Prepare input data (#40)
- Float32 vs Float64 performance (#106)
- A new grid for SpeedyWeather.jl? (#112)
- Shortening the Legendre Transform over m (#131)
- Output grids (#134)
- Broadcast operations with LowerTriangularMatrix (#135)
- Inverse Laplacian (#141)
- Longitude offset rotation (#159)
- @simd in Legendre Transform? (#162)
- copyto! function of LowerTriangularMatrix (#165)
Merged pull requests: - CompatHelper: bump compat for CUDAKernels to 0.4, (keep existing compat) (#119) (@github-actions[bot]) - CompatHelper: bump compat for KernelAbstractions to 0.8, (keep existing compat) (#120) (@github-actions[bot]) - AbstractGrids towards HEALPix or Octahedral (#122) (@milankl) - Parametrizations with ColumnVariables (#123) (@milankl) - Grid abstractions +indexing, SpecTrans performance (#124) (@milankl) - LowerTriangularMatrix extended (#125) (@milankl) - Grid-flexible spectral transform (#127) (@milankl) - Convection (#128) (@white-alistair) - Adapt functions for diagnosticvariables.jl (#130) (@katharinamaetschke) - Grid indexing (#132) (@milankl) - Update README.md (#133) (@milankl) - Float32 spectral transform (#136) (@milankl) - add OctahedralClenshawGrid + some refactoring of src/grids.jl (#138) (@hottad) - Initialize sigma levels manually (#139) (@maximilian-gelbrecht) - Grid to matrix for output (#140) (@milankl) - Inverse Laplace ∇⁻²! via kernel in ∇²! (#142) (@milankl) - Adapt structures for diagnostic variables and prognostic variables (#143) (@katharinamaetschke) - Interface relaxation with seasonal cycle (#144) (@milankl) - Shallow water model and OctahedralClenshawGrid default (#145) (@milankl) - Add kernelabstractionsadtests CI (#147) (@maximilian-gelbrecht) - Keep GPU branch up to date (#148) (@maximilian-gelbrecht) - FullHEALPixGrid (#150) (@milankl) - Update CI.yml (#152) (@maximilian-gelbrecht) - setvars! function to easily set variables in PrognosticVariables (#154) (@maximilian-gelbrecht) - fix getvar for pressure (#155) (@maximilian-gelbrecht) - HEALPix4Grid and FullHEALPix4Grid implementation (#156) (@hottad) - Lon offset rotation enabled (#160) (@milankl) - Healpix.jl dep removed (#163) (@milankl) - LowerTriangularMatrix Broadcast fix (#164) (@maximilian-gelbrecht) - Legendre shortcut: truncate loop over m (#166) (@milankl) - No [l,m] access to LTM in gradients (#167) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] about 3 years ago
SpeedyWeather.jl - v0.3.0
SpeedyWeather v0.3.0
Closed issues:
- Pre-allocate grid-point pressure values and use consistent naming (#91)
- Rotating spherical harmonics gif not showing up (#96)
- Initial conditions for shallow water (#98)
- Float64 run_speedy doesn't output correctly (#102)
- Float32 high resolution spectral transform (#104)
- LowerTriangularMatrix for spectral coefficients (#111)
Merged pull requests: - make scalecoslat! on output type flexible (#103) (@milankl) - Orography Legendre precomputation in Float64 (#105) (@milankl) - Take exponential of presgrid for parametrizations (#107) (@white-alistair) - Renaming for consistency, UVfromvor! added (#108) (@milankl) - Docs: sph harmonics + derivates updated (#109) (@milankl) - LowerTriangularMatrix implemented (#110) (@milankl) - write restart file, restart from it (#113) (@milankl) - CompatHelper: add new compat entry for JLD2 at version 0.4, (keep existing compat) (#114) (@github-actions[bot]) - CompatHelper: add new compat entry for CodecZlib at version 0.7, (keep existing compat) (#115) (@github-actions[bot]) - fibonacci -> triangle number (#116) (@milankl) - LowerTriangularMatrix in PrognVars, DiagnVars +restructured (#117) (@milankl) - Basics for KernelAbstractions / GPU (#118) (@maximilian-gelbrecht)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 3 years ago
SpeedyWeather.jl - v0.2.1
SpeedyWeather v0.2.1
Closed issues: - Get run id fails if 000?.xyz exists (#97)
Merged pull requests: - run???? folder conflict (#99) (@milankl) - div,curl corrected (#100) (@milankl) - bump to v0.2.1 (#101) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 3 years ago
SpeedyWeather.jl - v0.2.0
SpeedyWeather v0.2.0
Closed issues: - Spectral gradient leakage? (#63) - Spectral gradient unit test (#75) - Factory Methods for Testing (#84)
Merged pull requests: - vor as unicodeplot, days/day speed shown (#80) (@milankl) - Require Julia v1.7 (#81) (@white-alistair) - Parametrization of Large-Scale Condensation (#82) (@white-alistair) - Introduce ModelSetup distinction (#87) (@milankl) - get u,v from vor and div in ShallowWaterModel (#88) (@milankl) - More documentation (#89) (@milankl) - Define methods for ShallowWaterModel (#92) (@milankl) - CompatHelper: bump compat for UnicodePlots to 3, (keep existing compat) (#93) (@github-actions[bot]) - Semi-implicit time stepping (#94) (@milankl) - bump to v0.2 (#95) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 3 years ago
SpeedyWeather.jl - v0.1.1
SpeedyWeather v0.1.1
Closed issues: - Available resolutions (#22)
Merged pull requests: - Scale vorticity and gradients with radius (#70) (@milankl) - Pole stability, time step scaling, barotropic testcase (#72) (@milankl) - new teaser pic with T341 (#73) (@milankl) - renaming vorticity advection for consistency (#76) (@milankl) - Various models via dispatch (#78) (@milankl) - bump to v0.1.1 (#79) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 3 years ago
SpeedyWeather.jl - v0.1.0
SpeedyWeather v0.1.0
Closed issues: - Consistent definition of model (#42) - Naming "spectral" (#64)
Merged pull requests: - data, dependencies, initial structure (#1) (@milankl) - towards spectral transform (#2) (@milankl) - with appveyor and travis ymls (#3) (@milankl) - towards boundaries, geopotential, parameters, prognostics (#4) (@milankl) - Init (#5) (@milankl) - Init (#6) (@milankl) - Init (#7) (@milankl) - Legendre is approx, sin/cos lat now from the north pole (#8) (@milankl) - Docstrings and renaming (#9) (@milankl) - CI, gitignore, compat updated (#12) (@milankl) - make docs (#13) (@milankl) - copy over from sams version (#14) (@milankl) - initial docs structure (#15) (@milankl) - doc cleanup and developers (#16) (@milankl) - timestep! for 2D and 3D (#17) (@milankl) - Tk/tendencies (#18) (@tomkimpson) - mk/timestepping and horizontal diffusion (#19) (@milankl) - Mk/vertical (#23) (@milankl) - nlat=trunc+1 default resolution (#24) (@milankl) - leapfrog! without mem alloc (#25) (@milankl) - mk/timestepping (#26) (@milankl) - Style and convention in docs (#27) (@milankl) - Naming (#28) (@milankl) - Params renamed to Parameters (#29) (@milankl) - σlevels, geopot renamed, nstratospherelevels introduced (#30) (@milankl) - Spectral transform benchamrk, clip negatives (#34) (@milankl) - Spectral transform with variable resolution (#35) (@milankl) - T31 default, mx=nx=T+1 (#36) (@milankl) - CompatHelper: add new compat entry for AssociatedLegendrePolynomials at version 1, (keep existing compat) (#37) (@github-actions[bot]) - New spectral transform (#38) (@milankl) - Update tendencies structure (#39) (@tomkimpson) - Orography from high resolution (2048x1024) file (#41) (@milankl) - CompatHelper: bump compat for BitInformation to 0.4, (keep existing compat) (#43) (@github-actions[bot]) - Spectral gradients and Laplacians (#44) (@milankl) - CompatHelper: bump compat for BitInformation to 0.5, (keep existing compat) (#46) (@github-actions[bot]) - remove addition of Revise.jl to toml (#49) (@tomkimpson) - Updated getspectral_tendencies() function (#51) (@tomkimpson) - doc latex with ` (#52) (@milankl) - initialisation test in Float32/64 (#54) (@milankl) - Initialize model to time stepping flow (#55) (@milankl) - Feedback pipeline (#56) (@milankl) - show PrognosticVariables with UnicodePlots (#58) (@milankl) - NetCDF output (#59) (@milankl) - Barotropic vorticity time integration (#60) (@milankl) - Mk/cleanup (#65) (@milankl) - performance: avoid mem alloc for legendre (#66) (@milankl)
Scientific Software - Peer-reviewed
- Julia
Published by github-actions[bot] over 3 years ago