diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 08753831..8b51f3b8 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -54,7 +54,7 @@ jobs: - macos-latest - windows-latest include: - - version: '1.9' + - version: '1.11' os: ubuntu-latest steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/Documenter.yml b/.github/workflows/Documenter.yml index 3d3760e1..602da561 100644 --- a/.github/workflows/Documenter.yml +++ b/.github/workflows/Documenter.yml @@ -35,7 +35,7 @@ jobs: - uses: actions/checkout@v4 - uses: julia-actions/setup-julia@v2 with: - version: '1.9' + version: '1.10' show-versioninfo: true - uses: julia-actions/cache@v2 - uses: julia-actions/julia-buildpkg@v1 diff --git a/.github/workflows/Downgrade.yml b/.github/workflows/Downgrade.yml index 0df44435..0d6c0b13 100644 --- a/.github/workflows/Downgrade.yml +++ b/.github/workflows/Downgrade.yml @@ -35,7 +35,7 @@ jobs: fail-fast: false matrix: version: - - '1.9' + - '1.10' # - '~1.9.0-0' # including development versions # - 'nightly' os: @@ -49,7 +49,7 @@ jobs: - uses: julia-actions/cache@v2 - uses: julia-actions/julia-downgrade-compat@v1 with: - skip: LinearAlgebra,Printf,SparseArrays + skip: LinearAlgebra,Printf,SparseArrays,Test projects: ., test - uses: julia-actions/julia-buildpkg@v1 env: diff --git a/Project.toml b/Project.toml index e772cc52..39301f3f 100644 --- a/Project.toml +++ b/Project.toml @@ -25,21 +25,21 @@ TrixiBase = "9a0f1c46-06d5-4909-a5a3-ce25d3fa3284" [compat] BandedMatrices = "1" -DiffEqBase = "6.143" -FastBroadcast = "0.2.8, 0.3" -Interpolations = "0.14.2, 0.15" +DiffEqBase = "6.157" +FastBroadcast = "0.3.5" +Interpolations = "0.15.1" LinearAlgebra = "1" PolynomialBases = "0.4.15" Printf = "1" -RecipesBase = "1.2" -RecursiveArrayTools = "3.3" -Reexport = "1.0" +RecipesBase = "1.3.4" +RecursiveArrayTools = "3.27" +Reexport = "1.2.2" Roots = "2.0.17" -SciMLBase = "2.11" +SciMLBase = "2.56" SimpleUnPack = "1.1" SparseArrays = "1" -StaticArrays = "1" +StaticArrays = "1.9.7" SummationByPartsOperators = "0.5.63" TimerOutputs = "0.5.7" TrixiBase = "0.1.3" -julia = "1.9" +julia = "1.10" diff --git a/README.md b/README.md index a8e5762e..66196931 100644 --- a/README.md +++ b/README.md @@ -25,15 +25,21 @@ A more detailed documentation can be found [online](https://JoshuaLampert.github ## Installation If you have not yet installed Julia, then you first need to [download Julia](https://julialang.org/downloads/). Please [follow the instructions for your operating system](https://julialang.org/downloads/platform/). -DispersiveShallowWater.jl works with Julia v1.9 and newer. DispersiveShallowWater.jl is a registered Julia package. Therefore, you can install it by executing the following commands from the Julia REPL +DispersiveShallowWater.jl works with Julia v1.10 and newer. DispersiveShallowWater.jl is a registered Julia package. Therefore, you can install it by executing the following commands from the Julia REPL + ```julia julia> using Pkg -julia> Pkg.add(["DispersiveShallowWater", "OrdinaryDiffEq", "Plots"]) +julia> Pkg.add(["DispersiveShallowWater", "OrdinaryDiffEqTsit5", "Plots"]) ``` -In addition, this installs the packages [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) used for time-integration and [Plots.jl](https://github.com/JuliaPlots/Plots.jl) to visualize the results. + +In addition, this installs the packages OrdinaryDiffEqTsit5.jl from [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) +used for time-integration and [Plots.jl](https://github.com/JuliaPlots/Plots.jl) to visualize the results. If you want to use +other time integration methods than `Tsit5`, you can install the respective subpackage or OrdinaryDiffEq.jl, which will install +every available solver. If you want to use other SBP operators than the default operators that DispersiveShallowWater.jl uses, then you also need [SummationByPartsOperators.jl](https://github.com/ranocha/SummationByPartsOperators.jl), which can be installed running + ```julia julia> Pkg.add("SummationByPartsOperators") ``` @@ -41,19 +47,24 @@ julia> Pkg.add("SummationByPartsOperators") ## Usage In the Julia REPL, first load the package DispersiveShallowWater.jl + ```julia julia> using DispersiveShallowWater ``` You can run a basic simulation that solves the BBM-BBM equations by executing + ```julia julia> include(default_example()); ``` + The result can be visualized by using the package Plots.jl + ```julia julia> using Plots julia> plot(semi => sol) ``` + The command `plot` expects a `Pair` consisting of a `Semidiscretization` and an `ODESolution`. The visualization can also be customized, see the [documentation](https://JoshuaLampert.github.io/DispersiveShallowWater.jl/stable/overview#visualize_results) for more details. Other examples can be found in the subdirectory [examples/](https://github.com/JoshuaLampert/DispersiveShallowWater.jl/tree/main/examples). A list of all examples is returned by running `get_examples()`. You can pass the filename of one of the examples or your own simulation file to `include` in order to run it, @@ -62,6 +73,7 @@ e.g., `include(joinpath(examples_dir(), "svaerd_kalisch_1d", "svaerd_kalisch_1d_ ## Referencing You can directly refer to DispersiveShallowWater.jl as + ```bibtex @misc{lampert2023dispersive, title={{D}ispersive{S}hallow{W}ater.jl: {S}tructure-preserving numerical diff --git a/benchmark/Project.toml b/benchmark/Project.toml index cf3a822b..d55cf819 100644 --- a/benchmark/Project.toml +++ b/benchmark/Project.toml @@ -1,9 +1,11 @@ [deps] BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" -OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" +OrdinaryDiffEqLowStorageRK = "b0944070-b475-4768-8dec-fb6eb410534d" +OrdinaryDiffEqTsit5 = "b1df2697-797e-41e3-8120-5422d3b24e4a" SummationByPartsOperators = "9f78cca6-572e-554e-b819-917d2f1cf240" [compat] BenchmarkTools = "1" -OrdinaryDiffEq = "6.49.1" +OrdinaryDiffEqLowStorageRK = "1" +OrdinaryDiffEqTsit5 = "1" SummationByPartsOperators = "0.5.63" diff --git a/docs/Project.toml b/docs/Project.toml index 76e53476..3821d09d 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -1,7 +1,7 @@ [deps] Changelog = "5217a498-cd5d-4ec6-b8c2-9b85a09b6e3e" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" -OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" +OrdinaryDiffEqTsit5 = "b1df2697-797e-41e3-8120-5422d3b24e4a" Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" SummationByPartsOperators = "9f78cca6-572e-554e-b819-917d2f1cf240" TrixiBase = "9a0f1c46-06d5-4909-a5a3-ce25d3fa3284" @@ -9,7 +9,7 @@ TrixiBase = "9a0f1c46-06d5-4909-a5a3-ce25d3fa3284" [compat] Changelog = "1" Documenter = "1" -OrdinaryDiffEq = "6.49.1" +OrdinaryDiffEqTsit5 = "1" Plots = "1.9" SummationByPartsOperators = "0.5.41" TrixiBase = "0.1.1" diff --git a/docs/src/development.md b/docs/src/development.md index 9299bf9d..2ace72c4 100644 --- a/docs/src/development.md +++ b/docs/src/development.md @@ -19,7 +19,7 @@ cd DispersiveShallowWater mkdir run cd run julia --project=. -e 'using Pkg; Pkg.develop(PackageSpec(path=".."))' # Install local DispersiveShallowWater.jl clone -julia --project=. -e 'using Pkg; Pkg.add(["OrdinaryDiffEq", "Plots", "SummationByPartsOperators"])' # Install additional packages +julia --project=. -e 'using Pkg; Pkg.add(["OrdinaryDiffEqTsit5", "Plots", "SummationByPartsOperators"])' # Install additional packages ``` If you use other packages for executing DispersiveShallowWater.jl, you can add them to the project in the `run` diff --git a/docs/src/index.md b/docs/src/index.md index 9fd925ed..1b4d8028 100644 --- a/docs/src/index.md +++ b/docs/src/index.md @@ -24,15 +24,21 @@ Fully discrete entropy-conservative methods can be obtained by using the [relaxa ## Installation If you have not yet installed Julia, then you first need to [download Julia](https://julialang.org/downloads/). Please [follow the instructions for your operating system](https://julialang.org/downloads/platform/). -DispersiveShallowWater.jl works with Julia v1.9 and newer. DispersiveShallowWater.jl is a registered Julia package. Therefore, you can install it by executing the following commands from the Julia REPL +DispersiveShallowWater.jl works with Julia v1.10 and newer. DispersiveShallowWater.jl is a registered Julia package. Therefore, you can install it by executing the following commands from the Julia REPL + ```julia julia> using Pkg -julia> Pkg.add(["DispersiveShallowWater", "OrdinaryDiffEq", "Plots"]) +julia> Pkg.add(["DispersiveShallowWater", "OrdinaryDiffEqTsit5", "Plots"]) ``` -In addition, this installs the packages [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) used for time-integration and [Plots.jl](https://github.com/JuliaPlots/Plots.jl) to visualize the results. + +In addition, this installs the packages OrdinaryDiffEqTsit5.jl from [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) +used for time-integration and [Plots.jl](https://github.com/JuliaPlots/Plots.jl) to visualize the results. If you want to use +other time integration methods than `Tsit5`, you can install the respective subpackage or OrdinaryDiffEq.jl, which will install +every available solver. If you want to use other SBP operators than the default operators that DispersiveShallowWater.jl uses, then you also need [SummationByPartsOperators.jl](https://github.com/ranocha/SummationByPartsOperators.jl), which can be installed running + ```julia julia> Pkg.add("SummationByPartsOperators") ``` @@ -40,19 +46,24 @@ julia> Pkg.add("SummationByPartsOperators") ## Usage In the Julia REPL, first load the package DispersiveShallowWater.jl + ```julia julia> using DispersiveShallowWater ``` You can run a basic simulation that solves the BBM-BBM equations by executing + ```julia julia> include(default_example()); ``` + The result can be visualized by using the package Plots.jl + ```julia julia> using Plots julia> plot(semi => sol) ``` + The command `plot` expects a `Pair` consisting of a [`Semidiscretization`](@ref) and an `ODESolution`. The visualization can also be customized, see the [documentation](@ref visualize_results) for more details. Other examples can be found in the subdirectory [examples/](https://github.com/JoshuaLampert/DispersiveShallowWater.jl/tree/main/examples). A list of all examples is returned by running [`get_examples()`](@ref). You can pass the filename of one of the examples or your own simulation file to `include` in order to run it, @@ -61,6 +72,7 @@ e.g., `include(joinpath(examples_dir(), "svaerd_kalisch_1d", "svaerd_kalisch_1d_ ## Referencing You can directly refer to DispersiveShallowWater.jl as + ```bibtex @misc{lampert2023dispersive, title={{D}ispersive{S}hallow{W}ater.jl: {S}tructure-preserving numerical diff --git a/docs/src/overview.md b/docs/src/overview.md index 64adf57f..e404b875 100644 --- a/docs/src/overview.md +++ b/docs/src/overview.md @@ -27,7 +27,7 @@ In order to conduct a numerical simulation with DispersiveShallowWater.jl, we pe First, we load the necessary libraries: ```@example overview -using DispersiveShallowWater, OrdinaryDiffEq +using DispersiveShallowWater, OrdinaryDiffEqTsit5 ``` ## Define physical setup @@ -106,7 +106,9 @@ is a nonlinear invariant and should be constant over time as well. During the si Finally, the `ode` can be `solve`d using the interface from [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl). This means, we can specify a time-stepping scheme we want to use the tolerances for the adaptive time-stepping and the time values, where the solution values should be saved. In this case, we use the adaptive -explicit Runge-Kutta method `Tsit5` by Tsitouras of order 5(4). Here, we save the solution at 100 equidistant points. +explicit Runge-Kutta method `Tsit5` by Tsitouras of order 5(4), which is implemented in the subpackage OrdinaryDiffEqTsit5.jl. If you want to use other time-stepping +schemes, you can install the respective subpackage or the whole package OrdinaryDiffEq.jl, which will install every available solver. +Here, we save the solution at 100 equidistant points. ```@example overview tspan = (0.0, 25.0) @@ -214,7 +216,6 @@ nothing # hide ![analysis callback relaxation](analysis_callback_relaxation.png) - ## [Customize solver](@id customize_solver) In the semidiscretization created above, we used the default SBP operators, which are periodic finite difference operators. Using different SBP operators for the @@ -307,4 +308,3 @@ and [plot_examples.jl](https://github.com/JoshuaLampert/2023-master-thesis/blob/ Ranocha, Sayyari, Dalcin, Parsani, Ketcheson (2020): Relaxation Runge–Kutta Methods: Fully-Discrete Explicit Entropy-Stable Schemes for the Compressible Euler and Navier–Stokes Equations [DOI: 10.1137/19M1263480](https://doi.org/10.1137/19M1263480) - diff --git a/examples/bbm_1d/bbm_1d_basic.jl b/examples/bbm_1d/bbm_1d_basic.jl index 70be29ca..d619e3c1 100644 --- a/examples/bbm_1d/bbm_1d_basic.jl +++ b/examples/bbm_1d/bbm_1d_basic.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_1d/bbm_1d_fourier.jl b/examples/bbm_1d/bbm_1d_fourier.jl index 92b7146e..57642a26 100644 --- a/examples/bbm_1d/bbm_1d_fourier.jl +++ b/examples/bbm_1d/bbm_1d_fourier.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: fourier_derivative_operator diff --git a/examples/bbm_1d/bbm_1d_hamiltonian_relaxation.jl b/examples/bbm_1d/bbm_1d_hamiltonian_relaxation.jl index 266e9e8e..39e78b3c 100644 --- a/examples/bbm_1d/bbm_1d_hamiltonian_relaxation.jl +++ b/examples/bbm_1d/bbm_1d_hamiltonian_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_1d/bbm_1d_manufactured.jl b/examples/bbm_1d/bbm_1d_manufactured.jl index a738a8cd..15627872 100644 --- a/examples/bbm_1d/bbm_1d_manufactured.jl +++ b/examples/bbm_1d/bbm_1d_manufactured.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_1d/bbm_1d_relaxation.jl b/examples/bbm_1d/bbm_1d_relaxation.jl index 7699e976..59f11d9b 100644 --- a/examples/bbm_1d/bbm_1d_relaxation.jl +++ b/examples/bbm_1d/bbm_1d_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_basic.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_basic.jl index 82c1c7e7..ecdcaba2 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_basic.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_basic.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_basic_reflecting.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_basic_reflecting.jl index 89214343..bcdec7fb 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_basic_reflecting.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_basic_reflecting.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: MattssonNordström2004, derivative_operator diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_dg.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_dg.jl index ae57cd1a..e4590b59 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_dg.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_dg.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using SummationByPartsOperators: legendre_derivative_operator, UniformPeriodicMesh1D, couple_discontinuously diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_dingemans.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_dingemans.jl index d79881b2..f19f27d2 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_dingemans.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_dingemans.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_fourier.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_fourier.jl index 4fc9510e..c1b0c17f 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_fourier.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_fourier.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: fourier_derivative_operator diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_manufactured.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_manufactured.jl index 8a9c1006..a28bce1a 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_manufactured.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_manufactured.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_relaxation.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_relaxation.jl index 3524d4f7..54479064 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_relaxation.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_upwind_relaxation.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_upwind_relaxation.jl index c3a315fb..3365617a 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_upwind_relaxation.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_upwind_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: upwind_operators, periodic_derivative_operator using SparseArrays: sparse diff --git a/examples/bbm_bbm_1d/bbm_bbm_1d_well_balanced.jl b/examples/bbm_bbm_1d/bbm_bbm_1d_well_balanced.jl index 229a1ce1..9c3eb959 100644 --- a/examples/bbm_bbm_1d/bbm_bbm_1d_well_balanced.jl +++ b/examples/bbm_bbm_1d/bbm_bbm_1d_well_balanced.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: periodic_derivative_operator using SparseArrays: sparse diff --git a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_conservation.jl b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_conservation.jl index 23b03894..75c57f0c 100644 --- a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_conservation.jl +++ b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_conservation.jl @@ -6,7 +6,7 @@ # equations in standard and hyperbolic form # [arXiv: 2408.02665](https://arxiv.org/abs/2408.02665) -using OrdinaryDiffEq +using OrdinaryDiffEqLowStorageRK using DispersiveShallowWater ############################################################################### diff --git a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_dingemans.jl b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_dingemans.jl index b2eb6f39..012487e9 100644 --- a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_dingemans.jl +++ b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_dingemans.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqLowStorageRK using DispersiveShallowWater ############################################################################### diff --git a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_manufactured.jl b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_manufactured.jl index 3f8fc64d..b3107bee 100644 --- a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_manufactured.jl +++ b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_manufactured.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton.jl b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton.jl index 2b6e6969..9906f407 100644 --- a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton.jl +++ b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqLowStorageRK using DispersiveShallowWater ############################################################################### diff --git a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton_relaxation.jl b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton_relaxation.jl index 4166639e..ccf84265 100644 --- a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton_relaxation.jl +++ b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_soliton_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqLowStorageRK using DispersiveShallowWater using SummationByPartsOperators: fourier_derivative_operator diff --git a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_well_balanced.jl b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_well_balanced.jl index 3b9fad0d..35663746 100644 --- a/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_well_balanced.jl +++ b/examples/hyperbolic_serre_green_naghdi_1d/hyperbolic_serre_green_naghdi_well_balanced.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqLowStorageRK using DispersiveShallowWater ############################################################################### diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_conservation.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_conservation.jl index cf1b248d..9f8ee990 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_conservation.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_conservation.jl @@ -6,7 +6,7 @@ # equations in standard and hyperbolic form # [arXiv: 2408.02665](https://arxiv.org/abs/2408.02665) -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_dingemans.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_dingemans.jl index 685ba626..b8592cfd 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_dingemans.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_dingemans.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: upwind_operators, periodic_derivative_operator diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton.jl index 31c2186e..1eb416a3 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_fourier.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_fourier.jl index 6aee789b..a1d1db24 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_fourier.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_fourier.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: fourier_derivative_operator diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_relaxation.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_relaxation.jl index acfcc4ad..0ed0d420 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_relaxation.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: fourier_derivative_operator diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_upwind.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_upwind.jl index 37850ac0..227921ad 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_upwind.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_soliton_upwind.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: upwind_operators, periodic_derivative_operator using SparseArrays: sparse diff --git a/examples/serre_green_naghdi_1d/serre_green_naghdi_well_balanced.jl b/examples/serre_green_naghdi_1d/serre_green_naghdi_well_balanced.jl index 6cbadda6..023456ff 100644 --- a/examples/serre_green_naghdi_1d/serre_green_naghdi_well_balanced.jl +++ b/examples/serre_green_naghdi_1d/serre_green_naghdi_well_balanced.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: upwind_operators, periodic_derivative_operator diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans.jl index f1d1b618..32a17bf8 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_cg.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_cg.jl index cc75b757..422741e7 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_cg.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_cg.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: legendre_derivative_operator, UniformPeriodicMesh1D, couple_continuously, legendre_second_derivative_operator diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_fourier.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_fourier.jl index b5fc969e..d61d1e44 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_fourier.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_fourier.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: fourier_derivative_operator diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_relaxation.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_relaxation.jl index aa5b2442..eebbae51 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_relaxation.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_relaxation.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_upwind.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_upwind.jl index f57eff3b..10144c2e 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_upwind.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_dingemans_upwind.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater using SummationByPartsOperators: upwind_operators, periodic_derivative_operator diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_manufactured.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_manufactured.jl index dde4f83f..ef57de85 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_manufactured.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_manufactured.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_well_balanced.jl b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_well_balanced.jl index 906bfaff..708ab790 100644 --- a/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_well_balanced.jl +++ b/examples/svaerd_kalisch_1d/svaerd_kalisch_1d_well_balanced.jl @@ -1,4 +1,4 @@ -using OrdinaryDiffEq +using OrdinaryDiffEqTsit5 using DispersiveShallowWater ############################################################################### diff --git a/test/Project.toml b/test/Project.toml index b9bd8fc1..e42d3fec 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -1,7 +1,8 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" ExplicitImports = "7d51a73a-1435-4ff3-83d9-f097790105c7" -OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" +OrdinaryDiffEqLowStorageRK = "b0944070-b475-4768-8dec-fb6eb410534d" +OrdinaryDiffEqTsit5 = "b1df2697-797e-41e3-8120-5422d3b24e4a" Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" SummationByPartsOperators = "9f78cca6-572e-554e-b819-917d2f1cf240" @@ -12,7 +13,8 @@ TestItems = "1c621080-faea-4a02-84b6-bbd5e436b8fe" [compat] Aqua = "0.7, 0.8" ExplicitImports = "1.0.1" -OrdinaryDiffEq = "6.62" +OrdinaryDiffEqLowStorageRK = "1.1" +OrdinaryDiffEqTsit5 = "1.1" Plots = "1.25" SparseArrays = "1" SummationByPartsOperators = "0.5.63" diff --git a/test/runtests.jl b/test/runtests.jl index 99ffa9a1..08439f16 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -19,5 +19,5 @@ end Mattsson2017 using SparseArrays: sparse, SparseMatrixCSC - using OrdinaryDiffEq: solve + using OrdinaryDiffEqTsit5: solve end diff --git a/test/test_serre_green_naghdi_1d.jl b/test/test_serre_green_naghdi_1d.jl index 05b9950d..1901b5c6 100644 --- a/test/test_serre_green_naghdi_1d.jl +++ b/test/test_serre_green_naghdi_1d.jl @@ -12,7 +12,7 @@ end change_waterheight=0.0, change_entropy_modified=-3.1093350116861984e-11) - @test_allocations(semi, sol, allocs=550_000) + @test_allocations(semi, sol, allocs=650_000) end @testitem "serre_green_naghdi_soliton.jl with bathymetry_mild_slope" setup=[ @@ -110,7 +110,7 @@ end change_waterheight=4.263256414560601e-14, change_entropy_modified=-3.1036506698001176e-11) - @test_allocations(semi, sol, allocs=500_000) + @test_allocations(semi, sol, allocs=600_000) end @testitem "serre_green_naghdi_soliton_upwind.jl with bathymetry_mild_slope" setup=[