Skip to content

Commit

Permalink
test printing of some semidiscretisations
Browse files Browse the repository at this point in the history
  • Loading branch information
ranocha committed Mar 13, 2020
1 parent 7661426 commit 107dc95
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 2 deletions.
6 changes: 5 additions & 1 deletion test/conservation_laws/burgers_test.jl
Expand Up @@ -6,11 +6,12 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
N = 2^6
u0func = sinpi
tspan = (zero(T), one(T))

# Fourier
let D = fourier_derivative_operator(xmin, xmax, N)
Di = dissipation_operator(TadmorWaagan2012Standard(), D)
semidisc = BurgersPeriodicSemidiscretisation(D, Di, split_form)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -21,6 +22,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
D = periodic_derivative_operator(1, acc_order, xmin, xmax, N)
Di = dissipation_operator(D)
semidisc = BurgersPeriodicSemidiscretisation(D, Di, split_form)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -30,6 +32,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
let D = legendre_derivative_operator(xmin, xmax, N)
Di = nothing
semidisc = BurgersNonperiodicSemidiscretisation(D, Di, split_form, zero, zero)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -40,6 +43,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
D = derivative_operator(MattssonSvärdNordström2004(), 1, acc_order, xmin, xmax, N)
Di = dissipation_operator(D)
semidisc = BurgersNonperiodicSemidiscretisation(D, Di, split_form, zero, zero)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand Down
4 changes: 4 additions & 0 deletions test/conservation_laws/cubic_test.jl
Expand Up @@ -12,6 +12,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
let D = fourier_derivative_operator(xmin, xmax, N)
Di = dissipation_operator(TadmorWaagan2012Standard(), D)
semidisc = CubicPeriodicSemidiscretisation(D, Di, split_form)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -25,6 +26,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
D = periodic_derivative_operator(1, acc_order, xmin, xmax, N)
Di = dissipation_operator(D)
semidisc = CubicPeriodicSemidiscretisation(D, Di, split_form)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -37,6 +39,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
let D = legendre_derivative_operator(xmin, xmax, N)
Di = nothing
semidisc = CubicNonperiodicSemidiscretisation(D, Di, split_form, zero, zero)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -50,6 +53,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
D = derivative_operator(MattssonSvärdNordström2004(), 1, acc_order, xmin, xmax, N)
Di = dissipation_operator(D)
semidisc = CubicNonperiodicSemidiscretisation(D, Di, split_form, zero, zero)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand Down
2 changes: 2 additions & 0 deletions test/conservation_laws/quartic_nonconvex_test.jl
Expand Up @@ -12,6 +12,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
let D = fourier_derivative_operator(xmin, xmax, N)
Di = dissipation_operator(TadmorWaagan2012Standard(), D)
semidisc = CubicPeriodicSemidiscretisation(D, Di, split_form)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -25,6 +26,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
D = periodic_derivative_operator(1, acc_order, xmin, xmax, N)
Di = dissipation_operator(D)
semidisc = CubicPeriodicSemidiscretisation(D, Di, split_form)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand Down
4 changes: 3 additions & 1 deletion test/conservation_laws/variable_linear_advection_test.jl
Expand Up @@ -7,11 +7,12 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
u0func = sinpi
tspan = (zero(T), one(T))
afunc = one

# Legendre
let D = legendre_derivative_operator(xmin, xmax, N)
Di = nothing
semidisc = VariableLinearAdvectionNonperiodicSemidiscretisation(D, Di, afunc, split_form, zero, zero)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand All @@ -22,6 +23,7 @@ for T in (Float32, Float64), split_form in (Val{true}(), Val{false}())
D = derivative_operator(MattssonSvärdNordström2004(), 1, acc_order, xmin, xmax, N)
Di = dissipation_operator(D)
semidisc = VariableLinearAdvectionNonperiodicSemidiscretisation(D, Di, afunc, split_form, zero, zero)
println(semidisc, devnull)
ode = semidiscretise(u0func, semidisc, tspan)
du = similar(ode.u0)
semidisc(du, ode.u0, nothing, first(tspan))
Expand Down

0 comments on commit 107dc95

Please sign in to comment.