From b64ee55ccb0623c740e7eb7571431e64952e5961 Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 08:23:50 -0500 Subject: [PATCH 01/16] try enabling SI on 1.11 --- test/runtests.jl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/test/runtests.jl b/test/runtests.jl index 1c6f6fa76f..91f6cecfe9 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -86,8 +86,10 @@ end @time @safetestset "BifurcationKit Extension" begin include("extensions/bifurcation_kit.jl") end @time @safetestset "HomotopyContinuation Extension" begin include("extensions/homotopy_continuation.jl") end - # BROKEN - # @time @safetestset "Structural Identifiability Extension" begin include("extensions/structural_identifiability.jl") end + # BROKEN on 1.10 and earlier 1.11 releases + if VERSION >= v"1.11.2" + @time @safetestset "Structural Identifiability Extension" begin include("extensions/structural_identifiability.jl") end + end # Tests stability computation (but requires the HomotopyContinuation extension). #@time @safetestset "Steady State Stability Computations" begin include("extensions/stability_computation.jl") end From a7515205d5f57c9f5576b837b0897fa86a5ef0f7 Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 08:30:43 -0500 Subject: [PATCH 02/16] add warning for earlier Julia versions --- Project.toml | 6 +++--- docs/Project.toml | 2 ++ docs/pages.jl | 2 +- ext/CatalystStructuralIdentifiabilityExtension.jl | 6 ++++-- test/extensions/Project.toml | 2 +- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/Project.toml b/Project.toml index 4e6035d919..030dd24d82 100644 --- a/Project.toml +++ b/Project.toml @@ -33,14 +33,14 @@ CairoMakie = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0" GraphMakie = "1ecd5474-83a3-4783-bb4f-06765db800d2" HomotopyContinuation = "f213a82b-91d6-5c5d-acf7-10f1c761b327" NetworkLayout = "46757867-2c16-5918-afeb-47bfcb05e46a" -# StructuralIdentifiability = "220ca800-aa68-49bb-acd8-6037fa93a544" +StructuralIdentifiability = "220ca800-aa68-49bb-acd8-6037fa93a544" [extensions] CatalystBifurcationKitExtension = "BifurcationKit" CatalystCairoMakieExtension = "CairoMakie" CatalystGraphMakieExtension = ["GraphMakie", "NetworkLayout"] CatalystHomotopyContinuationExtension = "HomotopyContinuation" -# CatalystStructuralIdentifiabilityExtension = "StructuralIdentifiability" +CatalystStructuralIdentifiabilityExtension = "StructuralIdentifiability" [compat] BifurcationKit = "0.4.4" @@ -66,7 +66,7 @@ Requires = "1.0" RuntimeGeneratedFunctions = "0.5.12" SciMLBase = "2.57.2" Setfield = "1" -# StructuralIdentifiability = "0.5.8" +StructuralIdentifiability = "0.5.11" SymbolicUtils = "3.8.1" Symbolics = "6.22" Unitful = "1.12.4" diff --git a/docs/Project.toml b/docs/Project.toml index 73163c65ef..e8048af482 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -41,6 +41,7 @@ SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" SteadyStateDiffEq = "9672c7b4-1e72-59bd-8a11-6ac3964bc41f" StochasticDiffEq = "789caeaf-c7a9-5a7d-9973-96adeb23e2a0" +StructuralIdentifiability = "220ca800-aa68-49bb-acd8-6037fa93a544" Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" [compat] @@ -85,4 +86,5 @@ SpecialFunctions = "2.4" StaticArrays = "1.9" SteadyStateDiffEq = "2.2" StochasticDiffEq = "6.65" +StructuralIdentifiability = "0.5.11" Symbolics = "6.22" diff --git a/docs/pages.jl b/docs/pages.jl index bc77aaf459..a5aaeae785 100644 --- a/docs/pages.jl +++ b/docs/pages.jl @@ -48,7 +48,7 @@ pages = Any[ "inverse_problems/petab_ode_param_fitting.md", "inverse_problems/optimization_ode_param_fitting.md", "inverse_problems/behaviour_optimisation.md", - # "inverse_problems/structural_identifiability.md", + "inverse_problems/structural_identifiability.md", "inverse_problems/global_sensitivity_analysis.md", "Examples" => Any[ "inverse_problems/examples/ode_fitting_oscillation.md" diff --git a/ext/CatalystStructuralIdentifiabilityExtension.jl b/ext/CatalystStructuralIdentifiabilityExtension.jl index b1ce7566a0..d61b0740ca 100644 --- a/ext/CatalystStructuralIdentifiabilityExtension.jl +++ b/ext/CatalystStructuralIdentifiabilityExtension.jl @@ -6,6 +6,8 @@ import DataStructures.OrderedDict import StructuralIdentifiability as SI # Creates and exports make_si_ode function. -include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") - +if VERSION >= v"1.11.2" + include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") +else + @warn "Due to https://github.com/SciML/StructuralIdentifiability.jl/issues/360, CatalystStructuralIdentifiabilityExtension.jl is only compatible with Julia v1.11.2 or later." end diff --git a/test/extensions/Project.toml b/test/extensions/Project.toml index 416164f8ba..6e7773c76d 100644 --- a/test/extensions/Project.toml +++ b/test/extensions/Project.toml @@ -10,4 +10,4 @@ ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78" OrdinaryDiffEqDefault = "50262376-6c5a-4cf5-baba-aaf4f84d72d7" OrdinaryDiffEqTsit5 = "b1df2697-797e-41e3-8120-5422d3b24e4a" SteadyStateDiffEq = "9672c7b4-1e72-59bd-8a11-6ac3964bc41f" -# StructuralIdentifiability = "220ca800-aa68-49bb-acd8-6037fa93a544" \ No newline at end of file +StructuralIdentifiability = "220ca800-aa68-49bb-acd8-6037fa93a544" \ No newline at end of file From dc9620c4c31b11afdd7136099ed70ef6aaaea21e Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 08:32:28 -0500 Subject: [PATCH 03/16] move SI tutorial back in place --- .../steady_state_functionality}/structural_identifiability.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/{unpublished => src/steady_state_functionality}/structural_identifiability.md (100%) diff --git a/docs/unpublished/structural_identifiability.md b/docs/src/steady_state_functionality/structural_identifiability.md similarity index 100% rename from docs/unpublished/structural_identifiability.md rename to docs/src/steady_state_functionality/structural_identifiability.md From b0451dc570d154ca539b39c0929631b86a2b90e3 Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 08:43:47 -0500 Subject: [PATCH 04/16] don't build HC tutorial --- docs/pages.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages.jl b/docs/pages.jl index a5aaeae785..2c6ffe0261 100644 --- a/docs/pages.jl +++ b/docs/pages.jl @@ -38,7 +38,7 @@ pages = Any[ ] ], "Steady state analysis" => Any[ - "steady_state_functionality/homotopy_continuation.md", + # "steady_state_functionality/homotopy_continuation.md", "steady_state_functionality/nonlinear_solve.md", "steady_state_functionality/steady_state_stability_computation.md", "steady_state_functionality/bifurcation_diagrams.md", From 57c8e2dd3e326fae1a3bcec3f809fd2d7bd36276 Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 09:00:20 -0500 Subject: [PATCH 05/16] change up extension conditional --- ext/CatalystStructuralIdentifiabilityExtension.jl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ext/CatalystStructuralIdentifiabilityExtension.jl b/ext/CatalystStructuralIdentifiabilityExtension.jl index d61b0740ca..700c146748 100644 --- a/ext/CatalystStructuralIdentifiabilityExtension.jl +++ b/ext/CatalystStructuralIdentifiabilityExtension.jl @@ -5,9 +5,9 @@ using Catalyst import DataStructures.OrderedDict import StructuralIdentifiability as SI -# Creates and exports make_si_ode function. -if VERSION >= v"1.11.2" - include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") -else - @warn "Due to https://github.com/SciML/StructuralIdentifiability.jl/issues/360, CatalystStructuralIdentifiabilityExtension.jl is only compatible with Julia v1.11.2 or later." +@static if VERSION < v"1.11.2" + @warn "Due to https://github.com/SciML/StructuralIdentifiability.jl/issues/360, CatalystStructuralIdentifiabilityExtension.jl is only tested with Julia v1.11.2 or later. Its use is not recommended on earlier Julia versions." end + +# Creates and exports make_si_ode function. +include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") \ No newline at end of file From 4a5191ab71fc9185dc5c9be99febf66a28156ae5 Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 09:11:45 -0500 Subject: [PATCH 06/16] comment out correct issue --- docs/pages.jl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/pages.jl b/docs/pages.jl index 2c6ffe0261..a4d55dc6d4 100644 --- a/docs/pages.jl +++ b/docs/pages.jl @@ -38,9 +38,9 @@ pages = Any[ ] ], "Steady state analysis" => Any[ - # "steady_state_functionality/homotopy_continuation.md", + "steady_state_functionality/homotopy_continuation.md", "steady_state_functionality/nonlinear_solve.md", - "steady_state_functionality/steady_state_stability_computation.md", + #"steady_state_functionality/steady_state_stability_computation.md", "steady_state_functionality/bifurcation_diagrams.md", "steady_state_functionality/dynamical_systems.md" ], From c3a62d5a8b2c066fefa045cba356f8d51f333b56 Mon Sep 17 00:00:00 2001 From: Sam Isaacson Date: Thu, 9 Jan 2025 09:29:59 -0500 Subject: [PATCH 07/16] add end to module --- ext/CatalystStructuralIdentifiabilityExtension.jl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ext/CatalystStructuralIdentifiabilityExtension.jl b/ext/CatalystStructuralIdentifiabilityExtension.jl index 700c146748..ebf46c2c96 100644 --- a/ext/CatalystStructuralIdentifiabilityExtension.jl +++ b/ext/CatalystStructuralIdentifiabilityExtension.jl @@ -6,8 +6,10 @@ import DataStructures.OrderedDict import StructuralIdentifiability as SI @static if VERSION < v"1.11.2" - @warn "Due to https://github.com/SciML/StructuralIdentifiability.jl/issues/360, CatalystStructuralIdentifiabilityExtension.jl is only tested with Julia v1.11.2 or later. Its use is not recommended on earlier Julia versions." + @warn "CatalystStructuralIdentifiabilityExtension.jl is only tested with Julia v1.11.2 or later due to https://github.com/SciML/StructuralIdentifiability.jl/issues/360. Its use is not recommended on earlier Julia versions." end # Creates and exports make_si_ode function. -include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") \ No newline at end of file +include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") + +end \ No newline at end of file From 04ba45d59a83103052fc33da2dbe17a73ec58a14 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Wed, 22 Jan 2025 10:23:42 +0000 Subject: [PATCH 08/16] Update runtests.jl to 1.11.3 requirement --- test/runtests.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/runtests.jl b/test/runtests.jl index a3ed2ba1c0..f8a4d9b593 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -82,7 +82,7 @@ end @time @safetestset "HomotopyContinuation Extension" begin include("extensions/homotopy_continuation.jl") end # BROKEN on 1.10 and earlier 1.11 releases - if VERSION >= v"1.11.2" + if VERSION >= v"1.11.3" @time @safetestset "Structural Identifiability Extension" begin include("extensions/structural_identifiability.jl") end end From 84ce6e8a235c206584524afea60c300942e78743 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Wed, 22 Jan 2025 10:24:00 +0000 Subject: [PATCH 09/16] Update CatalystStructuralIdentifiabilityExtension.jl to 1.11.3 requirement --- ext/CatalystStructuralIdentifiabilityExtension.jl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ext/CatalystStructuralIdentifiabilityExtension.jl b/ext/CatalystStructuralIdentifiabilityExtension.jl index ebf46c2c96..318b1ad59a 100644 --- a/ext/CatalystStructuralIdentifiabilityExtension.jl +++ b/ext/CatalystStructuralIdentifiabilityExtension.jl @@ -5,11 +5,11 @@ using Catalyst import DataStructures.OrderedDict import StructuralIdentifiability as SI -@static if VERSION < v"1.11.2" +@static if VERSION < v"1.11.3" @warn "CatalystStructuralIdentifiabilityExtension.jl is only tested with Julia v1.11.2 or later due to https://github.com/SciML/StructuralIdentifiability.jl/issues/360. Its use is not recommended on earlier Julia versions." end # Creates and exports make_si_ode function. include("CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl") -end \ No newline at end of file +end From 01872fac3bea207c8c188054f2cba510dc36c6b0 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Tue, 4 Mar 2025 17:02:59 +0000 Subject: [PATCH 10/16] add ::ODESystem specification in assess_identifiability call --- .../structural_identifiability_extension.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl b/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl index b91043048d..7ed68edc50 100644 --- a/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl +++ b/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl @@ -113,7 +113,7 @@ function SI.assess_identifiability(rs::ReactionSystem, args...; funcs_to_check = make_ftc(funcs_to_check, conseqs, vars) # Computes identifiability and converts it to a easy to read form. - out = SI.assess_identifiability(osys, args...; measured_quantities, + out = SI.assess_identifiability(osys::ODESystem, args...; measured_quantities, funcs_to_check, kwargs...) return make_output(out, funcs_to_check, consconsts) end From 5c1cfd954199581e19ecc7f1c684ca9b388ec4e7 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Fri, 7 Mar 2025 19:09:13 +0000 Subject: [PATCH 11/16] init --- .../custom_crn_functions.jl | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/test/reactionsystem_core/custom_crn_functions.jl b/test/reactionsystem_core/custom_crn_functions.jl index 2cfe60ae65..e5f2387761 100644 --- a/test/reactionsystem_core/custom_crn_functions.jl +++ b/test/reactionsystem_core/custom_crn_functions.jl @@ -49,7 +49,7 @@ let ps = rnd_ps(custom_function_network_1, rng; factor) t = rand(rng) @test f_eval(custom_function_network_1, u0, ps, t) ≈ f_eval(custom_function_network_2, u0, ps, t) - @test jac_eval(custom_function_network_1, u0, ps, t) ≈ jac_eval(custom_function_network_2, u0, ps, t) + @test_broken jac_eval(custom_function_network_1, u0, ps, t) ≈ jac_eval(custom_function_network_2, u0, ps, t) # Weird error dur to some SciML update. Reported in https://github.com/SciML/ModelingToolkit.jl/issues/3447. @test g_eval(custom_function_network_1, u0, ps, t) ≈ g_eval(custom_function_network_2, u0, ps, t) end end @@ -101,20 +101,20 @@ end # Tests `ReactionSystem`s. let @species x(t) y(t) - @parameters k v n + @parameters k v n rs1 = @reaction_network rs begin mm(x, v, k), 0 --> x mmr(x, v, k), 0 --> x hill(x, v, k, n), 0 --> x hillr(x, v, k, n), 0 --> x - hillar(x, y, v, k, n), 0 --> x + hillar(x, y, v, k, n), 0 --> x end rs2 = @reaction_network rs begin v * x / (x + k), 0 --> x v * k / (x + k), 0 --> x v * (x^n) / (x^n + k^n), 0 --> x v * (k^n) / (x^n + k^n), 0 --> x - v * (x^n) / (x^n + y^n + k^n), 0 --> x + v * (x^n) / (x^n + y^n + k^n), 0 --> x end @test Catalyst.expand_registered_functions(rs1) == rs2 @@ -123,14 +123,14 @@ end # Tests `Reaction`s. let @species x(t) y(t) - @parameters k v n - + @parameters k v n + r1 = @reaction mm(x, v, k), 0 --> x r2 = @reaction mmr(x, v, k), 0 --> x r3 = @reaction hill(x, v, k, n), 0 --> x r4 = @reaction hillr(x, v, k, n), 0 --> x r5 = @reaction hillar(x, y, v, k, n), 0 --> x + y - + @test isequal(Catalyst.expand_registered_functions(r1).rate, v * x / (x + k)) @test isequal(Catalyst.expand_registered_functions(r2).rate, v * k / (x + k)) @test isequal(Catalyst.expand_registered_functions(r3).rate, v * (x^n) / (x^n + k^n)) @@ -143,14 +143,14 @@ end let @parameters T @variables X(T) Y(T) - @parameters K V N - + @parameters K V N + eq1 = 0 ~ mm(X, V, K) eq2 = 0 ~ mmr(X, V, K) eq3 = 0 ~ hill(X, V, K, N) eq4 = 0 ~ hillr(X, V, K, N) eq5 = 0 ~ hillar(X, Y, V, K, N) - + @test isequal(Catalyst.expand_registered_functions(eq1), 0 ~ V * X / (X + K)) @test isequal(Catalyst.expand_registered_functions(eq2), 0 ~ V * K / (X + K)) @test isequal(Catalyst.expand_registered_functions(eq3), 0 ~ V * (X^N) / (X^N + K^N)) @@ -166,7 +166,7 @@ let @parameters v K eqs = [ Reaction(mm(X,v,K), [], [X]), - mm(V,v,K) ~ V + 1 + mm(V,v,K) ~ V + 1 ] @named rs = ReactionSystem(eqs, t) @@ -211,7 +211,7 @@ let (v * (X^n) / (X^n + K^n) > 1000.0) => [X ~ v * (K^n) / (X^n + K^n) + 2] ] continuous_events = ModelingToolkit.SymbolicContinuousCallback.(continuous_events) - discrete_events = ModelingToolkit.SymbolicDiscreteCallback.(discrete_events) + discrete_events = ModelingToolkit.SymbolicDiscreteCallback.(discrete_events) @test isequal(only(Catalyst.get_rxs(rs_expanded)).rate, v0 + v * (X^n) / (X^n + Y^n + K^n)) @test isequal(get_continuous_events(rs_expanded), continuous_events) @test isequal(get_discrete_events(rs_expanded), discrete_events) From d59ab3016020a69c0ab87e878e84e685045d7408 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Sun, 9 Mar 2025 13:47:11 +0000 Subject: [PATCH 12/16] run tests on more versions --- test/runtests.jl | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/test/runtests.jl b/test/runtests.jl index f8a4d9b593..f62ae1bcfe 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -80,11 +80,7 @@ end @time @safetestset "Graph visualization" begin include("extensions/graphmakie.jl") end @time @safetestset "BifurcationKit Extension" begin include("extensions/bifurcation_kit.jl") end @time @safetestset "HomotopyContinuation Extension" begin include("extensions/homotopy_continuation.jl") end - - # BROKEN on 1.10 and earlier 1.11 releases - if VERSION >= v"1.11.3" - @time @safetestset "Structural Identifiability Extension" begin include("extensions/structural_identifiability.jl") end - end + @time @safetestset "Structural Identifiability Extension" begin include("extensions/structural_identifiability.jl") end # Tests stability computation (but requires the HomotopyContinuation extension). #@time @safetestset "Steady State Stability Computations" begin include("extensions/stability_computation.jl") end From 79e31a0ceeee1b5002ae5012dc9df40baf8b7d04 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Sun, 9 Mar 2025 14:44:12 +0000 Subject: [PATCH 13/16] re-add doc in right folder --- .../structural_identifiability.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/src/{steady_state_functionality => inverse_problems}/structural_identifiability.md (100%) diff --git a/docs/src/steady_state_functionality/structural_identifiability.md b/docs/src/inverse_problems/structural_identifiability.md similarity index 100% rename from docs/src/steady_state_functionality/structural_identifiability.md rename to docs/src/inverse_problems/structural_identifiability.md From 83e209fd43238aa7e9b24310a6209e329c7479d4 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Sun, 9 Mar 2025 15:22:07 +0000 Subject: [PATCH 14/16] Remove Date: Sun, 9 Mar 2025 15:52:42 +0000 Subject: [PATCH 15/16] Add comment in code explaining the fix --- .../structural_identifiability_extension.jl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl b/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl index 7ed68edc50..3b210ea69d 100644 --- a/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl +++ b/ext/CatalystStructuralIdentifiabilityExtension/structural_identifiability_extension.jl @@ -113,6 +113,8 @@ function SI.assess_identifiability(rs::ReactionSystem, args...; funcs_to_check = make_ftc(funcs_to_check, conseqs, vars) # Computes identifiability and converts it to a easy to read form. + # The `::ODESystem` designation fixes: https://github.com/SciML/StructuralIdentifiability.jl/issues/360, + # however, the exact mechanisms of this is still not fully clear. out = SI.assess_identifiability(osys::ODESystem, args...; measured_quantities, funcs_to_check, kwargs...) return make_output(out, funcs_to_check, consconsts) From 7d48e6cd8e98107dfaff2b097f451609b9fc69f5 Mon Sep 17 00:00:00 2001 From: Torkel Loman Date: Tue, 18 Mar 2025 19:25:17 +0000 Subject: [PATCH 16/16] test no longer broken --- test/reactionsystem_core/custom_crn_functions.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/reactionsystem_core/custom_crn_functions.jl b/test/reactionsystem_core/custom_crn_functions.jl index e5f2387761..6728439b71 100644 --- a/test/reactionsystem_core/custom_crn_functions.jl +++ b/test/reactionsystem_core/custom_crn_functions.jl @@ -49,7 +49,7 @@ let ps = rnd_ps(custom_function_network_1, rng; factor) t = rand(rng) @test f_eval(custom_function_network_1, u0, ps, t) ≈ f_eval(custom_function_network_2, u0, ps, t) - @test_broken jac_eval(custom_function_network_1, u0, ps, t) ≈ jac_eval(custom_function_network_2, u0, ps, t) # Weird error dur to some SciML update. Reported in https://github.com/SciML/ModelingToolkit.jl/issues/3447. + @test jac_eval(custom_function_network_1, u0, ps, t) ≈ jac_eval(custom_function_network_2, u0, ps, t) @test g_eval(custom_function_network_1, u0, ps, t) ≈ g_eval(custom_function_network_2, u0, ps, t) end end