|
46 | 46 | sys₂.μ => (log(2) / 600), sys₃.α₀ => 5e-4, sys₃.α => 0.5, sys₃.K => 40.0,
|
47 | 47 | sys₃.n => 2, sys₃.δ => (log(2) / 120), sys₃.β => (20 * log(2) / 120),
|
48 | 48 | sys₃.μ => (log(2) / 600)]
|
49 |
| - u₀ = [sys₁.m => 0.0, sys₁.P => 20.0, sys₁.R => 0.0, sys₂.m => 0.0, sys₂.P => 0.0, |
50 |
| - sys₂.R => 0.0, sys₃.m => 0.0, sys₃.P => 0.0, sys₃.R => 0.0] |
| 49 | + u₀ = [sys₁.m => 0.0, sys₁.P => 20.0, sys₂.m => 0.0, sys₂.P => 0.0, |
| 50 | + sys₃.m => 0.0, sys₃.P => 0.0] |
51 | 51 | tspan = (0.0, 100000.0)
|
52 | 52 | oprob = ODEProblem(oderepressilator, u₀, tspan, pvals)
|
53 | 53 | sol = solve(oprob, Tsit5())
|
|
94 | 94 | @test all(isapprox.(sol(tvs, idxs = sys₁.P), sol2(tvs, idxs = 4), atol = 1e-4))
|
95 | 95 |
|
96 | 96 | # Test conversion to nonlinear system.
|
| 97 | + u₀_nl = [sys₁.m => 0.0, sys₁.P => 20.0, sys₁.R => 0.0, sys₂.m => 0.0, sys₂.P => 0.0, |
| 98 | + sys₂.R => 0.0, sys₃.m => 0.0, sys₃.P => 0.0, sys₃.R => 0.0] |
97 | 99 | @named nsys = NonlinearSystem(connections, [], [])
|
98 | 100 | @named ssrepressilator = ReactionSystem(t; systems = [nsys, sys₁, sys₂, sys₃])
|
99 | 101 | ssrepressilator = complete(ssrepressilator)
|
100 | 102 | @named nlrepressilator = convert(NonlinearSystem, ssrepressilator, include_zero_odes = false)
|
101 | 103 | sys2 = structural_simplify(nlrepressilator)
|
102 | 104 | @test length(equations(sys2)) <= 6
|
103 |
| - nlprob = NonlinearProblem(sys2, u₀, pvals) |
| 105 | + nlprob = NonlinearProblem(sys2, u₀_nl, pvals) |
104 | 106 | sol = solve(nlprob, NLSolveJL(), abstol = 1e-9)
|
105 | 107 | @test sol[sys₁.P] ≈ sol[sys₂.P] ≈ sol[sys₃.P]
|
106 | 108 | @test sol[sys₁.m] ≈ sol[sys₂.m] atol=1e-7
|
|
113 | 115 | @named nlrepressilator = convert(NonlinearSystem, fsys, include_zero_odes = false)
|
114 | 116 | sys2 = structural_simplify(nlrepressilator)
|
115 | 117 | @test length(equations(sys2)) <= 6
|
116 |
| - nlprob = NonlinearProblem(sys2, u₀, pvals) |
| 118 | + nlprob = NonlinearProblem(sys2, u₀_nl, pvals) |
117 | 119 | sol = solve(nlprob, NLSolveJL(), abstol = 1e-9)
|
118 | 120 | @test sol[sys₁.P] ≈ sol[sys₂.P] ≈ sol[sys₃.P]
|
119 | 121 | @test sol[sys₁.m] ≈ sol[sys₂.m] atol=1e-7
|
|
131 | 133 | @named nlrepressilator = convert(NonlinearSystem, repressilator2, include_zero_odes = false)
|
132 | 134 | sys2 = structural_simplify(nlrepressilator)
|
133 | 135 | @test length(equations(sys2)) <= 6
|
134 |
| - nlprob = NonlinearProblem(sys2, u₀, pvals) |
| 136 | + nlprob = NonlinearProblem(sys2, u₀_nl, pvals) |
135 | 137 | sol = solve(nlprob, NLSolveJL(), abstol = 1e-9)
|
136 | 138 | @test sol[sys₁.P] ≈ sol[sys₂.P] ≈ sol[sys₃.P]
|
137 | 139 | @test sol[sys₁.m] ≈ sol[sys₂.m] atol=1e-7
|
|
252 | 254 | @named nlrepressilator = convert(NonlinearSystem, repressilator2, include_zero_odes = false)
|
253 | 255 | sys2 = structural_simplify(nlrepressilator)
|
254 | 256 | @test length(equations(sys2)) <= 6
|
255 |
| - nlprob = NonlinearProblem(sys2, u₀, pvals) |
| 257 | + nlprob = NonlinearProblem(sys2, u₀_nl, pvals) |
256 | 258 | sol = solve(nlprob, NLSolveJL(), abstol = 1e-9)
|
257 | 259 | @test sol[sys₁.P] ≈ sol[sys₂.P] ≈ sol[sys₃.P]
|
258 | 260 | @test sol[sys₁.m] ≈ sol[sys₂.m] atol=1e-7
|
|
0 commit comments