annotate test/SimpleTimeSteppers/SimpleTimeSteppers_test.jl @ 862:a382942e5437 feature/subpackage_simple_timesteppers

Add a few simple timesteppers
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 18 Jan 2022 15:29:54 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
862
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 using Test
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 using Sbplib.SimpleTimeSteppers
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 @testset "rk4" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 ode_solutions = @NamedTuple{F,v}.([
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 ((v,t) -> 0., (v₀,t₀,t) -> v₀),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 ((v,t) -> 1., (v₀,t₀,t) -> v₀+t-t₀),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 ((v,t) -> t, (v₀,t₀,t) -> v₀+(t^2-t₀^2)/2),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 ((v,t) -> v, (v₀,t₀,t) -> v₀*exp(t-t₀)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 ((v,t) -> t*v, (v₀,t₀,t) -> v₀*exp((t^2-t₀^2)/2)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 ])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 @testset "Exact" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15 @testset for i ∈ eachindex(ode_solutions[1:3])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 F, v = ode_solutions[i]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 cases = @NamedTuple{v₀,t₀}.([
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
18 (0.,0.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
19 (0.,1.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
20 (1.,0.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
21 (1.,1.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
22 (2.,0.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
23 (0.,2.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
24 (2.,2.),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
25 ])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
26
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
27 @testset for (v₀,t₀) ∈ cases
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
28 @testset for Δt ∈ [0., 1., .5, 2.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
29 @test rk4(F, v₀, t₀, Δt) == v(v₀, t₀, t₀+Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
30 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
31 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
32 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
33 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
34
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
35 @testset "Approximate" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
36 @testset for i ∈ eachindex(ode_solutions)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
37 F, v = ode_solutions[i]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
38
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
39 @testset for v₀ ∈ [1., .5] ,t₀ ∈ [0., 1.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
40 Δt = 0.1
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
41 @test rk4(F, v₀, t₀, Δt) ≈ v(v₀, t₀, t₀+Δt) rtol=1e-6
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
42 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
43 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
44 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
45 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
46
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
47 @testset "rkn4" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
48
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
49 function damped_oscillator(v₀, v̇₀,t₀,t; ζ)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
50 ω = sqrt(1-ζ^2)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
51
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
52 C = v̇₀ + ζ*v₀
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
53
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
54 V = v₀*cos(ω*(t-t₀)) + C*sin(ω*(t-t₀))
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
55 V̇ = C*cos(ω*(t-t₀)) - v₀*sin(ω*(t-t₀))
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
56 v = exp(-ζ*(t-t₀))*V
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
57 v̇ = -ζ*exp(-ζ*(t-t₀))*V + exp(-ζ*(t-t₀))*V̇
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
58 return v, v̇
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
59 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
60
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
61 ode_solutions = @NamedTuple{F,vv̇}.([
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
62 ((v,v̇,t) -> 0., (v₀,v̇₀,t₀,t) -> (v₀ + (t-t₀)*v̇₀, v̇₀)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
63 ((v,v̇,t) -> 1., (v₀,v̇₀,t₀,t) -> (v₀ + (t-t₀)*v̇₀ + (t-t₀)^2/2, v̇₀ + t - t₀)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
64 ((v,v̇,t) -> t, (v₀,v̇₀,t₀,t) -> (v₀ + (t-t₀)*v̇₀ + (t-t₀)^3/6+ t₀/2*(t-t₀)^2, v̇₀ + (t^2-t₀^2)/2)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
65 ((v,v̇,t) -> -v, (v₀,v̇₀,t₀,t) -> (v₀*cos(t-t₀) + v̇₀*sin(t-t₀), v̇₀*cos(t-t₀) - v₀*sin(t-t₀))),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
66 ((v,v̇,t) -> -v-6/5*v̇, (v₀,v̇₀,t₀,t) -> damped_oscillator(v₀,v̇₀,t₀,t; ζ=3/5)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
67 ])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
68
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
69 @testset "Exact" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
70 @testset for i ∈ eachindex(ode_solutions[1:3])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
71 F, vv̇ = ode_solutions[i]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
72 @testset for v₀ ∈ [0., 1., 2.], v̇₀ ∈ [0., 1.], t₀ ∈ [0.,1.,2.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
73 @testset for Δt ∈ [0., 1., .5, 2.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
74 V,V̇ = rkn4(F, v₀, v̇₀, t₀, Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
75 v,v̇ = vv̇(v₀, v̇₀, t₀, t₀+Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
76 @test V ≈ v rtol=1e-15
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
77 @test V̇ ≈ v̇ rtol=1e-15
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
78 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
79 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
80 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
81 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
82
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
83 @testset "Approximate" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
84 @testset for i ∈ eachindex(ode_solutions)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
85 F, vv̇ = ode_solutions[i]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
86 @testset for v̇₀ ∈ [0., 0.5], v₀ ∈ [1., 0.5], t₀∈[0.,1.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
87 Δt = 0.1
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
88 V,V̇ = rkn4(F, v₀, v̇₀, t₀, Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
89 v,v̇ = vv̇(v₀, v̇₀, t₀, t₀+Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
90
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
91 if i != 5
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
92 @test V ≈ v rtol=1e-6
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
93 @test V̇ ≈ v̇ rtol=1e-6
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
94 else
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
95 # TODO: Is this a bug or reasonable?
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
96 @test_broken V ≈ v rtol=1e-6
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
97 @test_broken V̇ ≈ v̇ rtol=1e-6
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
98 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
99 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
100 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
101 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
102 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
103
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
104 @testset "cdiff" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
105 ode_solutions = @NamedTuple{F,vv̇}.([
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
106 ((v,t) -> 0., (v₀,v̇₀,t₀,t) -> v₀ + (t-t₀)*v̇₀),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
107 ((v,t) -> 1., (v₀,v̇₀,t₀,t) -> v₀ + (t-t₀)*v̇₀ + (t-t₀)^2/2),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
108 ((v,t) -> t, (v₀,v̇₀,t₀,t) -> v₀ + (t-t₀)*v̇₀ + (t-t₀)^3/6+ t₀/2*(t-t₀)^2),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
109 ((v,t) -> -v, (v₀,v̇₀,t₀,t) -> v₀*cos(t-t₀) + v̇₀*sin(t-t₀)),
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
110 ])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
111
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
112 @testset "Exact" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
113 @testset for i ∈ eachindex(ode_solutions[1:3])
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
114 F, v = ode_solutions[i]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
115 @testset for v₀ ∈ [1., 2.], v̇₀ ∈ [0., 1.], t₀ ∈ [0.,1.,2.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
116 @testset for Δt ∈ [0., 1., .5]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
117 v₋₁ = v(v₀, v̇₀, t₀, t₀-Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
118 v₁ = v(v₀, v̇₀, t₀, t₀+Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
119
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
120 V₁, V₀ = centered_2nd_order_fd(F, v₀, v₋₁, t₀, Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
121
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
122 @test V₁ ≈ v₁ rtol=1e-15
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
123 @test V₀ ≈ v₀ rtol=1e-15
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
124 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
125 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
126 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
127 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
128
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
129 @testset "Approximate" begin
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
130 @testset for i ∈ eachindex(ode_solutions)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
131 F, v = ode_solutions[i]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
132 @testset for v̇₀ ∈ [0., 0.5], v₀ ∈ [1., 0.5], t₀ ∈ [0.,1.]
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
133 Δt = 0.1
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
134 v₋₁ = v(v₀, v̇₀, t₀, t₀-Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
135 v₁ = v(v₀, v̇₀, t₀, t₀+Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
136
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
137 V₁, V₀ = centered_2nd_order_fd(F, v₀, v₋₁, t₀, Δt)
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
138
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
139
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
140 @test V₁ ≈ v₁ rtol=1e-5
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
141 @test V₀ ≈ v₀ rtol=1e-5
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
142 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
143 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
144 end
a382942e5437 Add a few simple timesteppers
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
145 end