Package evaluation of PALEOaqchem on Julia 1.10.9 (96dc2d8c45*) started at 2025-06-06T21:09:09.809 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Set-up completed after 5.35s ################################################################################ # Installation # Installing PALEOaqchem... Resolving package versions... Updating `~/.julia/environments/v1.10/Project.toml` [673cec3b] + PALEOaqchem v0.3.19 Updating `~/.julia/environments/v1.10/Manifest.toml` [79e6a3ab] + Adapt v4.3.0 [ec485272] + ArnoldiMethod v0.4.0 [a9b6321e] + Atomix v1.1.1 [13072b0f] + AxisAlgorithms v1.1.0 [6e4b80f9] + BenchmarkTools v1.6.0 [e1450e63] + BufferedStreams v1.2.2 ⌅ [179af706] + CFTime v0.1.4 [d360d2e6] + ChainRulesCore v1.25.1 [da1fd8a2] + CodeTracking v1.3.9 [944b1d66] + CodecZlib v0.7.8 [1fbeeb36] + CommonDataModel v0.3.8 [34da2185] + Compat v4.16.0 [187b0558] + ConstructionBase v1.5.8 [a8cc5b0e] + Crayons v4.1.1 [9a962f9c] + DataAPI v1.16.0 [a93c6f00] + DataFrames v1.7.0 [864edb3b] + DataStructures v0.18.22 [e2d170a0] + DataValueInterfaces v1.0.0 [3c3547ce] + DiskArrays v0.4.13 [ffbed154] + DocStringExtensions v0.9.4 [e2ba6199] + ExprTools v0.1.10 [86223c79] + Graphs v1.13.0 [f67ccb44] + HDF5 v0.17.2 [5903a43b] + Infiltrator v1.9.1 [d25df0c9] + Inflate v0.1.5 [842dd82b] + InlineStrings v1.4.3 ⌅ [a98d9a8b] + Interpolations v0.15.1 [41ab1584] + InvertedIndices v1.3.1 [92d709cd] + IrrationalConstants v0.2.4 [82899510] + IteratorInterfaceExtensions v1.0.0 [692b3bcd] + JLLWrappers v1.7.0 [682c06a0] + JSON v0.21.4 [aa1ae85d] + JuliaInterpreter v0.10.3 [8ac3fa9e] + LRUCache v1.6.2 [b964fa9f] + LaTeXStrings v1.4.0 [2ab3a3ac] + LogExpFunctions v0.3.29 [6f1432cf] + LoweredCodeUtils v3.3.0 [23992714] + MAT v0.10.7 [3da0fdf6] + MPIPreferences v0.1.11 [1914dd2f] + MacroTools v0.5.16 [e1d29d7a] + Missings v1.2.0 [85f8d34a] + NCDatasets v0.14.8 [6fe1bfb0] + OffsetArrays v1.17.0 [bac558e1] + OrderedCollections v1.8.1 [673cec3b] + PALEOaqchem v0.3.19 ⌃ [804b410e] + PALEOboxes v0.22.3 [69de0a69] + Parsers v2.8.3 [2dfb63ee] + PooledArrays v1.4.3 ⌅ [aea7be01] + PrecompileTools v1.2.1 [21216c6a] + Preferences v1.4.3 [08abe8d2] + PrettyTables v2.4.0 [c84ed2f1] + Ratios v0.4.5 [189a3867] + Reexport v1.2.2 [ae029012] + Requires v1.3.1 [295af30f] + Revise v3.8.0 [fdea26ae] + SIMD v3.7.1 [91c51154] + SentinelArrays v1.4.8 [699a6c99] + SimpleTraits v0.9.4 [a2af1166] + SortingAlgorithms v1.2.1 [276daf66] + SpecialFunctions v2.5.1 [90137ffa] + StaticArrays v1.9.13 [1e83bf80] + StaticArraysCore v1.4.3 [69024149] + StringEncodings v0.3.7 [892a3eda] + StringManipulation v0.4.1 [09ab397b] + StructArrays v0.7.1 [3783bdb8] + TableTraits v1.0.1 [bd369af6] + Tables v1.12.1 [1e6cf692] + TestEnv v1.102.1 [a759f4b9] + TimerOutputs v0.5.29 [3bb67fe8] + TranscodingStreams v0.11.3 [013be700] + UnsafeAtomics v0.3.0 [efce3f68] + WoodburyMatrices v1.0.0 [ddb6d928] + YAML v0.4.14 [0b7ba130] + Blosc_jll v1.21.7+0 [6e34b625] + Bzip2_jll v1.0.9+0 [0234f1f7] + HDF5_jll v1.14.6+0 [e33a78d0] + Hwloc_jll v2.12.1+0 [94ce4f54] + Libiconv_jll v1.18.0+0 [5ced341a] + Lz4_jll v1.10.1+0 [7cb0a576] + MPICH_jll v4.3.0+1 [f1f71cc9] + MPItrampoline_jll v5.5.3+0 [9237b28f] + MicrosoftMPI_jll v10.1.4+3 [7243133f] + NetCDF_jll v401.900.300+0 [fe0851c0] + OpenMPI_jll v5.0.7+2 [458c3c95] + OpenSSL_jll v3.5.0+0 [efe28fd5] + OpenSpecFun_jll v0.5.6+0 [63e82ce6] + SLEEF_jll v3.7.0+0 ⌅ [02c8fc9c] + XML2_jll v2.13.6+1 [ffd25f8a] + XZ_jll v5.8.1+0 [3161d3a3] + Zstd_jll v1.5.7+1 [477f73a3] + libaec_jll v1.1.3+0 [337d8026] + libzip_jll v1.11.3+0 [0dad84c5] + ArgTools v1.1.1 [56f22d72] + Artifacts [2a0f44e3] + Base64 [ade2ca70] + Dates [8ba89e20] + Distributed [f43a241f] + Downloads v1.6.0 [7b1f6079] + FileWatching [9fa8497b] + Future [b77e0a4c] + InteractiveUtils [4af54fe1] + LazyArtifacts [b27032c2] + LibCURL v0.6.4 [76f85450] + LibGit2 [8f399da3] + Libdl [37e2e46d] + LinearAlgebra [56ddb016] + Logging [d6f4376e] + Markdown [a63ad114] + Mmap [ca575930] + NetworkOptions v1.2.0 [44cfe95a] + Pkg v1.10.0 [de0858da] + Printf [9abbd945] + Profile [3fa0cd96] + REPL [9a3f8284] + Random [ea8e919c] + SHA v0.7.0 [9e88b42a] + Serialization [1a1011a3] + SharedArrays [6462fe0b] + Sockets [2f01184e] + SparseArrays v1.10.0 [10745b16] + Statistics v1.10.0 [fa267f1f] + TOML v1.0.3 [a4e569a6] + Tar v1.10.0 [cf7118a7] + UUIDs [4ec0a83e] + Unicode [e66e0078] + CompilerSupportLibraries_jll v1.1.1+0 [781609d7] + GMP_jll v6.2.1+6 [deac9b47] + LibCURL_jll v8.4.0+0 [e37daf67] + LibGit2_jll v1.6.4+0 [29816b5a] + LibSSH2_jll v1.11.0+1 [3a97d323] + MPFR_jll v4.2.0+1 [c8ffd9c3] + MbedTLS_jll v2.28.2+1 [14a3606d] + MozillaCACerts_jll v2023.1.10 [4536629a] + OpenBLAS_jll v0.3.23+4 [05823500] + OpenLibm_jll v0.8.5+0 [bea87d4a] + SuiteSparse_jll v7.2.1+1 [83775a58] + Zlib_jll v1.2.13+1 [8e850b90] + libblastrampoline_jll v5.11.0+0 [8e850ede] + nghttp2_jll v1.52.0+1 [3f19e933] + p7zip_jll v17.4.0+2 Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m` Installation completed after 16.23s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompilation completed after 307.13s ################################################################################ # Testing # Testing PALEOaqchem Status `/tmp/jl_rrDe77/Project.toml` [6e4b80f9] BenchmarkTools v1.6.0 [e30172f5] Documenter v1.11.4 [5903a43b] Infiltrator v1.9.1 [1dea7af3] OrdinaryDiffEq v6.98.0 [673cec3b] PALEOaqchem v0.3.19 ⌃ [804b410e] PALEOboxes v0.22.3 [bf7b4fbe] PALEOmodel v0.16.5 [41de04b1] PALEOocean v0.4.9 [295af30f] Revise v3.8.0 [fdea26ae] SIMD v3.7.1 [276daf66] SpecialFunctions v2.5.1 [c3572dad] Sundials v4.28.0 [1e6cf692] TestEnv v1.102.1 [63e82ce6] SLEEF_jll v3.7.0+0 [56ddb016] Logging [de0858da] Printf [8dfed614] Test Status `/tmp/jl_rrDe77/Manifest.toml` [47edcb42] ADTypes v1.14.0 [a4c015fc] ANSIColoredPrinters v0.0.1 [1520ce14] AbstractTrees v0.4.5 [7d9f7c33] Accessors v0.1.42 [79e6a3ab] Adapt v4.3.0 [ec485272] ArnoldiMethod v0.4.0 [4fba245c] ArrayInterface v7.19.0 [4c555306] ArrayLayouts v1.11.1 [a9b6321e] Atomix v1.1.1 [13072b0f] AxisAlgorithms v1.1.0 [6e4b80f9] BenchmarkTools v1.6.0 [62783981] BitTwiddlingConvenienceFunctions v0.1.6 [70df07ce] BracketingNonlinearSolve v1.3.0 [e1450e63] BufferedStreams v1.2.2 [fa961155] CEnum v0.5.0 ⌅ [179af706] CFTime v0.1.4 [2a0fbf3d] CPUSummary v0.2.6 [d360d2e6] ChainRulesCore v1.25.1 [fb6a15b2] CloseOpenIntervals v0.1.13 [da1fd8a2] CodeTracking v1.3.9 [944b1d66] CodecZlib v0.7.8 [1fbeeb36] CommonDataModel v0.3.8 [38540f10] CommonSolve v0.2.4 [bbf7d656] CommonSubexpressions v0.3.1 [f70d9fcc] CommonWorldInvalidations v1.0.0 [34da2185] Compat v4.16.0 [a33af91c] CompositionsBase v0.1.2 [2569d6c7] ConcreteStructs v0.2.3 [187b0558] ConstructionBase v1.5.8 [adafc99b] CpuId v0.3.1 [a8cc5b0e] Crayons v4.1.1 [9a962f9c] DataAPI v1.16.0 [a93c6f00] DataFrames v1.7.0 [864edb3b] DataStructures v0.18.22 [e2d170a0] DataValueInterfaces v1.0.0 [2b5f629d] DiffEqBase v6.175.0 [163ba53b] DiffResults v1.1.0 [b552c78f] DiffRules v1.15.1 ⌅ [a0c0ee7d] DifferentiationInterface v0.6.54 [3c3547ce] DiskArrays v0.4.13 [b4f34e82] Distances v0.10.12 [ffbed154] DocStringExtensions v0.9.4 [e30172f5] Documenter v1.11.4 [4e289a0a] EnumX v1.0.5 [f151be2c] EnzymeCore v0.8.11 [d4d017d3] ExponentialUtilities v1.27.0 [e2ba6199] ExprTools v0.1.10 [55351af7] ExproniconLite v0.10.14 [7034ab61] FastBroadcast v0.3.5 [9aa1b823] FastClosures v0.3.2 [442a2c76] FastGaussQuadrature v1.0.2 [a4df4552] FastPower v1.1.2 [5789e2e9] FileIO v1.17.0 [1a297f60] FillArrays v1.13.0 [6a86dc24] FiniteDiff v2.27.0 ⌅ [f6369f11] ForwardDiff v0.10.38 [069b7b12] FunctionWrappers v1.1.3 [77dc65aa] FunctionWrappersWrappers v0.1.3 [46192b85] GPUArraysCore v0.2.0 [c145ed77] GenericSchur v0.5.5 [d7ba0133] Git v1.4.0 [86223c79] Graphs v1.13.0 [f67ccb44] HDF5 v0.17.2 [b5f81e59] IOCapture v0.2.5 [615f187c] IfElse v0.1.1 [5903a43b] Infiltrator v1.9.1 [d25df0c9] Inflate v0.1.5 [842dd82b] InlineStrings v1.4.3 ⌅ [a98d9a8b] Interpolations v0.15.1 [3587e190] InverseFunctions v0.1.17 [41ab1584] InvertedIndices v1.3.1 [92d709cd] IrrationalConstants v0.2.4 [82899510] IteratorInterfaceExtensions v1.0.0 [692b3bcd] JLLWrappers v1.7.0 [682c06a0] JSON v0.21.4 [ae98c720] Jieko v0.2.1 [aa1ae85d] JuliaInterpreter v0.10.3 [ba0b0d4f] Krylov v0.10.1 [8ac3fa9e] LRUCache v1.6.2 [b964fa9f] LaTeXStrings v1.4.0 [10f19ff3] LayoutPointers v0.1.17 [0e77f7df] LazilyInitializedFields v1.3.0 [5078a376] LazyArrays v2.6.1 [87fe0de2] LineSearch v0.1.4 [d3d80556] LineSearches v7.3.0 [7ed4a6bd] LinearSolve v3.17.0 [2ab3a3ac] LogExpFunctions v0.3.29 [6f1432cf] LoweredCodeUtils v3.3.0 [23992714] MAT v0.10.7 [3da0fdf6] MPIPreferences v0.1.11 [1914dd2f] MacroTools v0.5.16 [d125e4d3] ManualMemory v0.1.8 [d0879d2d] MarkdownAST v0.1.2 [bb5d69b7] MaybeInplace v0.1.4 [e1d29d7a] Missings v1.2.0 [2e0e35c7] Moshi v0.3.5 [46d2c3a1] MuladdMacro v0.2.4 [bdf0d083] MultiFloats v2.3.0 [85f8d34a] NCDatasets v0.14.8 [d41bc354] NLSolversBase v7.9.1 [2774e3e8] NLsolve v4.5.1 [77ba4419] NaNMath v1.1.3 [8913a72c] NonlinearSolve v4.9.0 [be0214bd] NonlinearSolveBase v1.12.0 [5959db7a] NonlinearSolveFirstOrder v1.5.0 [9a2c21bd] NonlinearSolveQuasiNewton v1.6.0 [26075421] NonlinearSolveSpectralMethods v1.2.0 [6fe1bfb0] OffsetArrays v1.17.0 [bac558e1] OrderedCollections v1.8.1 [1dea7af3] OrdinaryDiffEq v6.98.0 [89bda076] OrdinaryDiffEqAdamsBashforthMoulton v1.2.0 [6ad6398a] OrdinaryDiffEqBDF v1.5.1 [bbf590c4] OrdinaryDiffEqCore v1.26.0 [50262376] OrdinaryDiffEqDefault v1.4.0 [4302a76b] OrdinaryDiffEqDifferentiation v1.9.1 [9286f039] OrdinaryDiffEqExplicitRK v1.1.0 [e0540318] OrdinaryDiffEqExponentialRK v1.4.0 [becaefa8] OrdinaryDiffEqExtrapolation v1.5.0 [5960d6e9] OrdinaryDiffEqFIRK v1.12.0 [101fe9f7] OrdinaryDiffEqFeagin v1.1.0 [d3585ca7] OrdinaryDiffEqFunctionMap v1.1.1 [d28bc4f8] OrdinaryDiffEqHighOrderRK v1.1.0 [9f002381] OrdinaryDiffEqIMEXMultistep v1.3.0 [521117fe] OrdinaryDiffEqLinear v1.3.0 [1344f307] OrdinaryDiffEqLowOrderRK v1.2.0 [b0944070] OrdinaryDiffEqLowStorageRK v1.3.0 [127b3ac7] OrdinaryDiffEqNonlinearSolve v1.10.0 [c9986a66] OrdinaryDiffEqNordsieck v1.1.0 [5dd0a6cf] OrdinaryDiffEqPDIRK v1.3.1 [5b33eab2] OrdinaryDiffEqPRK v1.1.0 [04162be5] OrdinaryDiffEqQPRK v1.1.0 [af6ede74] OrdinaryDiffEqRKN v1.1.0 [43230ef6] OrdinaryDiffEqRosenbrock v1.10.1 [2d112036] OrdinaryDiffEqSDIRK v1.3.0 [669c94d9] OrdinaryDiffEqSSPRK v1.3.0 [e3e12d00] OrdinaryDiffEqStabilizedIRK v1.3.0 [358294b1] OrdinaryDiffEqStabilizedRK v1.1.0 [fa646aed] OrdinaryDiffEqSymplecticRK v1.3.0 [b1df2697] OrdinaryDiffEqTsit5 v1.1.0 [79d7bb75] OrdinaryDiffEqVerner v1.2.0 [673cec3b] PALEOaqchem v0.3.19 ⌃ [804b410e] PALEOboxes v0.22.3 [bf7b4fbe] PALEOmodel v0.16.5 [41de04b1] PALEOocean v0.4.9 [65ce6f38] PackageExtensionCompat v1.0.2 [d96e819e] Parameters v0.12.3 [69de0a69] Parsers v2.8.3 [f517fe37] Polyester v0.7.18 [1d0040c9] PolyesterWeave v0.2.2 [2dfb63ee] PooledArrays v1.4.3 [d236fae5] PreallocationTools v0.4.27 ⌅ [aea7be01] PrecompileTools v1.2.1 [21216c6a] Preferences v1.4.3 [08abe8d2] PrettyTables v2.4.0 [c84ed2f1] Ratios v0.4.5 [3cdcf5f2] RecipesBase v1.3.4 [731186ca] RecursiveArrayTools v3.33.0 [189a3867] Reexport v1.2.2 [2792f1a3] RegistryInstances v0.1.0 [ae029012] Requires v1.3.1 [295af30f] Revise v3.8.0 [7e49a35a] RuntimeGeneratedFunctions v0.5.15 [fdea26ae] SIMD v3.7.1 [94e857df] SIMDTypes v0.1.0 [0bca4576] SciMLBase v2.97.0 [19f34311] SciMLJacobianOperators v0.1.6 ⌅ [c0aeaf25] SciMLOperators v0.4.0 [53ae85a6] SciMLStructures v1.7.0 [91c51154] SentinelArrays v1.4.8 [efcf1570] Setfield v1.1.2 [727e6d20] SimpleNonlinearSolve v2.5.0 [699a6c99] SimpleTraits v0.9.4 [ce78b400] SimpleUnPack v1.1.0 [66db9d55] SnoopPrecompile v1.0.3 [a2af1166] SortingAlgorithms v1.2.1 [47a9eef4] SparseDiffTools v2.26.0 [0a514795] SparseMatrixColorings v0.4.20 [06eadbd4] SparsityTracing v0.2.6 [e56a9233] Sparspak v0.3.11 [276daf66] SpecialFunctions v2.5.1 [aedffcd0] Static v1.2.0 [0d7ed370] StaticArrayInterface v1.8.0 [90137ffa] StaticArrays v1.9.13 [1e83bf80] StaticArraysCore v1.4.3 [82ae8749] StatsAPI v1.7.1 [7792a7ef] StrideArraysCore v0.5.7 [69024149] StringEncodings v0.3.7 [892a3eda] StringManipulation v0.4.1 [09ab397b] StructArrays v0.7.1 [c3572dad] Sundials v4.28.0 [2efcf032] SymbolicIndexingInterface v0.3.40 [3783bdb8] TableTraits v1.0.1 [bd369af6] Tables v1.12.1 [1e6cf692] TestEnv v1.102.1 [8290d209] ThreadingUtilities v0.5.4 [a759f4b9] TimerOutputs v0.5.29 [3bb67fe8] TranscodingStreams v0.11.3 [781d530d] TruncatedStacktraces v1.4.0 [3a884ed6] UnPack v1.0.2 [013be700] UnsafeAtomics v0.3.0 [19fa3120] VertexSafeGraphs v0.2.0 [efce3f68] WoodburyMatrices v1.0.0 [ddb6d928] YAML v0.4.14 [0b7ba130] Blosc_jll v1.21.7+0 [6e34b625] Bzip2_jll v1.0.9+0 [2e619515] Expat_jll v2.6.5+0 [f8c6e375] Git_jll v2.49.0+0 [0234f1f7] HDF5_jll v1.14.6+0 [e33a78d0] Hwloc_jll v2.12.1+0 [1d5cc7b8] IntelOpenMP_jll v2025.0.4+0 [94ce4f54] Libiconv_jll v1.18.0+0 [5ced341a] Lz4_jll v1.10.1+0 [856f044c] MKL_jll v2025.0.1+1 [7cb0a576] MPICH_jll v4.3.0+1 [f1f71cc9] MPItrampoline_jll v5.5.3+0 [9237b28f] MicrosoftMPI_jll v10.1.4+3 [7243133f] NetCDF_jll v401.900.300+0 [fe0851c0] OpenMPI_jll v5.0.7+2 [9bd350c2] OpenSSH_jll v10.0.1+0 [458c3c95] OpenSSL_jll v3.5.0+0 [efe28fd5] OpenSpecFun_jll v0.5.6+0 [63e82ce6] SLEEF_jll v3.7.0+0 ⌅ [fb77eaff] Sundials_jll v5.2.2+0 ⌅ [02c8fc9c] XML2_jll v2.13.6+1 [ffd25f8a] XZ_jll v5.8.1+0 [3161d3a3] Zstd_jll v1.5.7+1 [477f73a3] libaec_jll v1.1.3+0 [337d8026] libzip_jll v1.11.3+0 [1317d2d5] oneTBB_jll v2022.0.0+0 [0dad84c5] ArgTools v1.1.1 [56f22d72] Artifacts [2a0f44e3] Base64 [ade2ca70] Dates [8ba89e20] Distributed [f43a241f] Downloads v1.6.0 [7b1f6079] FileWatching [9fa8497b] Future [b77e0a4c] InteractiveUtils [4af54fe1] LazyArtifacts [b27032c2] LibCURL v0.6.4 [76f85450] LibGit2 [8f399da3] Libdl [37e2e46d] LinearAlgebra [56ddb016] Logging [d6f4376e] Markdown [a63ad114] Mmap [ca575930] NetworkOptions v1.2.0 [44cfe95a] Pkg v1.10.0 [de0858da] Printf [9abbd945] Profile [3fa0cd96] REPL [9a3f8284] Random [ea8e919c] SHA v0.7.0 [9e88b42a] Serialization [1a1011a3] SharedArrays [6462fe0b] Sockets [2f01184e] SparseArrays v1.10.0 [10745b16] Statistics v1.10.0 [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test [cf7118a7] UUIDs [4ec0a83e] Unicode [e66e0078] CompilerSupportLibraries_jll v1.1.1+0 [781609d7] GMP_jll v6.2.1+6 [deac9b47] LibCURL_jll v8.4.0+0 [e37daf67] LibGit2_jll v1.6.4+0 [29816b5a] LibSSH2_jll v1.11.0+1 [3a97d323] MPFR_jll v4.2.0+1 [c8ffd9c3] MbedTLS_jll v2.28.2+1 [14a3606d] MozillaCACerts_jll v2023.1.10 [4536629a] OpenBLAS_jll v0.3.23+4 [05823500] OpenLibm_jll v0.8.5+0 [efcefdf7] PCRE2_jll v10.42.0+1 [bea87d4a] SuiteSparse_jll v7.2.1+1 [83775a58] Zlib_jll v1.2.13+1 [8e850b90] libblastrampoline_jll v5.11.0+0 [8e850ede] nghttp2_jll v1.52.0+1 [3f19e933] p7zip_jll v17.4.0+2 Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. Testing Running tests... [ Info: PALEOboxes.SIMDutils defining USE_SLEEF = false in LocalPreferences.toml [ Info: Defining Vectorized SIMD functions log, exp, log10 functions from Sleef library /home/pkgeval/.julia/artifacts/2562f47596ff0e86e9c6aa75b401c8cad7094525/lib/libsleef.so bench_Constants(): 443.599 ns (0 allocations: 0 bytes) bench_Constants_simd(): 637.825 ns (0 allocations: 0 bytes) bench_TAfromTCpHfree() do_dTAdpH=false 74.628 ns (0 allocations: 0 bytes) do_dTAdpH=true 98.407 ns (0 allocations: 0 bytes) bench_TAfromTCpHfree_simd() do_dTAdpH=false 68.862 ns (0 allocations: 0 bytes) do_dTAdpH=true 94.399 ns (0 allocations: 0 bytes) bench_pHfromTATC() 549.242 ns (0 allocations: 0 bytes) bench_pHfromTATC_simd() 555.747 ns (0 allocations: 0 bytes) ┌ Warning: `LinearInterpolation(args...; kwargs...)` is deprecated, use `linear_interpolation(args...; kwargs...)` instead. │ caller = top-level scope at Burial.jl:291 └ @ Core ~/.julia/packages/PALEOocean/Cpquk/src/oceanfloor/Burial.jl:291 [ Info: OceanTransportTMM adding default TMMDir => /home/pkgeval/.julia/packages/PALEOocean/TMM to [PALEOocean.Ocean.OceanTransportTMM] LocalPreferences.toml (modify for your local setup) [ Info: OceanTransportTMM adding default TMMDir => /home/pkgeval/.julia/packages/PALEOocean/TMM to [PALEOboxes] LocalPreferences.toml (modify for your local setup) ┌ Info: │ ================================================================================ │ create_model_from_config: configmodel test_carbchem │ config_file: /home/pkgeval/.julia/packages/PALEOaqchem/lxx8X/test/configcarbchem.yaml └ ================================================================================ ┌ Info: Model.parameters: └ CIsotope = IsotopeLinear ┌ Info: │ ================================================================================ │ creating Domains └ ================================================================================ [ Info: generated Reaction catalog with 67 Reactions ┌ Info: │ ================================================================================ │ creating domain 'global' ID=1 └ ================================================================================ ┌ Info: │ ================================================================================ │ creating domain 'ocean' ID=2 └ ================================================================================ ┌ Info: create_reaction_from_config: ocean.reservoir_DIC classname ReactionReservoirTotal │ set parameters: [config.yaml] field_data =external%CIsotope │ expandvalue: external%CIsotope -> IsotopeLinear │ after substitution field_data=IsotopeLinear │ set parameters: [Default] total =true │ set parameters: [Default] limit_delta_conc =0.0 └ set parameters: [Default] state_conc =false ┌ Info: create_reaction_from_config: ocean.reservoir_TAlk classname ReactionReservoirTotal │ set parameters: [Default] field_data =PALEOboxes.ScalarData │ set parameters: [Default] total =true │ set parameters: [Default] limit_delta_conc =0.0 └ set parameters: [Default] state_conc =false ┌ Info: create_reaction_from_config: ocean.notransport3box classname ReactionOceanNoTransport │ set parameters: [config.yaml] area =[1.0, 1.0, 1.0] └ set parameters: [config.yaml] depth =[100.0, 250.0, 3782.1954452017744] ┌ Info: create_reaction_from_config: ocean.oceanphys_const classname ReactionConst └ set parameters: [config.yaml] constnames =["temp", "sal"] ┌ Info: create_reaction_from_config: ocean.carbchem classname ReactionCO2SYS │ set parameters: [Default] WhichKs =10 │ set parameters: [Default] WhoseKSO4 =1 │ set parameters: [config.yaml] components =["Ci", "B", "S", "F", "Omega"] │ set parameters: [config.yaml] defaultconcs =["TS", "TF", "TB", "Ca"] │ set parameters: [config.yaml] outputs =["pCO2", "xCO2dryinp", "CO3", "OmegaCA", "OmegaAR"] │ set parameters: [Default] output_pHtot =true │ set parameters: [config.yaml] solve_pH =solve │ set parameters: [Default] pHtol =2.220446049250313e-14 └ set parameters: [Default] simd_width =1 ┌ Info: │ ================================================================================ │ creating domain 'oceansurface' ID=3 └ ================================================================================ ┌ Info: │ ================================================================================ │ creating domain 'oceanfloor' ID=4 └ ================================================================================ ┌ Warning: create_domain_from_config Domain 'oceanfloor' empty 'reactions:' key in .yaml file └ @ PALEOboxes ~/.julia/packages/PALEOboxes/4HX2Z/src/Domain.jl:349 ┌ Info: │ ================================================================================ │ set_model_geometry └ ================================================================================ [ Info: set ocean.oceansurface Subdomain size=3 [ Info: set ocean.oceanfloor Subdomain size=3 [ Info: Ocean.set_model_domains: [ Info: ocean Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["oceansurface", "oceanfloor"]) [ Info: oceansurface Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["ocean"]) [ Info: oceanfloor Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["ocean"]) ┌ Info: │ ================================================================================ │ register_reaction_methods! └ ================================================================================ ┌ Info: register_methods! ocean.carbchem ReactionCO2SYS │ modern default concentration Variables ["TS_conc", "TF_conc", "TB_conc", "Ca_conc"] │ adding input concentration Variables ["TCi_conc", "TB_conc", "TS_conc", "TF_conc", "Ca_conc"] │ adding additional output Variable %reaction%pCO2 (atm) 'CO2 partial pressure (fugacity corrected)' │ adding additional output Variable %reaction%xCO2dryinp () 'mixing ratio of CO2 in dry air at 1 atm (always > pCO2 due to H2O vapour pressure)' │ adding additional output Variable %reaction%CO3 (mol m-3) 'carbonate ion CO3-- concentration' │ adding additional output Variable %reaction%OmegaCA () 'calcite saturation' │ adding additional output Variable %reaction%OmegaAR () 'aragonite saturation' └ outputs ["pCO2", "xCO2dryinp", "CO3", "OmegaCA", "OmegaAR"] at indices [16, 17, 13, 36, 37] in res (pHfree = 1, H = 2, OH = 3, TA = 4, dTAdpH = 5, TS = 6, HSO4 = 7, TF = 8, HF = 9, TCi = 10, CO2 = 11, HCO3 = 12, CO3 = 13, CAlk = 14, fCO2 = 15, pCO2 = 16, xCO2dryinp = 17, TB = 18, BAlk = 19, TP = 20, H3PO4 = 21, H2PO4 = 22, HPO4 = 23, PO4 = 24, PengCorrection = 25, PAlk = 26, TSi = 27, SiAlk = 28, TH2S = 29, H2S = 30, HSAlk = 31, TNH3 = 32, NH4 = 33, NH3Alk = 34, Ca = 35, OmegaCA = 36, OmegaAR = 37) ┌ Info: │ ================================================================================ │ link_variables: first pass └ ================================================================================ ┌ Info: │ ================================================================================ │ link_variables: register_reaction_dynamic_methods and configure variables └ ================================================================================ ┌ Info: _configure_variables: ReactionReservoir ocean.reservoir_DIC variable_links: │ set variable_links: R -> DIC │ set variable_links: R_sms -> DIC_sms │ set variable_links: R_total -> DIC_total │ set variable_links: R_conc -> DIC_conc │ set variable_links: R_delta -> DIC_delta │ _configure_variables: ReactionReservoir ocean.reservoir_DIC variable_attributes: │ set attribute: R :initial_value = 2.0 └ set attribute: R :initial_delta = -1.0 ┌ Info: _configure_variables: ReactionReservoir ocean.reservoir_TAlk variable_links: │ set variable_links: R -> TAlk │ set variable_links: R_sms -> TAlk_sms │ set variable_links: R_total -> TAlk_total │ set variable_links: R_conc -> TAlk_conc │ _configure_variables: ReactionReservoir ocean.reservoir_TAlk variable_attributes: └ set attribute: R :initial_value = 2.0 ┌ Info: _configure_variables: ReactionConst ocean.oceanphys_const variable_attributes: │ set attribute: temp :initial_value = [294.65, 275.65, 275.65] └ set attribute: sal :initial_value = 35.0 ┌ Info: _configure_variables: ReactionCO2SYS ocean.carbchem variable_links: └ set variable_links: TCi_conc -> DIC_conc ┌ Info: │ ================================================================================ │ link_variables: second pass: └ ================================================================================ ┌ Info: │ ================================================================================ │ link_variables! unlinked variables: └ ================================================================================ ┌ Info: │ ================================================================================ │ create_model_from_config: done └ ================================================================================ ┌ Info: │ ================================================================================ │ PALEOmodel.initialize! start └ ================================================================================ ┌ Info: │ ================================================================================ │ allocate_variables! (modeldata arrays_idx=1) └ ================================================================================ [ Info: Domain global data dimensions PALEOboxes.NamedDimension[] allocating 0 variables (hostdep=nothing) [ Info: Domain ocean data dimensions PALEOboxes.NamedDimension[] allocating 30 variables (hostdep=nothing) [ Info: Domain oceansurface data dimensions PALEOboxes.NamedDimension[] allocating 1 variables (hostdep=nothing) [ Info: Domain oceanfloor data dimensions PALEOboxes.NamedDimension[] allocating 3 variables (hostdep=nothing) [ Info: set_default_solver_view: ┌ Info: SolverView: │ host-dependent Variables: │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ Domain operatorID VF_StateExplicit VF_Total VF_Constraint VF_StateTotal VF_State VF_Undefined │ global 0 0 0 0 0 0 0 │ ocean 0 2 0 0 0 0 0 │ oceansurface 0 0 0 0 0 0 0 │ oceanfloor 0 0 0 0 0 0 0 │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ Total - 2 0 0 0 0 0 │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ n_state_vars 2 (stateexplicit 2 + statetotal 0 + state 0) │ n_equations 2 (stateexplicit 2 + total 0 + constraint 0) │ including all host-dependent non-state Variables └ host-dependent non-state Variables (:vfunction PB.VF_Undefined): Any[] ┌ Info: │ ================================================================================ │ initialize_reactiondata! (modeldata arrays_indices=1:1) └ ================================================================================ [ Info: prepare_do_carbchem: ocean.carbchem simd_width=1 using BufType Float64 ┌ Info: │ ================================================================================ │ dispatch_setup :setup └ ================================================================================ [ Info: ocean.oceanphys_const.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.temp = [294.65, 275.65, 275.65] [ Info: init_values! :initial_value ocean.sal = 35.0 [ Info: ocean.carbchem.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.pHfree = 8.0 ┌ Info: │ ================================================================================ │ dispatch_setup :norm_value └ ================================================================================ [ Info: ocean.reservoir_DIC.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.DIC = 1.0 * volume, delta=1.0 (fixed delta value to calculate norm) [ Info: ocean.reservoir_TAlk.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.TAlk = 1.0 * volume ┌ Info: │ ================================================================================ │ dispatch_setup :initial_value └ ================================================================================ [ Info: ocean.reservoir_DIC.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.DIC = 2.0 * volume, delta=-1.0 [ Info: ocean.reservoir_TAlk.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.TAlk = 2.0 * volume ┌ Info: │ ================================================================================ │ PALEOmodel.initialize! done └ ================================================================================ bench_method initialize bench_method do ocean.carbchem.do_carbchem: @btime: 1.440 μs (0 allocations: 0 bytes) ocean model created variables after do_stateandeqb: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0)] ocean.carbchem/pCO2 = [0.001979256024164936, 0.000974097310688794, 0.0009602445515261407] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [2.0, 2.0, 2.0] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [0.9455726090191459, 0.791482072027601, 0.5257976074964462] ocean.carbchem/OmegaAR = [0.6173652892259888, 0.4991668721082397, 0.3388392963157649] ocean.sal = [35.0, 35.0, 35.0] ocean.TAlk_total = [8264.390890403549] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.0020296152102653405, 0.000981038758804758, 0.0009670872844440077] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.354012869642817, 7.6020215057634175, 7.525099896712385] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403549, v_moldelta=-8264.390890403549, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.pHfree = [7.449818525338364, 7.647310229671182, 7.564935438070559] ocean.carbchem/CO3 = [0.040847170229903404, 0.034883354513237465, 0.033119417878596735] ┌ Info: │ ================================================================================ │ create_model_from_config: configmodel test_carbchem_constraint │ config_file: /home/pkgeval/.julia/packages/PALEOaqchem/lxx8X/test/configcarbchem.yaml └ ================================================================================ ┌ Info: Model.parameters: └ CIsotope = IsotopeLinear ┌ Info: │ ================================================================================ │ creating Domains └ ================================================================================ [ Info: generated Reaction catalog with 67 Reactions ┌ Info: │ ================================================================================ │ creating domain 'global' ID=1 └ ================================================================================ ┌ Info: │ ================================================================================ │ creating domain 'ocean' ID=2 └ ================================================================================ ┌ Info: create_reaction_from_config: ocean.reservoir_DIC classname ReactionReservoirTotal │ set parameters: [config.yaml] field_data =external%CIsotope │ expandvalue: external%CIsotope -> IsotopeLinear │ after substitution field_data=IsotopeLinear │ set parameters: [Default] total =true │ set parameters: [Default] limit_delta_conc =0.0 └ set parameters: [Default] state_conc =false ┌ Info: create_reaction_from_config: ocean.reservoir_TAlk classname ReactionReservoirTotal │ set parameters: [Default] field_data =PALEOboxes.ScalarData │ set parameters: [Default] total =true │ set parameters: [Default] limit_delta_conc =0.0 └ set parameters: [Default] state_conc =false ┌ Info: create_reaction_from_config: ocean.notransport3box classname ReactionOceanNoTransport │ set parameters: [config.yaml] area =[1.0, 1.0, 1.0] └ set parameters: [config.yaml] depth =[100.0, 250.0, 3782.1954452017744] ┌ Info: create_reaction_from_config: ocean.oceanphys_const classname ReactionConst └ set parameters: [config.yaml] constnames =["temp", "sal"] ┌ Info: create_reaction_from_config: ocean.H_primary_species classname ReactionConstraintReservoir │ set parameters: [config.yaml] primary_total_stoich=0.0 │ set parameters: [Default] primary_other_components=String[] │ set parameters: [config.yaml] primary_variable =p_concentration └ set parameters: [config.yaml] constraint_variable =amount ┌ Info: create_reaction_from_config: ocean.carbchem classname ReactionCO2SYS │ set parameters: [Default] WhichKs =10 │ set parameters: [Default] WhoseKSO4 =1 │ set parameters: [config.yaml] components =["Ci", "B", "S", "F", "Omega"] │ set parameters: [config.yaml] defaultconcs =["TS", "TF", "TB", "Ca"] │ set parameters: [config.yaml] outputs =["pCO2", "xCO2dryinp", "CO3", "OmegaCA", "OmegaAR"] │ set parameters: [Default] output_pHtot =true │ set parameters: [config.yaml] solve_pH =speciationTAlk │ set parameters: [Default] pHtol =2.220446049250313e-14 └ set parameters: [Default] simd_width =1 ┌ Info: │ ================================================================================ │ creating domain 'oceansurface' ID=3 └ ================================================================================ ┌ Info: │ ================================================================================ │ creating domain 'oceanfloor' ID=4 └ ================================================================================ ┌ Warning: create_domain_from_config Domain 'oceanfloor' empty 'reactions:' key in .yaml file └ @ PALEOboxes ~/.julia/packages/PALEOboxes/4HX2Z/src/Domain.jl:349 ┌ Info: │ ================================================================================ │ set_model_geometry └ ================================================================================ [ Info: set ocean.oceansurface Subdomain size=3 [ Info: set ocean.oceanfloor Subdomain size=3 [ Info: Ocean.set_model_domains: [ Info: ocean Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["oceansurface", "oceanfloor"]) [ Info: oceansurface Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["ocean"]) [ Info: oceanfloor Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["ocean"]) ┌ Info: │ ================================================================================ │ register_reaction_methods! └ ================================================================================ ┌ Info: register_methods! ocean.carbchem ReactionCO2SYS │ modern default concentration Variables ["TS_conc", "TF_conc", "TB_conc", "Ca_conc"] │ adding input concentration Variables ["TCi_conc", "TB_conc", "TS_conc", "TF_conc", "Ca_conc"] │ adding additional output Variable %reaction%pCO2 (atm) 'CO2 partial pressure (fugacity corrected)' │ adding additional output Variable %reaction%xCO2dryinp () 'mixing ratio of CO2 in dry air at 1 atm (always > pCO2 due to H2O vapour pressure)' │ adding additional output Variable %reaction%CO3 (mol m-3) 'carbonate ion CO3-- concentration' │ adding additional output Variable %reaction%OmegaCA () 'calcite saturation' │ adding additional output Variable %reaction%OmegaAR () 'aragonite saturation' └ outputs ["pCO2", "xCO2dryinp", "CO3", "OmegaCA", "OmegaAR"] at indices [16, 17, 13, 36, 37] in res (pHfree = 1, H = 2, OH = 3, TA = 4, dTAdpH = 5, TS = 6, HSO4 = 7, TF = 8, HF = 9, TCi = 10, CO2 = 11, HCO3 = 12, CO3 = 13, CAlk = 14, fCO2 = 15, pCO2 = 16, xCO2dryinp = 17, TB = 18, BAlk = 19, TP = 20, H3PO4 = 21, H2PO4 = 22, HPO4 = 23, PO4 = 24, PengCorrection = 25, PAlk = 26, TSi = 27, SiAlk = 28, TH2S = 29, H2S = 30, HSAlk = 31, TNH3 = 32, NH4 = 33, NH3Alk = 34, Ca = 35, OmegaCA = 36, OmegaAR = 37) ┌ Info: │ ================================================================================ │ link_variables: first pass └ ================================================================================ ┌ Info: │ ================================================================================ │ link_variables: register_reaction_dynamic_methods and configure variables └ ================================================================================ ┌ Info: _configure_variables: ReactionReservoir ocean.reservoir_DIC variable_links: │ set variable_links: R -> DIC │ set variable_links: R_sms -> DIC_sms │ set variable_links: R_total -> DIC_total │ set variable_links: R_conc -> DIC_conc │ set variable_links: R_delta -> DIC_delta │ _configure_variables: ReactionReservoir ocean.reservoir_DIC variable_attributes: │ set attribute: R :initial_value = 2.0 └ set attribute: R :initial_delta = -1.0 ┌ Info: _configure_variables: ReactionReservoir ocean.reservoir_TAlk variable_links: │ set variable_links: R -> TAlk │ set variable_links: R_sms -> TAlk_sms │ set variable_links: R_total -> TAlk_total │ set variable_links: R_conc -> TAlk_conc │ _configure_variables: ReactionReservoir ocean.reservoir_TAlk variable_attributes: └ set attribute: R :initial_value = 2.0 ┌ Info: _configure_variables: ReactionConst ocean.oceanphys_const variable_attributes: │ set attribute: temp :initial_value = [294.65, 275.65, 275.65] └ set attribute: sal :initial_value = 35.0 ┌ Info: _configure_variables: ReactionConstraintReservoir ocean.H_primary_species variable_links: │ set variable_links: R_constraint -> TAlk_constraint │ set variable_links: R_calc -> TAlk_calc │ set variable_links: R -> TAlk │ set variable_links: Primary_conc -> H_conc │ set variable_links: Primary_pconc -> pHfree │ _configure_variables: ReactionConstraintReservoir ocean.H_primary_species variable_attributes: │ set attribute: R_constraint :norm_value = 1.0 │ set attribute: Primary_pconc :initial_value = 8.0 └ set attribute: Primary_pconc :norm_value = 1.0 ┌ Info: _configure_variables: ReactionCO2SYS ocean.carbchem variable_links: └ set variable_links: TCi_conc -> DIC_conc ┌ Info: │ ================================================================================ │ link_variables: second pass: └ ================================================================================ ┌ Info: │ ================================================================================ │ link_variables! unlinked variables: └ ================================================================================ ┌ Info: │ ================================================================================ │ create_model_from_config: done └ ================================================================================ ┌ Info: │ ================================================================================ │ PALEOmodel.initialize! start └ ================================================================================ ┌ Info: │ ================================================================================ │ allocate_variables! (modeldata arrays_idx=1) └ ================================================================================ [ Info: Domain global data dimensions PALEOboxes.NamedDimension[] allocating 0 variables (hostdep=nothing) [ Info: Domain ocean data dimensions PALEOboxes.NamedDimension[] allocating 33 variables (hostdep=nothing) [ Info: Domain oceansurface data dimensions PALEOboxes.NamedDimension[] allocating 1 variables (hostdep=nothing) [ Info: Domain oceanfloor data dimensions PALEOboxes.NamedDimension[] allocating 3 variables (hostdep=nothing) [ Info: set_default_solver_view: ┌ Info: SolverView: │ host-dependent Variables: │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ Domain operatorID VF_StateExplicit VF_Total VF_Constraint VF_StateTotal VF_State VF_Undefined │ global 0 0 0 0 0 0 0 │ ocean 0 2 0 1 0 1 0 │ oceansurface 0 0 0 0 0 0 0 │ oceanfloor 0 0 0 0 0 0 0 │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ Total - 2 0 1 0 1 0 │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ n_state_vars 3 (stateexplicit 2 + statetotal 0 + state 1) │ n_equations 3 (stateexplicit 2 + total 0 + constraint 1) │ including all host-dependent non-state Variables └ host-dependent non-state Variables (:vfunction PB.VF_Undefined): Any[] ┌ Info: │ ================================================================================ │ initialize_reactiondata! (modeldata arrays_indices=1:1) └ ================================================================================ [ Info: prepare_do_carbchem: ocean.carbchem simd_width=1 using BufType Float64 ┌ Info: │ ================================================================================ │ dispatch_setup :setup └ ================================================================================ [ Info: ocean.oceanphys_const.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.temp = [294.65, 275.65, 275.65] [ Info: init_values! :initial_value ocean.sal = 35.0 ┌ Info: │ ================================================================================ │ dispatch_setup :norm_value └ ================================================================================ [ Info: ocean.H_primary_species.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.pHfree = 1.0 [ Info: ocean.reservoir_DIC.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.DIC = 1.0 * volume, delta=1.0 (fixed delta value to calculate norm) [ Info: ocean.reservoir_TAlk.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.TAlk = 1.0 * volume [ Info: ocean.H_primary_species.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.TAlk_constraint = 1.0 * volume ┌ Info: │ ================================================================================ │ dispatch_setup :initial_value └ ================================================================================ [ Info: ocean.H_primary_species.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.pHfree = 8.0 [ Info: ocean.reservoir_DIC.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.DIC = 2.0 * volume, delta=-1.0 [ Info: ocean.reservoir_TAlk.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.TAlk = 2.0 * volume [ Info: ocean.H_primary_species.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.TAlk_constraint = 0.0 * volume ┌ Info: │ ================================================================================ │ PALEOmodel.initialize! done └ ================================================================================ =========================================================== integrate to approx steady state with solver integrateDAE =========================================================== ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: │ tspan: (0, 100000.0) │ algorithm: IDA{:Dense, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ Jacobian: NoJacobian │ using 1 BLAS threads └ ================================================================================ [ Info: DAEfunction: using Jacobian NoJacobian [ Info: jac_config_dae: jac_ad=NoJacobian [ Info: calling get_inconsistent_initial_deriv 3.087739 seconds (1.06 M allocations: 73.004 MiB, 2.78% gc time, 99.96% compilation time) ┌ Info: │ ================================================================================ │ print_sol_stats: │ retcode=Success │ alg=IDA{:Dense, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ stats=SciMLBase.DEStats │ Number of function 1 evaluations: 23 │ Number of function 2 evaluations: 0 │ Number of W matrix evaluations: 11 │ Number of linear solves: 0 │ Number of Jacobians created: 11 │ Number of nonlinear solver iterations: 21 │ Number of nonlinear solver convergence failures: 0 │ Number of fixed-point solver iterations: 0 │ Number of fixed-point solver convergence failures: 0 │ Number of rootfind condition calls: 0 │ Number of accepted steps: 11 │ Number of rejected steps: 0 │ length(sol.t) 12 │ size(sol) (12, 12) └ ================================================================================ [ Info: ODE.calc_output_sol!: 12 records [ Info: ODE.calc_output_sol!: done ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: done └ ================================================================================ ocean model created variables after integrate to steady-state with integrateDAE: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TAlk_calc = [200.00000000000006, 500.0000000000001, 7564.390890403548] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0)] ocean.carbchem/pCO2 = [0.0019792560241649404, 0.0009740973106887919, 0.0009602445515261407] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [2.0, 2.0, 2.0] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [0.9455726090191425, 0.7914820720276037, 0.5257976074964462] ocean.carbchem/OmegaAR = [0.6173652892259865, 0.49916687210824134, 0.3388392963157649] ocean.sal = [35.0, 35.0, 35.0] ocean.TAlk_total = [8264.390890403549] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.002029615210265345, 0.000981038758804756, 0.0009670872844440077] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.3540128696428155, 7.602021505763418, 7.525099896712385] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.H_conc = [3.6454564827576414e-5, 2.3134505128952855e-5, 2.796629957648747e-5] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403549, v_moldelta=-8264.390890403549, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.carbchem/CO3 = [0.040847170229903265, 0.03488335451323758, 0.033119417878596735] =========================================================== integrate to approx steady state with solver integrate =========================================================== ┌ Warning: Using a `Bool` for keyword argument `autodiff` is deprecated. Please use an `ADType` specifier. │ caller = _process_AD_choice at misc_utils.jl:158 [inlined] └ @ Core ~/.julia/packages/OrdinaryDiffEqCore/UVwdM/src/misc_utils.jl:158 ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrate: │ tspan: (0, 100000.0) │ algorithm: QNDF{5, 0, ADTypes.AutoFiniteDiff{Val{:forward}, Val{:forward}, Val{:hcentral}, Nothing, Nothing, Bool}, Nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Nothing}, typeof(OrdinaryDiffEqCore.DEFAULT_PRECS), Val{:forward}(), true, nothing, Nothing, Nothing, NTuple{5, Rational{Int64}}, typeof(OrdinaryDiffEqCore.trivial_limiter!)}(Val{5}(), nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Nothing}(1//100, 10, 1//5, 1//5, false, true, nothing), OrdinaryDiffEqCore.DEFAULT_PRECS, nothing, nothing, :linear, (-37//200, -1//9, -823//10000, -83//2000, 0//1), :Standard, OrdinaryDiffEqCore.trivial_limiter!, ADTypes.AutoFiniteDiff()) │ Jacobian: NoJacobian │ steadystate: false │ using 1 BLAS threads └ ================================================================================ [ Info: ODEfunction: using Jacobian NoJacobian [ Info: ODEfunction: using mass matrix for DAE with 3 algebraic constraints [ Info: jac_config_ode: jac_ad=NoJacobian 69.659114 seconds (15.03 M allocations: 985.860 MiB, 2.75% gc time, 99.97% compilation time) ┌ Info: │ ================================================================================ │ print_sol_stats: │ retcode=Success │ alg=QNDF{5, 0, ADTypes.AutoFiniteDiff{Val{:forward}, Val{:forward}, Val{:hcentral}, Nothing, Nothing, Bool}, Nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Nothing}, typeof(OrdinaryDiffEqCore.DEFAULT_PRECS), Val{:forward}(), true, nothing, Nothing, Nothing, NTuple{5, Rational{Int64}}, typeof(OrdinaryDiffEqCore.trivial_limiter!)}(Val{5}(), nothing, NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Nothing}(1//100, 10, 1//5, 1//5, false, true, nothing), OrdinaryDiffEqCore.DEFAULT_PRECS, nothing, nothing, :linear, (-37//200, -1//9, -823//10000, -83//2000, 0//1), :Standard, OrdinaryDiffEqCore.trivial_limiter!, ADTypes.AutoFiniteDiff()) │ stats=SciMLBase.DEStats │ Number of function 1 evaluations: 40 │ Number of function 2 evaluations: 0 │ Number of W matrix evaluations: 12 │ Number of linear solves: 12 │ Number of Jacobians created: 1 │ Number of nonlinear solver iterations: 12 │ Number of nonlinear solver convergence failures: 0 │ Number of fixed-point solver iterations: 0 │ Number of fixed-point solver convergence failures: 0 │ Number of rootfind condition calls: 0 │ Number of accepted steps: 12 │ Number of rejected steps: 0 │ length(sol.t) 13 │ size(sol) (12, 13) └ ================================================================================ [ Info: ODE.calc_output_sol!: 13 records [ Info: ODE.calc_output_sol!: done ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrate: done └ ================================================================================ ocean model created variables after integrate to steady-state with integrate: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TAlk_calc = [199.99999999999275, 500.00000000000824, 7564.390890403391] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=1.9999999999999278, v_moldelta=-1.9999999999999278, ‰=-1.0), (v=2.000000000000033, v_moldelta=-2.000000000000033, ‰=-1.0), (v=1.9999999999999585, v_moldelta=-1.9999999999999585, ‰=-1.0)] ocean.carbchem/pCO2 = [0.0019792560241648953, 0.000974097310688805, 0.0009602445515261262] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [1.9999999999999278, 2.000000000000033, 1.9999999999999585] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [0.9455726090190981, 0.7914820720276168, 0.5257976074964315] ocean.carbchem/OmegaAR = [0.6173652892259576, 0.49916687210824956, 0.33883929631575543] ocean.sal = [35.0, 35.0, 35.0] ocean.TAlk_total = [8264.390890403392] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.0020296152102652985, 0.0009810387588047693, 0.000967087284443993] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.354012869642812, 7.602021505763419, 7.5250998967123826] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.H_conc = [3.6454564827576705e-5, 2.3134505128952808e-5, 2.796629957648764e-5] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403392, v_moldelta=-8264.390890403392, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.carbchem/CO3 = [0.04084717022990134, 0.03488335451323816, 0.0331194178785958] =========================================================== integrate to approx steady state with solver integrateDAEForwardDiff =========================================================== ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: │ tspan: (0, 100000.0) │ algorithm: IDA{:Dense, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ Jacobian: ForwardDiff │ using 1 BLAS threads └ ================================================================================ [ Info: DAEfunction: using Jacobian ForwardDiff [ Info: jac_config_dae: jac_ad=ForwardDiff [ Info: using ForwardDiff dense Jacobian chunksize=12) [ Info: add_arrays_data! (arrays_eltype=ForwardDiff.Dual{Nothing, Float64, 12}, arrays_tagname=jac_ad) [ Info: calling get_inconsistent_initial_deriv 6.040453 seconds (3.35 M allocations: 225.037 MiB, 1.92% gc time, 99.98% compilation time) ┌ Info: │ ================================================================================ │ print_sol_stats: │ retcode=Success │ alg=IDA{:Dense, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ stats=SciMLBase.DEStats │ Number of function 1 evaluations: 23 │ Number of function 2 evaluations: 0 │ Number of W matrix evaluations: 11 │ Number of linear solves: 0 │ Number of Jacobians created: 11 │ Number of nonlinear solver iterations: 21 │ Number of nonlinear solver convergence failures: 0 │ Number of fixed-point solver iterations: 0 │ Number of fixed-point solver convergence failures: 0 │ Number of rootfind condition calls: 0 │ Number of accepted steps: 11 │ Number of rejected steps: 0 │ length(sol.t) 12 │ size(sol) (12, 12) └ ================================================================================ [ Info: ODE.calc_output_sol!: 12 records [ Info: ODE.calc_output_sol!: done ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: done └ ================================================================================ ocean model created variables after integrate to steady-state with integrateDAEForwardDiff: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TAlk_calc = [199.99999999999997, 500.0000000000001, 7564.390890403546] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0)] ocean.carbchem/pCO2 = [0.001979256024164952, 0.0009740973106887919, 0.0009602445515261428] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [2.0, 2.0, 2.0] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [0.9455726090191392, 0.7914820720276037, 0.5257976074964443] ocean.carbchem/OmegaAR = [0.6173652892259844, 0.49916687210824134, 0.33883929631576376] ocean.sal = [35.0, 35.0, 35.0] ocean.TAlk_total = [8264.390890403549] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.002029615210265357, 0.000981038758804756, 0.0009670872844440097] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.354012869642815, 7.602021505763418, 7.525099896712383] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.H_conc = [3.645456482757649e-5, 2.3134505128952855e-5, 2.7966299576487582e-5] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403549, v_moldelta=-8264.390890403549, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.carbchem/CO3 = [0.04084717022990312, 0.03488335451323758, 0.03311941787859662] =========================================================== integrate to approx steady state with solver integrateDAEForwardDiffsparse =========================================================== ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: │ tspan: (0, 100000.0) │ algorithm: IDA{:KLU, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ Jacobian: ForwardDiffSparse │ using 1 BLAS threads └ ================================================================================ [ Info: DAEfunction: using Jacobian ForwardDiffSparse [ Info: jac_config_dae: jac_ad=ForwardDiffSparse [ Info: using ForwardDiff sparse Jacobian with sparsity calculated at t=0 [ Info: calcJacobianSparsitySparsityTracing! [ Info: add_arrays_data! (arrays_eltype=SparsityTracing.ADval{Float64}, arrays_tagname=sparsity_tracing) [ Info: calcJacobianSparsitySparsityTracing! do_deriv [ Info: calcJacobianSparsitySparsityTracing! initial_jac size=(12, 12) nnz=9 non-zero=9 at time=0 [ Info: fill_sparse_jac: initial_jac nnz 9 (6.25%) non-zero 9 [ Info: fill_sparse_jac: after filling diagonal nnz 18 [ Info: jac_prototype nnz=18 num colors=3 [ Info: add_arrays_data! (arrays_eltype=ForwardDiff.Dual{Nothing, Float64, 3}, arrays_tagname=jac_ad) [ Info: calling get_inconsistent_initial_deriv 5.911352 seconds (2.12 M allocations: 143.265 MiB, 1.51% gc time, 99.98% compilation time) ┌ Info: │ ================================================================================ │ print_sol_stats: │ retcode=Success │ alg=IDA{:KLU, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ stats=SciMLBase.DEStats │ Number of function 1 evaluations: 23 │ Number of function 2 evaluations: 0 │ Number of W matrix evaluations: 11 │ Number of linear solves: 0 │ Number of Jacobians created: 11 │ Number of nonlinear solver iterations: 21 │ Number of nonlinear solver convergence failures: 0 │ Number of fixed-point solver iterations: 0 │ Number of fixed-point solver convergence failures: 0 │ Number of rootfind condition calls: 0 │ Number of accepted steps: 11 │ Number of rejected steps: 0 │ length(sol.t) 12 │ size(sol) (12, 12) └ ================================================================================ [ Info: ODE.calc_output_sol!: 12 records [ Info: ODE.calc_output_sol!: done ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: done └ ================================================================================ ocean model created variables after integrate to steady-state with integrateDAEForwardDiffsparse: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TAlk_calc = [199.99999999999997, 500.0000000000001, 7564.390890403546] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0)] ocean.carbchem/pCO2 = [0.001979256024164952, 0.0009740973106887919, 0.0009602445515261428] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [2.0, 2.0, 2.0] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [0.9455726090191392, 0.7914820720276037, 0.5257976074964443] ocean.carbchem/OmegaAR = [0.6173652892259844, 0.49916687210824134, 0.33883929631576376] ocean.sal = [35.0, 35.0, 35.0] ocean.TAlk_total = [8264.390890403549] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.002029615210265357, 0.000981038758804756, 0.0009670872844440097] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.354012869642815, 7.602021505763418, 7.525099896712383] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.H_conc = [3.645456482757649e-5, 2.3134505128952855e-5, 2.7966299576487582e-5] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403549, v_moldelta=-8264.390890403549, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.carbchem/CO3 = [0.04084717022990312, 0.03488335451323758, 0.03311941787859662] ┌ Info: │ ================================================================================ │ create_model_from_config: configmodel test_carbchem_implicit │ config_file: /home/pkgeval/.julia/packages/PALEOaqchem/lxx8X/test/configcarbchem.yaml └ ================================================================================ ┌ Info: Model.parameters: └ CIsotope = IsotopeLinear ┌ Info: │ ================================================================================ │ creating Domains └ ================================================================================ [ Info: generated Reaction catalog with 67 Reactions ┌ Info: │ ================================================================================ │ creating domain 'global' ID=1 └ ================================================================================ ┌ Info: │ ================================================================================ │ creating domain 'ocean' ID=2 └ ================================================================================ ┌ Info: create_reaction_from_config: ocean.reservoir_DIC classname ReactionReservoirTotal │ set parameters: [config.yaml] field_data =external%CIsotope │ expandvalue: external%CIsotope -> IsotopeLinear │ after substitution field_data=IsotopeLinear │ set parameters: [Default] total =true │ set parameters: [Default] limit_delta_conc =0.0 └ set parameters: [Default] state_conc =false ┌ Info: create_reaction_from_config: ocean.reservoir_TAlk_total_H_primary classname ReactionImplicitReservoir │ set parameters: [config.yaml] primary_total_stoich=0.0 │ set parameters: [Default] primary_other_components=String[] │ set parameters: [config.yaml] primary_variable =p_concentration │ set parameters: [config.yaml] total_variable =amount └ set parameters: [Default] total =false ┌ Info: create_reaction_from_config: ocean.notransport3box classname ReactionOceanNoTransport │ set parameters: [config.yaml] area =[1.0, 1.0, 1.0] └ set parameters: [config.yaml] depth =[100.0, 250.0, 3782.1954452017744] ┌ Info: create_reaction_from_config: ocean.oceanphys_const classname ReactionConst └ set parameters: [config.yaml] constnames =["temp", "sal"] ┌ Info: create_reaction_from_config: ocean.carbchem classname ReactionCO2SYS │ set parameters: [Default] WhichKs =10 │ set parameters: [Default] WhoseKSO4 =1 │ set parameters: [config.yaml] components =["Ci", "B", "S", "F", "Omega"] │ set parameters: [config.yaml] defaultconcs =["TS", "TF", "TB", "Ca"] │ set parameters: [config.yaml] outputs =["pCO2", "xCO2dryinp", "CO3", "OmegaCA", "OmegaAR"] │ set parameters: [Default] output_pHtot =true │ set parameters: [config.yaml] solve_pH =speciationTAlk │ set parameters: [Default] pHtol =2.220446049250313e-14 └ set parameters: [Default] simd_width =1 ┌ Info: │ ================================================================================ │ creating domain 'oceansurface' ID=3 └ ================================================================================ ┌ Info: │ ================================================================================ │ creating domain 'oceanfloor' ID=4 └ ================================================================================ ┌ Warning: create_domain_from_config Domain 'oceanfloor' empty 'reactions:' key in .yaml file └ @ PALEOboxes ~/.julia/packages/PALEOboxes/4HX2Z/src/Domain.jl:349 ┌ Info: │ ================================================================================ │ set_model_geometry └ ================================================================================ [ Info: set ocean.oceansurface Subdomain size=3 [ Info: set ocean.oceanfloor Subdomain size=3 [ Info: Ocean.set_model_domains: [ Info: ocean Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["oceansurface", "oceanfloor"]) [ Info: oceansurface Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["ocean"]) [ Info: oceanfloor Domain size=3 grid=UnstructuredVectorGrid(ncells=3, cellnames=Dict{Symbol, Int64}(), subdomains: ["ocean"]) ┌ Info: │ ================================================================================ │ register_reaction_methods! └ ================================================================================ ┌ Info: register_methods! ocean.carbchem ReactionCO2SYS │ modern default concentration Variables ["TS_conc", "TF_conc", "TB_conc", "Ca_conc"] │ adding input concentration Variables ["TCi_conc", "TB_conc", "TS_conc", "TF_conc", "Ca_conc"] │ adding additional output Variable %reaction%pCO2 (atm) 'CO2 partial pressure (fugacity corrected)' │ adding additional output Variable %reaction%xCO2dryinp () 'mixing ratio of CO2 in dry air at 1 atm (always > pCO2 due to H2O vapour pressure)' │ adding additional output Variable %reaction%CO3 (mol m-3) 'carbonate ion CO3-- concentration' │ adding additional output Variable %reaction%OmegaCA () 'calcite saturation' │ adding additional output Variable %reaction%OmegaAR () 'aragonite saturation' └ outputs ["pCO2", "xCO2dryinp", "CO3", "OmegaCA", "OmegaAR"] at indices [16, 17, 13, 36, 37] in res (pHfree = 1, H = 2, OH = 3, TA = 4, dTAdpH = 5, TS = 6, HSO4 = 7, TF = 8, HF = 9, TCi = 10, CO2 = 11, HCO3 = 12, CO3 = 13, CAlk = 14, fCO2 = 15, pCO2 = 16, xCO2dryinp = 17, TB = 18, BAlk = 19, TP = 20, H3PO4 = 21, H2PO4 = 22, HPO4 = 23, PO4 = 24, PengCorrection = 25, PAlk = 26, TSi = 27, SiAlk = 28, TH2S = 29, H2S = 30, HSAlk = 31, TNH3 = 32, NH4 = 33, NH3Alk = 34, Ca = 35, OmegaCA = 36, OmegaAR = 37) ┌ Info: │ ================================================================================ │ link_variables: first pass └ ================================================================================ ┌ Info: │ ================================================================================ │ link_variables: register_reaction_dynamic_methods and configure variables └ ================================================================================ ┌ Info: _configure_variables: ReactionReservoir ocean.reservoir_DIC variable_links: │ set variable_links: R -> DIC │ set variable_links: R_sms -> DIC_sms │ set variable_links: R_total -> DIC_total │ set variable_links: R_conc -> DIC_conc │ set variable_links: R_delta -> DIC_delta │ _configure_variables: ReactionReservoir ocean.reservoir_DIC variable_attributes: │ set attribute: R :initial_value = 2.0 └ set attribute: R :initial_delta = -1.0 ┌ Info: _configure_variables: ReactionImplicitReservoir ocean.reservoir_TAlk_total_H_primary variable_links: │ set variable_links: R -> TAlk │ set variable_links: R_sms -> TAlk_sms │ set variable_links: R_calc -> TAlk_calc │ set variable_links: R_conc -> TAlk_conc │ set variable_links: Primary_conc -> H_conc │ set variable_links: Primary_pconc -> pHfree │ _configure_variables: ReactionImplicitReservoir ocean.reservoir_TAlk_total_H_primary variable_attributes: │ set attribute: Primary_pconc :initial_value = 8.0 └ set attribute: Primary_pconc :norm_value = 1.0 ┌ Info: _configure_variables: ReactionConst ocean.oceanphys_const variable_attributes: │ set attribute: temp :initial_value = [294.65, 275.65, 275.65] └ set attribute: sal :initial_value = 35.0 ┌ Info: _configure_variables: ReactionCO2SYS ocean.carbchem variable_links: └ set variable_links: TCi_conc -> DIC_conc ┌ Info: │ ================================================================================ │ link_variables: second pass: └ ================================================================================ ┌ Info: │ ================================================================================ │ link_variables! unlinked variables: └ ================================================================================ ┌ Info: │ ================================================================================ │ create_model_from_config: done └ ================================================================================ ┌ Info: │ ================================================================================ │ PALEOmodel.initialize! start └ ================================================================================ ┌ Info: │ ================================================================================ │ allocate_variables! (modeldata arrays_idx=1) └ ================================================================================ [ Info: Domain global data dimensions PALEOboxes.NamedDimension[] allocating 0 variables (hostdep=nothing) [ Info: Domain ocean data dimensions PALEOboxes.NamedDimension[] allocating 31 variables (hostdep=nothing) [ Info: Domain oceansurface data dimensions PALEOboxes.NamedDimension[] allocating 1 variables (hostdep=nothing) [ Info: Domain oceanfloor data dimensions PALEOboxes.NamedDimension[] allocating 3 variables (hostdep=nothing) [ Info: set_default_solver_view: ┌ Info: SolverView: │ host-dependent Variables: │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ Domain operatorID VF_StateExplicit VF_Total VF_Constraint VF_StateTotal VF_State VF_Undefined │ global 0 0 0 0 0 0 0 │ ocean 0 1 1 0 1 0 0 │ oceansurface 0 0 0 0 0 0 0 │ oceanfloor 0 0 0 0 0 0 0 │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ Total - 1 1 0 1 0 0 │ ------------------------------------------------------------------------------------------------------------------------------------------------ │ n_state_vars 2 (stateexplicit 1 + statetotal 1 + state 0) │ n_equations 2 (stateexplicit 1 + total 1 + constraint 0) │ including all host-dependent non-state Variables └ host-dependent non-state Variables (:vfunction PB.VF_Undefined): Any[] ┌ Info: │ ================================================================================ │ initialize_reactiondata! (modeldata arrays_indices=1:1) └ ================================================================================ [ Info: prepare_do_carbchem: ocean.carbchem simd_width=1 using BufType Float64 ┌ Info: │ ================================================================================ │ dispatch_setup :setup └ ================================================================================ [ Info: ocean.oceanphys_const.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.temp = [294.65, 275.65, 275.65] [ Info: init_values! :initial_value ocean.sal = 35.0 ┌ Info: │ ================================================================================ │ dispatch_setup :norm_value └ ================================================================================ [ Info: ocean.reservoir_TAlk_total_H_primary.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.pHfree = 1.0 [ Info: ocean.reservoir_DIC.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.DIC = 1.0 * volume, delta=1.0 (fixed delta value to calculate norm) [ Info: ocean.reservoir_TAlk_total_H_primary.setup_initialvalue_vars_default: [ Info: init_values! :norm_value ocean.TAlk = 1.0 * volume ┌ Info: │ ================================================================================ │ dispatch_setup :initial_value └ ================================================================================ [ Info: ocean.reservoir_TAlk_total_H_primary.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.pHfree = 8.0 [ Info: ocean.reservoir_DIC.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.DIC = 2.0 * volume, delta=-1.0 [ Info: ocean.reservoir_TAlk_total_H_primary.setup_initialvalue_vars_default: [ Info: init_values! :initial_value ocean.TAlk = 0.0 * volume ┌ Info: │ ================================================================================ │ PALEOmodel.initialize! done └ ================================================================================ =========================================================== integrate to approx steady state with solver integrateDAEForwardDiff =========================================================== ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: │ tspan: (0, 100000.0) │ algorithm: IDA{:Dense, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ Jacobian: ForwardDiff │ using 1 BLAS threads └ ================================================================================ [ Info: DAEfunction: using Jacobian ForwardDiff [ Info: jac_config_dae: jac_ad=ForwardDiff [ Info: using ForwardDiff dense Jacobian chunksize=9) [ Info: add_arrays_data! (arrays_eltype=ForwardDiff.Dual{Nothing, Float64, 9}, arrays_tagname=jac_ad) [ Info: calculating dTdS for 3 Total Variables [ Info: calling get_inconsistent_initial_deriv 9.796692 seconds (3.07 M allocations: 205.623 MiB, 1.36% gc time, 99.98% compilation time) ┌ Info: │ ================================================================================ │ print_sol_stats: │ retcode=Success │ alg=IDA{:Dense, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ stats=SciMLBase.DEStats │ Number of function 1 evaluations: 11 │ Number of function 2 evaluations: 0 │ Number of W matrix evaluations: 9 │ Number of linear solves: 0 │ Number of Jacobians created: 9 │ Number of nonlinear solver iterations: 11 │ Number of nonlinear solver convergence failures: 0 │ Number of fixed-point solver iterations: 0 │ Number of fixed-point solver convergence failures: 0 │ Number of rootfind condition calls: 0 │ Number of accepted steps: 11 │ Number of rejected steps: 0 │ length(sol.t) 12 │ size(sol) (9, 12) └ ================================================================================ [ Info: ODE.calc_output_sol!: 12 records [ Info: ODE.calc_output_sol!: done ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: done └ ================================================================================ ocean model created variables after integrate to steady-state with integrateDAEForwardDiff: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TAlk_calc = [219.39990876584, 524.9318192959887, 8042.097954480842] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0)] ocean.carbchem/pCO2 = [0.0005416511272976855, 0.00042983809842783824, 0.00034886694048521426] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [2.1939990876584, 2.099727277183955, 2.1263041720076443] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [3.2604347141345342, 1.7722426530985185, 1.416529731701256] ocean.carbchem/OmegaAR = [2.128741041242835, 1.1177067087542896, 0.9128530268241225] ocean.sal = [35.0, 35.0, 35.0] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.0005554326237731536, 0.00043290113825533933, 0.00035135297729096303] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.904194344304453, 7.954711276092236, 7.9601644586418265] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.H_conc = [1.027e-5, 1.027e-5, 1.027e-5] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403549, v_moldelta=-8264.390890403549, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.carbchem/CO3 = [0.14084537826226645, 0.07810886807978167, 0.08922566297905321] =========================================================== integrate to approx steady state with solver integrateDAEForwardDiffsparse =========================================================== ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: │ tspan: (0, 100000.0) │ algorithm: IDA{:KLU, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ Jacobian: ForwardDiffSparse │ using 1 BLAS threads └ ================================================================================ [ Info: DAEfunction: using Jacobian ForwardDiffSparse [ Info: jac_config_dae: jac_ad=ForwardDiffSparse [ Info: using ForwardDiff sparse Jacobian with sparsity calculated at t=0 [ Info: calcJacobianSparsitySparsityTracing! [ Info: add_arrays_data! (arrays_eltype=SparsityTracing.ADval{Float64}, arrays_tagname=sparsity_tracing) [ Info: calcJacobianSparsitySparsityTracing! do_deriv [ Info: calcJacobianSparsitySparsityTracing! initial_jac size=(9, 9) nnz=0 non-zero=0 at time=0 [ Info: fill_sparse_jac: initial_jac nnz 0 (0.0%) non-zero 0 [ Info: fill_sparse_jac: after filling diagonal nnz 9 [ Info: jac_prototype nnz=9 num colors=1 [ Info: calculating dTdS for 3 Total Variables [ Info: add_arrays_data! (arrays_eltype=SparsityTracing.ADval{Float64}, arrays_tagname=sparsity_tracing_implicit) [ Info: initial_dTdS size=(3, 9) nnz=6 non-zero=6 at time=0 [ Info: fill_sparse_jac: initial_jac nnz 6 (22.2%) non-zero 6 [ Info: implicit_prototype nnz=6 num colors=2 [ Info: combined jac_prototype nnz=12 num colors=2 [ Info: add_arrays_data! (arrays_eltype=ForwardDiff.Dual{Nothing, Float64, 2}, arrays_tagname=jac_ad) [ Info: calling get_inconsistent_initial_deriv 6.865668 seconds (2.24 M allocations: 151.218 MiB, 1.22% gc time, 99.95% compilation time) ┌ Info: │ ================================================================================ │ print_sol_stats: │ retcode=Success │ alg=IDA{:KLU, Nothing, Nothing}(0, 0, 0, 5, 7, 0.33, 3, 10, 0.0033, 5, 4, 10, 100, true, false, nothing, nothing) │ stats=SciMLBase.DEStats │ Number of function 1 evaluations: 11 │ Number of function 2 evaluations: 0 │ Number of W matrix evaluations: 9 │ Number of linear solves: 0 │ Number of Jacobians created: 9 │ Number of nonlinear solver iterations: 11 │ Number of nonlinear solver convergence failures: 0 │ Number of fixed-point solver iterations: 0 │ Number of fixed-point solver convergence failures: 0 │ Number of rootfind condition calls: 0 │ Number of accepted steps: 11 │ Number of rejected steps: 0 │ length(sol.t) 12 │ size(sol) (9, 12) └ ================================================================================ [ Info: ODE.calc_output_sol!: 12 records [ Info: ODE.calc_output_sol!: done ┌ Info: │ ================================================================================ │ PALEOmodel.ODE.integrateDAE: done └ ================================================================================ ocean model created variables after integrate to steady-state with integrateDAEForwardDiffsparse: ocean.zmid = [-50.0, -125.0, -1891.0977226008872] ocean.TAlk_calc = [219.39990876584, 524.9318192959887, 8042.097954480842] ocean.TS_conc = [28.99779085444735, 28.99779085444735, 28.99779085444735] ocean.DIC_conc = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0), (v=2.0, v_moldelta=-2.0, ‰=-1.0)] ocean.carbchem/pCO2 = [0.0005416511272976855, 0.00042983809842783824, 0.00034886694048521426] ocean.rho_ref = [1027.0, 1027.0, 1027.0] ocean.volume_total = [4132.195445201774] ocean.zupper = [0.0, 0.0, 0.0] ocean.TB_conc = [0.4269239, 0.4269239, 0.4269239] ocean.TAlk_conc = [2.1939990876584, 2.099727277183955, 2.1263041720076443] ocean.Ca_conc = [10.562253082772667, 10.562253082772667, 10.562253082772667] ocean.temp = [294.65, 275.65, 275.65] ocean.carbchem/OmegaCA = [3.2604347141345342, 1.7722426530985185, 1.416529731701256] ocean.carbchem/OmegaAR = [2.128741041242835, 1.1177067087542896, 0.9128530268241225] ocean.sal = [35.0, 35.0, 35.0] ocean.pressure = [50.0, 125.0, 1891.0977226008872] ocean.Abox = [1.0, 1.0, 1.0] ocean.carbchem/xCO2dryinp = [0.0005554326237731536, 0.00043290113825533933, 0.00035135297729096303] ocean.volume = [100.0, 250.0, 3782.1954452017744] ocean.TF_conc = [0.0701706373599532, 0.0701706373599532, 0.0701706373599532] ocean.pHtot = [7.904194344304453, 7.954711276092236, 7.9601644586418265] ocean.DIC_delta = [-1.0, -1.0, -1.0] ocean.H_conc = [1.027e-5, 1.027e-5, 1.027e-5] ocean.DIC_total = PALEOboxes.IsotopeLinear{Float64, Float64}[(v=8264.390890403549, v_moldelta=-8264.390890403549, ‰=-1.0)] ocean.zlower = [-100.0, -250.0, -3782.1954452017744] ocean.carbchem/CO3 = [0.14084537826226645, 0.07810886807978167, 0.08922566297905321] ┌ Warning: Unable to determine HTML(edit_link = ...) from remote HEAD branch, defaulting to "master". │ Calling `git remote` failed with an exception. Set JULIA_DEBUG=Documenter to see the error. │ Unless this is due to a configuration error, the relevant variable should be set explicitly. └ @ Documenter ~/.julia/packages/Documenter/iRt2s/src/utilities/utilities.jl:665 [ Info: SetupBuildDirectory: setting up build directory. [ Info: Doctest: running doctests. [ Info: register_methods! test.test [ Info: register_methods! test.test [ Info: register_methods! test.test ┌ Info: register_methods: test.test PALEOaqchem.ReservoirsAq.ReactionAqConcSum │ add 2 * myvar │ add 1 * myothervar └ add -1 * mythirdvar ┌ Info: register_methods! test.test ReactionCO2SYS │ modern default concentration Variables ["TS_conc", "TF_conc", "TB_conc", "Ca_conc"] │ adding input concentration Variables ["TCi_conc", "TS_conc", "TF_conc", "TB_conc", "Ca_conc"] │ adding additional output Variable %reaction%pCO2 (atm) 'CO2 partial pressure (fugacity corrected)' │ adding additional output Variable %reaction%xCO2dryinp () 'mixing ratio of CO2 in dry air at 1 atm (always > pCO2 due to H2O vapour pressure)' └ outputs ["pCO2", "xCO2dryinp"] at indices [16, 17] in res (pHfree = 1, H = 2, OH = 3, TA = 4, dTAdpH = 5, TS = 6, HSO4 = 7, TF = 8, HF = 9, TCi = 10, CO2 = 11, HCO3 = 12, CO3 = 13, CAlk = 14, fCO2 = 15, pCO2 = 16, xCO2dryinp = 17, TB = 18, BAlk = 19, TP = 20, H3PO4 = 21, H2PO4 = 22, HPO4 = 23, PO4 = 24, PengCorrection = 25, PAlk = 26, TSi = 27, SiAlk = 28, TH2S = 29, H2S = 30, HSAlk = 31, TNH3 = 32, NH4 = 33, NH3Alk = 34, Ca = 35, OmegaCA = 36, OmegaAR = 37) [ Info: register_methods! test.test [ Info: register_methods! test.test [ Info: register_methods! test.test CIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test SIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test CIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test SIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test CIsotopeType=PALEOboxes.ScalarData, SIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test CIsotopeType=PALEOboxes.ScalarData, SIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test CIsotopeType=PALEOboxes.ScalarData, SIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test CIsotopeType=PALEOboxes.ScalarData, SIsotopeType=PALEOboxes.ScalarData [ Info: register_methods! test.test [ Info: Skipped ExpandTemplates step (doctest only). [ Info: Skipped CrossReferences step (doctest only). [ Info: Skipped CheckDocument step (doctest only). [ Info: Skipped Populate step (doctest only). [ Info: Skipped RenderDocument step (doctest only). Test Summary: | Pass Total Time PALEOaqchem all | 68 68 22m20.1s Testing PALEOaqchem tests passed Testing completed after 1330.21s PkgEval succeeded after 1694.09s