Mercurial > repos > public > sbplib_julia
comparison test/testSbpOperators.jl @ 622:f799678357df feature/volume_and_boundary_operators
Move comment
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Wed, 16 Dec 2020 16:47:17 +0100 |
parents | 60d7c1752cfa |
children | 316dbfd31d35 |
comparison
equal
deleted
inserted
replaced
621:60d7c1752cfa | 622:f799678357df |
---|---|
151 Dₓₓ isa TensorMapping{2,2} | 151 Dₓₓ isa TensorMapping{2,2} |
152 end | 152 end |
153 end | 153 end |
154 | 154 |
155 @testset "Accuracy" begin | 155 @testset "Accuracy" begin |
156 | |
157 @testset "1D" begin | 156 @testset "1D" begin |
158 v0 = evalOn(g_1D,x->0.) | 157 v0 = evalOn(g_1D,x->0.) |
159 monomials = () | 158 monomials = () |
160 maxOrder = 4; | 159 maxOrder = 4; |
161 for i = 0:maxOrder-1 | 160 for i = 0:maxOrder-1 |
187 @test Dₓₓ*monomials[4] ≈ monomials[2] atol = 5e-10 | 186 @test Dₓₓ*monomials[4] ≈ monomials[2] atol = 5e-10 |
188 @test Dₓₓ*evalOn(g_1D,x -> sin(x)) ≈ evalOn(g_1D,x -> -sin(x)) rtol = 5e-4 norm = l2 | 187 @test Dₓₓ*evalOn(g_1D,x -> sin(x)) ≈ evalOn(g_1D,x -> -sin(x)) rtol = 5e-4 norm = l2 |
189 end | 188 end |
190 end | 189 end |
191 | 190 |
192 #TODO: Error when reading second order stencil! | |
193 @testset "2D" begin | 191 @testset "2D" begin |
194 binomials = () | 192 binomials = () |
195 maxOrder = 4; | 193 maxOrder = 4; |
196 for i = 0:maxOrder-1 | 194 for i = 0:maxOrder-1 |
197 f_i(x,y) = 1/factorial(i)*y^i + x^i | 195 f_i(x,y) = 1/factorial(i)*y^i + x^i |
198 binomials = (binomials...,evalOn(g_2D,f_i)) | 196 binomials = (binomials...,evalOn(g_2D,f_i)) |
199 end | 197 end |
200 l2(v) = sqrt(prod(spacing(g_2D))*sum(v.^2)); | 198 l2(v) = sqrt(prod(spacing(g_2D))*sum(v.^2)); |
199 | |
200 #TODO: Error when reading second order stencil! | |
201 # @testset "2nd order" begin | 201 # @testset "2nd order" begin |
202 # op = read_D2_operator(sbp_operators_path()*"standard_diagonal.toml"; order=2) | 202 # op = read_D2_operator(sbp_operators_path()*"standard_diagonal.toml"; order=2) |
203 # Dyy = SecondDerivative(g_2D,op.innerStencil,op.closureStencils,2) | 203 # Dyy = SecondDerivative(g_2D,op.innerStencil,op.closureStencils,2) |
204 # @test Dyy*binomials[1] ≈ evalOn(g_2D,(x,y)->0.) atol = 5e-12 | 204 # @test Dyy*binomials[1] ≈ evalOn(g_2D,(x,y)->0.) atol = 5e-12 |
205 # @test Dyy*binomials[2] ≈ evalOn(g_2D,(x,y)->0.) atol = 5e-12 | 205 # @test Dyy*binomials[2] ≈ evalOn(g_2D,(x,y)->0.) atol = 5e-12 |