Package evaluation of OceanTurb on Julia 1.13.0-DEV.974 (7bbb213719*) started at 2025-08-12T15:10:48.876 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 9.65s ################################################################################ # Installation # Installing OceanTurb... Resolving package versions... Installed Conda ── v1.10.2 Installed PyCall ─ v1.96.4 Updating `~/.julia/environments/v1.13/Project.toml` [d848d694] + OceanTurb v0.3.4 Updating `~/.julia/environments/v1.13/Manifest.toml` [8f4d0f93] + Conda v1.10.2 [682c06a0] + JSON v0.21.4 [1914dd2f] + MacroTools v0.5.16 [d848d694] + OceanTurb v0.3.4 [6fe1bfb0] + OffsetArrays v1.17.0 [69de0a69] + Parsers v2.8.3 [aea7be01] + PrecompileTools v1.3.2 [21216c6a] + Preferences v1.5.0 [438e738f] + PyCall v1.96.4 [90137ffa] + StaticArrays v1.9.14 [1e83bf80] + StaticArraysCore v1.4.3 [10745b16] + Statistics v1.11.1 [81def892] + VersionParsing v1.3.0 [0dad84c5] + ArgTools v1.1.2 [56f22d72] + Artifacts v1.11.0 [ade2ca70] + Dates v1.11.0 [f43a241f] + Downloads v1.7.0 [7b1f6079] + FileWatching v1.11.0 [b27032c2] + LibCURL v0.6.4 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.13.0 [a63ad114] + Mmap v1.11.0 [ca575930] + NetworkOptions v1.3.0 [de0858da] + Printf v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v0.7.0 [9e88b42a] + Serialization v1.11.0 [fa267f1f] + TOML v1.0.3 [cf7118a7] + UUIDs v1.11.0 [4ec0a83e] + Unicode v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] + LibCURL_jll v8.15.0+1 [29816b5a] + LibSSH2_jll v1.11.3+1 [14a3606d] + MozillaCACerts_jll v2025.7.15 [4536629a] + OpenBLAS_jll v0.3.29+0 [458c3c95] + OpenSSL_jll v3.5.2+0 [83775a58] + Zlib_jll v1.3.1+2 [3161d3a3] + Zstd_jll v1.5.7+1 [8e850b90] + libblastrampoline_jll v5.13.1+0 [8e850ede] + nghttp2_jll v1.65.0+0 Building Conda ─→ `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/b19db3927f0db4151cb86d073689f2428e524576/build.log` Building PyCall → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/9816a3826b0ebf49ab4926e2b18842ad8b5c8f04/build.log` Installation completed after 60.23s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompilation completed after 24.63s ################################################################################ # Testing # Testing OceanTurb Status `/tmp/jl_CPPQ99/Project.toml` [a2441757] Coverage v1.6.1 [d848d694] OceanTurb v0.3.4 [6fe1bfb0] OffsetArrays v1.17.0 [438e738f] PyCall v1.96.4 [90137ffa] StaticArrays v1.9.14 [10745b16] Statistics v1.11.1 [37e2e46d] LinearAlgebra v1.13.0 [de0858da] Printf v1.11.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_CPPQ99/Manifest.toml` [d1d4a3ce] BitFlags v0.1.9 [944b1d66] CodecZlib v0.7.8 [f0e56b4a] ConcurrentUtilities v2.5.0 [8f4d0f93] Conda v1.10.2 [a2441757] Coverage v1.6.1 [c36e975a] CoverageTools v1.3.2 [460bff9d] ExceptionUnwrapping v0.1.11 [cd3eb016] HTTP v1.10.17 [692b3bcd] JLLWrappers v1.7.1 [682c06a0] JSON v0.21.4 [e6f89c97] LoggingExtras v1.1.0 [1914dd2f] MacroTools v0.5.16 [739be429] MbedTLS v1.1.9 [d848d694] OceanTurb v0.3.4 [6fe1bfb0] OffsetArrays v1.17.0 [4d8831e6] OpenSSL v1.5.0 [69de0a69] Parsers v2.8.3 [aea7be01] PrecompileTools v1.3.2 [21216c6a] Preferences v1.5.0 [438e738f] PyCall v1.96.4 [777ac1f9] SimpleBufferStream v1.2.0 [90137ffa] StaticArrays v1.9.14 [1e83bf80] StaticArraysCore v1.4.3 [10745b16] Statistics v1.11.1 [3bb67fe8] TranscodingStreams v0.11.3 [5c2747f8] URIs v1.6.1 [81def892] VersionParsing v1.3.0 [c8ffd9c3] MbedTLS_jll v2.28.6+2 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [ade2ca70] Dates v1.11.0 [f43a241f] Downloads v1.7.0 [7b1f6079] FileWatching v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [ac6e5ff7] JuliaSyntaxHighlighting v1.12.0 [b27032c2] LibCURL v0.6.4 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [a63ad114] Mmap v1.11.0 [ca575930] NetworkOptions v1.3.0 [de0858da] Printf v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v0.7.0 [9e88b42a] Serialization v1.11.0 [6462fe0b] Sockets v1.11.0 [f489334b] StyledStrings v1.11.0 [fa267f1f] TOML v1.0.3 [8dfed614] Test v1.11.0 [cf7118a7] UUIDs v1.11.0 [4ec0a83e] Unicode v1.11.0 [e66e0078] CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] LibCURL_jll v8.15.0+1 [e37daf67] LibGit2_jll v1.9.1+0 [29816b5a] LibSSH2_jll v1.11.3+1 [14a3606d] MozillaCACerts_jll v2025.7.15 [4536629a] OpenBLAS_jll v0.3.29+0 [458c3c95] OpenSSL_jll v3.5.2+0 [efcefdf7] PCRE2_jll v10.45.0+0 [83775a58] Zlib_jll v1.3.1+2 [3161d3a3] Zstd_jll v1.5.7+1 [8e850b90] libblastrampoline_jll v5.13.1+0 [8e850ede] nghttp2_jll v1.65.0+0 Testing Running tests... Test Summary: | Pass Total Time Utils | 5 5 4.7s Test Summary: | Pass Total Time Solvers | 2 2 2.3s Test Summary: | Pass Total Time Grids | 18 18 1.3s Test Summary: | Pass Total Time Fields | 24 24 7.1s WARNING: Method definition test_diffusive_flux() in module Main at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_utils.jl:16 overwritten at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_diffusion.jl:17. Test Summary: | Pass Total Time Diffusion | 14 14 4.8s Test Summary: | Pass Total Time Pacanowski-Philander | 2 2 2.8s Test Summary: | Pass Total Time KPP | 51 51 31.4s Test Summary: | Pass Total Time Modular KPP | 17 17 51.5s WARNING: Method definition test_default_model_init() in module Main at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_modularkpp.jl:5 overwritten at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:5. WARNING: Method definition test_default_model_init(Any) in module Main at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_modularkpp.jl:5 overwritten at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:5. WARNING: Method definition test_default_model_init(Any, Any) in module Main at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_modularkpp.jl:5 overwritten at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:5. TKEMassFlux tests begin: testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, Nothing, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::Nothing, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, Nothing, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::Nothing, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.EquilibriumMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.LMDCounterGradientFlux{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, Nothing, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::Nothing, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedNearWallTKE{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEValue{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK testing... OK TKEMassFlux: Error During Test at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 Test threw exception Expression: time_step_tke_mass_flux_model(boundary_layer_depth, mixing_length, nonlocal_flux, tke_equation, wall_model, eddy_diffusivity_model) BoundsError: attempt to access 6-element OffsetArray(::Vector{Float64}, 0:5) with eltype Float64 with indices 0:5 at index [6] Stacktrace: [1] throw_boundserror(A::OffsetArrays.OffsetVector{Float64, Vector{Float64}}, I::Tuple{Int64}) @ Base ./essentials.jl:15 [2] checkbounds @ ./abstractarray.jl:698 [inlined] [3] getindex @ ~/.julia/packages/OffsetArrays/b7qpm/src/OffsetArrays.jl:434 [inlined] [4] ∂z @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:361 [inlined] [5] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/KPP.jl:159 [inlined] [6] ∂B∂z @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/TKEMassFlux.jl:29 [inlined] [7] Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:111 [inlined] [8] oncell @ ~/.julia/packages/OceanTurb/wYitF/src/fields.jl:461 [inlined] [9] cell_Richardson_number @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:115 [inlined] [10] Cᴷu @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:121 [inlined] [11] KU @ ~/.julia/packages/OceanTurb/wYitF/src/models/TKEMassFlux/diffusivities.jl:5 [inlined] [12] #update!##0 @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:157 [inlined] [13] macro expansion @ ./ntuple.jl:74 [inlined] [14] ntuple @ ./ntuple.jl:71 [inlined] [15] update!(solution::OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, m::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, eqn::Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, bcs::@NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:151 [16] update! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:162 [inlined] [17] time_step! @ ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:269 [inlined] [18] time_step!(model::OceanTurb.TKEMassFlux.Model{OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}, Nothing, OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, OceanTurb.TKEMassFlux.TKEParameters{Float64}, OceanTurb.ModularKPP.LMDMixingDepth{Float64}, OceanTurb.TKEMassFlux.BackgroundDiffusivities{Float64}, Constants{Float64}, OceanTurb.TKEMassFlux.State{Float64, CellField{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, Nothing, Float64, Nothing}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, BackwardEulerTimestepper{Equation{NTuple{5, typeof(OceanTurb.minuszero)}, @NamedTuple{U::typeof(OceanTurb.minuszero), V::typeof(OceanTurb.minuszero), T::typeof(OceanTurb.minuszero), S::typeof(OceanTurb.minuszero), e::typeof(OceanTurb.TKEMassFlux.Le)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.KU), V::typeof(OceanTurb.TKEMassFlux.KV), T::typeof(OceanTurb.TKEMassFlux.KT), S::typeof(OceanTurb.TKEMassFlux.KS), e::typeof(OceanTurb.TKEMassFlux.Ke)}, @NamedTuple{U::typeof(OceanTurb.TKEMassFlux.RU), V::typeof(OceanTurb.TKEMassFlux.RV), T::typeof(OceanTurb.TKEMassFlux.RT), S::typeof(OceanTurb.TKEMassFlux.RS), e::typeof(OceanTurb.TKEMassFlux.Re)}, typeof(OceanTurb.TKEMassFlux.update_state!)}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, NTuple{5, Tridiagonal{Float64, Vector{Float64}}}}, OceanTurb.TKEMassFlux.Solution{Vector{Float64}, UniformGrid{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, Float64}, @NamedTuple{U::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, V::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, T::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, S::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, Float64}}, e::FieldBoundaryConditions{BoundaryCondition{Gradient, Float64}, BoundaryCondition{Flux, typeof(OceanTurb.TKEMassFlux.prescribed_surface_tke_flux)}}}, Float64}, Δt::Float64, Nt::Int64) @ OceanTurb ~/.julia/packages/OceanTurb/wYitF/src/timesteppers.jl:18 [19] time_step_tke_mass_flux_model(boundary_layer_depth::OceanTurb.ModularKPP.LMDMixingDepth{Float64}, mixing_length::OceanTurb.TKEMassFlux.SimpleMixingLength{Float64}, nonlocal_flux::OceanTurb.ModularKPP.SiebesmaDiagnosticPlumeModel{Float64}, tke_equation::OceanTurb.TKEMassFlux.TKEParameters{Float64}, tke_wall_model::OceanTurb.TKEMassFlux.PrescribedSurfaceTKEFlux{Float64}, eddy_diffusivities::OceanTurb.TKEMassFlux.RiDependentDiffusivities{Float64}) @ Main ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 [20] eval_test_function(func::Any, args::Any, kwargs::Any, quoted_func::Union{Expr, Symbol}, source::LineNumberNode, negate::Bool) @ Test /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:388 [21] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] [22] macro expansion @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] [23] macro expansion @ /opt/julia/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] [24] top-level scope @ ~/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 testing... OK testing... OK ====================================================================================== Information request received. A stacktrace will print followed by a 1.0 second profile ====================================================================================== cmd: /opt/julia/bin/julia 293 running 1 of 1 signal (10): User defined signal 1 unknown function (ip: 0x7f8c9761fc14) at /lib/x86_64-linux-gnu/libc.so.6 malloc at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) operator new at /workspace/srcdir/gcc-14.2.0/libstdc++-v3/libsupc++/new_op.cc:50 _ZN15LiveDebugValues16InstrRefBasedLDV19transferRegisterDefERN4llvm12MachineInstrE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN15LiveDebugValues16InstrRefBasedLDV27produceMLocTransferFunctionERN4llvm15MachineFunctionERNS1_15SmallVectorImplINS1_13SmallDenseMapINS_6LocIdxENS_10ValueIDNumELj4ENS1_12DenseMapInfoIS6_vEENS1_6detail12DenseMapPairIS6_S7_EEEEEEj at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN15LiveDebugValues16InstrRefBasedLDV12ExtendRangesERN4llvm15MachineFunctionEPNS1_20MachineDominatorTreeEPNS1_16TargetPassConfigEjj at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE.part.0 at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm3orc14SimpleCompilerclERNS_6ModuleE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) operator() at /source/src/jitlayers.cpp:1612 addModule at /source/src/jitlayers.cpp:2093 jl_compile_codeinst_now at /source/src/jitlayers.cpp:682 jl_compile_codeinst_impl at /source/src/jitlayers.cpp:873 jl_compile_method_internal at /source/src/gf.c:3527 _jl_invoke at /source/src/gf.c:4007 [inlined] ijl_apply_generic at /source/src/gf.c:4212 time_step_tke_mass_flux_model at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 unknown function (ip: 0x7f8c4dbc7216) at (unknown file) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] jl_f__apply_iterate at /source/src/builtins.c:864 eval_test_function at /source/usr/share/julia/stdlib/v1.13/Test/src/Test.jl:388 unknown function (ip: 0x7f8c962054ae) at (unknown file) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 macro expansion at /source/usr/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] macro expansion at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] macro expansion at /source/usr/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] top-level scope at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_invoke at /source/src/gf.c:4022 jl_toplevel_eval_flex at /source/src/toplevel.c:762 jl_toplevel_eval_flex at /source/src/toplevel.c:713 ijl_toplevel_eval at /source/src/toplevel.c:785 ijl_toplevel_eval_in at /source/src/toplevel.c:830 eval at ./boot.jl:489 include_string at ./loading.jl:2847 _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 _include at ./loading.jl:2907 include at ./Base.jl:312 IncludeInto at ./Base.jl:313 jfptr_IncludeInto_74172.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] do_call at /source/src/interpreter.c:123 eval_value at /source/src/interpreter.c:243 eval_stmt_value at /source/src/interpreter.c:194 [inlined] eval_body at /source/src/interpreter.c:708 jl_interpret_toplevel_thunk at /source/src/interpreter.c:899 jl_toplevel_eval_flex at /source/src/toplevel.c:773 jl_toplevel_eval_flex at /source/src/toplevel.c:713 ijl_toplevel_eval at /source/src/toplevel.c:785 ijl_toplevel_eval_in at /source/src/toplevel.c:830 eval at ./boot.jl:489 include_string at ./loading.jl:2847 _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 _include at ./loading.jl:2907 include at ./Base.jl:312 IncludeInto at ./Base.jl:313 jfptr_IncludeInto_74172.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] do_call at /source/src/interpreter.c:123 eval_value at /source/src/interpreter.c:243 eval_stmt_value at /source/src/interpreter.c:194 [inlined] eval_body at /source/src/interpreter.c:708 jl_interpret_toplevel_thunk at /source/src/interpreter.c:899 jl_toplevel_eval_flex at /source/src/toplevel.c:773 jl_toplevel_eval_flex at /source/src/toplevel.c:713 ijl_toplevel_eval at /source/src/toplevel.c:785 ijl_toplevel_eval_in at /source/src/toplevel.c:830 eval at ./boot.jl:489 exec_options at ./client.jl:286 _start at ./client.jl:553 jfptr__start_75359.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] true_main at /source/src/jlapi.c:971 jl_repl_entrypoint at /source/src/jlapi.c:1138 main at /source/cli/loader_exe.c:58 unknown function (ip: 0x7f8c975af249) at /lib/x86_64-linux-gnu/libc.so.6 __libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) unknown function (ip: 0x4010b8) at /workspace/srcdir/glibc-2.17/csu/../sysdeps/x86_64/start.S unknown function (ip: (nil)) at (unknown file) testing... OK ============================================================== Profile collected. A report will print at the next yield point ============================================================== ====================================================================================== Information request received. A stacktrace will print followed by a 1.0 second profile ====================================================================================== cmd: /opt/julia/bin/julia 1 running 0 of 1 signal (10): User defined signal 1 epoll_pwait at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) uv__io_poll at /workspace/srcdir/libuv/src/unix/linux.c:1404 uv_run at /workspace/srcdir/libuv/src/unix/core.c:430 ijl_task_get_next at /source/src/scheduler.c:457 wait at ./task.jl:1192 wait_forever at ./task.jl:1129 jfptr_wait_forever_70431.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] start_task at /source/src/task.c:1253 unknown function (ip: (nil)) at (unknown file) ============================================================== Profile collected. A report will print at the next yield point ============================================================== ┌ Warning: There were no samples collected in one or more groups. │ This may be due to idle threads, or you may need to run your │ program longer (perhaps by running it multiple times), │ or adjust the delay between samples with `Profile.init()`. └ @ Profile /opt/julia/share/julia/stdlib/v1.13/Profile/src/Profile.jl:1362 Overhead ╎ [+additional indent] Count File:Line Function ========================================================= Thread 1 (default) Task 0x00007101741111e0 Total snapshots: 454. Utilization: 0% ╎454 @Base/task.jl:1129 wait_forever() 453╎ 454 @Base/task.jl:1192 wait() [1] signal 15: Terminated in expression starting at /PkgEval.jl/scripts/evaluate.jl:210 epoll_pwait at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) uv__io_poll at /workspace/srcdir/libuv/src/unix/linux.c:1404 uv_run at /workspace/srcdir/libuv/src/unix/core.c:430 ijl_task_get_next at /source/src/scheduler.c:457 wait at ./task.jl:1192 wait_forever at ./task.jl:1129 jfptr_wait_forever_70431.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] start_task at /source/src/task.c:1253 unknown function (ip: (nil)) at (unknown file) Allocations: 20883699 (Pool: 20883156; Big: 543); GC: 17 [293] signal 15: Terminated in expression starting at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:60 _ZNK4llvm12MachineInstr19hasOrderedMemoryRefEv at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZNK4llvm12MachineInstr12isSafeToMoveERb at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN12_GLOBAL__N_114MachineSinking15SinkInstructionERN4llvm12MachineInstrERbRNS1_13SmallDenseMapIPNS1_17MachineBasicBlockENS1_11SmallVectorIS7_Lj4EEELj4ENS1_12DenseMapInfoIS7_vEENS1_6detail12DenseMapPairIS7_S9_EEEE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN12_GLOBAL__N_114MachineSinking20runOnMachineFunctionERN4llvm15MachineFunctionE.part.0 at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm19MachineFunctionPass13runOnFunctionERNS_8FunctionE.part.0 at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm13FPPassManager13runOnFunctionERNS_8FunctionE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm13FPPassManager11runOnModuleERNS_6ModuleE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm6legacy15PassManagerImpl3runERNS_6ModuleE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) _ZN4llvm3orc14SimpleCompilerclERNS_6ModuleE at /opt/julia/bin/../lib/julia/libLLVM.so.20.1jl (unknown line) operator() at /source/src/jitlayers.cpp:1612 addModule at /source/src/jitlayers.cpp:2093 jl_compile_codeinst_now at /source/src/jitlayers.cpp:682 jl_compile_codeinst_impl at /source/src/jitlayers.cpp:873 jl_compile_method_internal at /source/src/gf.c:3527 _jl_invoke at /source/src/gf.c:4007 [inlined] ijl_apply_generic at /source/src/gf.c:4212 time_step_tke_mass_flux_model at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:21 unknown function (ip: 0x7f8c4dbee0a6) at (unknown file) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] jl_f__apply_iterate at /source/src/builtins.c:864 eval_test_function at /source/usr/share/julia/stdlib/v1.13/Test/src/Test.jl:388 unknown function (ip: 0x7f8c962054ae) at (unknown file) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 macro expansion at /source/usr/share/julia/stdlib/v1.13/Test/src/Test.jl:742 [inlined] macro expansion at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:74 [inlined] macro expansion at /source/usr/share/julia/stdlib/v1.13/Test/src/Test.jl:1929 [inlined] top-level scope at /home/pkgeval/.julia/packages/OceanTurb/wYitF/test/test_tkemassflux.jl:61 _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_invoke at /source/src/gf.c:4022 jl_toplevel_eval_flex at /source/src/toplevel.c:762 jl_toplevel_eval_flex at /source/src/toplevel.c:713 ijl_toplevel_eval at /source/src/toplevel.c:785 ijl_toplevel_eval_in at /source/src/toplevel.c:830 eval at ./boot.jl:489 include_string at ./loading.jl:2847 _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 _include at ./loading.jl:2907 include at ./Base.jl:312 IncludeInto at ./Base.jl:313 jfptr_IncludeInto_74172.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] do_call at /source/src/interpreter.c:123 eval_value at /source/src/interpreter.c:243 eval_stmt_value at /source/src/interpreter.c:194 [inlined] eval_body at /source/src/interpreter.c:708 jl_interpret_toplevel_thunk at /source/src/interpreter.c:899 jl_toplevel_eval_flex at /source/src/toplevel.c:773 jl_toplevel_eval_flex at /source/src/toplevel.c:713 ijl_toplevel_eval at /source/src/toplevel.c:785 ijl_toplevel_eval_in at /source/src/toplevel.c:830 eval at ./boot.jl:489 include_string at ./loading.jl:2847 _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 _include at ./loading.jl:2907 include at ./Base.jl:312 IncludeInto at ./Base.jl:313 jfptr_IncludeInto_74172.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] do_call at /source/src/interpreter.c:123 eval_value at /source/src/interpreter.c:243 eval_stmt_value at /source/src/interpreter.c:194 [inlined] eval_body at /source/src/interpreter.c:708 jl_interpret_toplevel_thunk at /source/src/interpreter.c:899 jl_toplevel_eval_flex at /source/src/toplevel.c:773 jl_toplevel_eval_flex at /source/src/toplevel.c:713 ijl_toplevel_eval at /source/src/toplevel.c:785 ijl_toplevel_eval_in at /source/src/toplevel.c:830 eval at ./boot.jl:489 exec_options at ./client.jl:286 _start at ./client.jl:553 jfptr__start_75359.1 at /opt/julia/lib/julia/sys.so (unknown line) _jl_invoke at /source/src/gf.c:4015 [inlined] ijl_apply_generic at /source/src/gf.c:4212 jl_apply at /source/src/julia.h:2375 [inlined] true_main at /source/src/jlapi.c:971 jl_repl_entrypoint at /source/src/jlapi.c:1138 main at /source/cli/loader_exe.c:58 unknown function (ip: 0x7f8c975af249) at /lib/x86_64-linux-gnu/libc.so.6 __libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line) unknown function (ip: 0x4010b8) at /workspace/srcdir/glibc-2.17/csu/../sysdeps/x86_64/start.S unknown function (ip: (nil)) at (unknown file) Allocations: 968281514 (Pool: 968267889; Big: 13625); GC: 524 PkgEval terminated after 2721.25s: test duration exceeded the time limit