diff --git a/Project.toml b/Project.toml index 150569d..ef26b57 100644 --- a/Project.toml +++ b/Project.toml @@ -1,34 +1,30 @@ name = "PoincareInvariants" uuid = "26663084-47d3-540f-bd97-40ca743aafa4" authors = ["Michael Kraus "] -version = "0.3.1" +version = "0.3.2" [deps] ApproxFun = "28f2ccd6-bb30-5033-b560-165f7b14dc2f" -ContinuumArrays = "7ae1f121-cc2c-504b-ac30-9b923412ae5c" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" DoubleFloats = "497a8b3b-efae-58df-a0af-a86822472b78" FFTW = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" -FastTransforms = "057dd010-8810-581a-b7be-e3fc3b93f78c" GeometricIntegrators = "dcce2d33-59f6-5b8d-9047-0defad88ae06" HDF5 = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" OffsetArrays = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" -OrthogonalPolynomialsQuasi = "aa41a628-2c43-45df-899b-83ab96621781" ProgressMeter = "92933f4c-e287-5a05-a399-4b506db050ca" +Requires = "ae029012-a4dd-5104-9daa-d747884805df" [compat] ApproxFun = "0.10, 0.11, 0.12" -ContinuumArrays = "0.3" Documenter = "0.23, 0.24, 0.25, 0.26" DoubleFloats = "1" -FFTW = "1.2" -FastTransforms = "0.10, 0.11" +FFTW = "1" GeometricIntegrators = "0.5, 0.6" HDF5 = "0.10, 0.12, 0.13, 0.14" -OffsetArrays = "1.4" -OrthogonalPolynomialsQuasi = "0.3, 0.4" +OffsetArrays = "1" ProgressMeter = "1" +Requires = "1" julia = "^1.4" [extras] diff --git a/src/PoincareInvariants.jl b/src/PoincareInvariants.jl index 97b2d7e..5f5fbbd 100644 --- a/src/PoincareInvariants.jl +++ b/src/PoincareInvariants.jl @@ -4,6 +4,7 @@ module PoincareInvariants using FFTW using OffsetArrays using ProgressMeter + using Requires using GeometricIntegrators using GeometricIntegrators.Utils @@ -30,9 +31,14 @@ module PoincareInvariants include("poincare_invariant_1st.jl") include("poincare_invariant_1st_canonical.jl") include("poincare_invariant_2nd_approxfun.jl") - include("poincare_invariant_2nd_opq.jl") include("poincare_invariant_2nd_trapezoidal.jl") + @require OrthogonalPolynomialsQuasi = "aa41a628-2c43-45df-899b-83ab96621781" begin + @require FastTransforms = "057dd010-8810-581a-b7be-e3fc3b93f78c" begin + include("poincare_invariant_2nd_opq.jl") + end + end + const PoincareInvariant2nd = PoincareInvariant2ndApproxFun const PoincareInvariant2ndCanonical = PoincareInvariant2ndApproxFunCanonical diff --git a/src/poincare_invariant_1st.jl b/src/poincare_invariant_1st.jl index 8bdeef8..ec170af 100644 --- a/src/poincare_invariant_1st.jl +++ b/src/poincare_invariant_1st.jl @@ -77,7 +77,7 @@ function evaluate_poincare_invariant(pinv::PoincareInvariant1st, sol::Solution) end -function CommonFunctions.write_to_hdf5(pinv::PoincareInvariant1st, sol::Solution, output_file::String) +function write_to_hdf5(pinv::PoincareInvariant1st, sol::Solution, output_file::String) # h5open(output_file, isfile(output_file) ? "r+" : "w") do h5 h5open(output_file, "w") do h5 diff --git a/src/poincare_invariant_1st_canonical.jl b/src/poincare_invariant_1st_canonical.jl index e07c33f..ea274b5 100644 --- a/src/poincare_invariant_1st_canonical.jl +++ b/src/poincare_invariant_1st_canonical.jl @@ -56,7 +56,7 @@ function evaluate_poincare_invariant(pinv::PoincareInvariant1stCanonical, sol::S end -function CommonFunctions.write_to_hdf5(pinv::PoincareInvariant1stCanonical, sol::Solution, output_file::String) +function write_to_hdf5(pinv::PoincareInvariant1stCanonical, sol::Solution, output_file::String) # h5open(output_file, isfile(output_file) ? "r+" : "w") do h5 h5open(output_file, "w") do h5 write(h5, "t", sol.t) diff --git a/src/poincare_invariant_2nd_approxfun.jl b/src/poincare_invariant_2nd_approxfun.jl index 5c73671..cd41e2e 100644 --- a/src/poincare_invariant_2nd_approxfun.jl +++ b/src/poincare_invariant_2nd_approxfun.jl @@ -138,7 +138,7 @@ function evaluate_poincare_invariant_correction(pinv::PoincareInvariant2ndApprox end -function CommonFunctions.write_to_hdf5(pinv::PoincareInvariant2ndApproxFun{DT}, sol::Solution, output_file::String) where {DT} +function write_to_hdf5(pinv::PoincareInvariant2ndApproxFun{DT}, sol::Solution, output_file::String) where {DT} # h5open(output_file, isfile(output_file) ? "r+" : "w") do h5 h5open(output_file, "w") do h5 @@ -234,7 +234,7 @@ function evaluate_poincare_invariant(pinv::PoincareInvariant2ndApproxFunCanonica end -function CommonFunctions.write_to_hdf5(pinv::PoincareInvariant2ndApproxFunCanonical{DT}, sol::Solution, output_file::String) where {DT} +function write_to_hdf5(pinv::PoincareInvariant2ndApproxFunCanonical{DT}, sol::Solution, output_file::String) where {DT} # h5open(output_file, isfile(output_file) ? "r+" : "w") do h5 h5open(output_file, "w") do h5 write(h5, "t", sol.t) diff --git a/src/poincare_invariant_2nd_opq.jl b/src/poincare_invariant_2nd_opq.jl index 809be63..e47217e 100644 --- a/src/poincare_invariant_2nd_opq.jl +++ b/src/poincare_invariant_2nd_opq.jl @@ -467,7 +467,7 @@ function evaluate_poincare_invariant(pinv::PoincareInvariant2ndOPQ{DT}, sol::Sol end -function CommonFunctions.write_to_hdf5(pinv::PoincareInvariant2ndOPQ, sol::Solution, output_file::String) +function write_to_hdf5(pinv::PoincareInvariant2ndOPQ, sol::Solution, output_file::String) # h5open(output_file, isfile(output_file) ? "r+" : "w") do h5 h5open(output_file, "w") do h5 diff --git a/src/poincare_invariant_2nd_trapezoidal.jl b/src/poincare_invariant_2nd_trapezoidal.jl index 931bb01..01a56f2 100644 --- a/src/poincare_invariant_2nd_trapezoidal.jl +++ b/src/poincare_invariant_2nd_trapezoidal.jl @@ -228,7 +228,7 @@ function evaluate_poincare_invariant(pinv::PoincareInvariant2ndTrapezoidal{DT}, end -function CommonFunctions.write_to_hdf5(pinv::PoincareInvariant2ndTrapezoidal, sol::Solution, output_file::String) +function write_to_hdf5(pinv::PoincareInvariant2ndTrapezoidal, sol::Solution, output_file::String) # h5open(output_file, isfile(output_file) ? "r+" : "w") do h5 h5open(output_file, "w") do h5 diff --git a/test/poincare_invariant_2nd_tests.jl b/test/poincare_invariant_2nd_tests.jl index f5212e5..52fd005 100644 --- a/test/poincare_invariant_2nd_tests.jl +++ b/test/poincare_invariant_2nd_tests.jl @@ -1,6 +1,7 @@ include("poincare_invariant_2nd_module.jl") +using Requires using Test using .PoincareInvariant2ndTest @@ -29,10 +30,14 @@ In, Jn = compute_invariant_approxfun(nx, ny) @test Jn ≈ Ia atol=2eps() -In, Jn = compute_invariant_opq(nx, ny) +@require OrthogonalPolynomialsQuasi = "aa41a628-2c43-45df-899b-83ab96621781" begin + @require FastTransforms = "057dd010-8810-581a-b7be-e3fc3b93f78c" begin + In, Jn = compute_invariant_opq(nx, ny) -@test In ≈ Ia atol=1E-1 -#@test Jn ≈ Ia atol=1E-1 + @test In ≈ Ia atol=1E-1 + #@test Jn ≈ Ia atol=1E-1 + end +end In, Jn = compute_invariant_trapezoidal(nx, ny)