Mercurial > repos > public > sbplib_julia
annotate SbpOperators/test/runtests.jl @ 300:b00eea62c78e
Create 1D tensor mapping for diagonal norm quadratures, and make the multi-dimensional quadrature use those. Move Qudrature from laplace.jl into Quadrature.jl
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Tue, 23 Jun 2020 17:32:54 +0200 |
parents | 4ca3794fffef |
children | accb0876da12 |
rev | line source |
---|---|
219
69a6049e14d9
Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 using SbpOperators |
69a6049e14d9
Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 using Test |
69a6049e14d9
Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 |
254
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
4 @testset "apply_quadrature" begin |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
5 op = readOperator(sbp_operators_path()*"d2_4th.txt",sbp_operators_path()*"h_4th.txt") |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
6 h = 0.5 |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
7 |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
8 @test apply_quadrature(op, h, 1.0, 10, 100) == h |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
9 |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
10 N = 10 |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
11 qc = op.quadratureClosure |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
12 q = h.*(qc..., ones(N-2*closuresize(op))..., reverse(qc)...) |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
13 @assert length(q) == N |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
14 |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
15 for i ∈ 1:N |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
16 @test apply_quadrature(op, h, 1.0, i, N) == q[i] |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
17 end |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
18 |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
19 v = [2.,3.,2.,4.,5.,4.,3.,4.,5.,4.5] |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
20 for i ∈ 1:N |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
21 @test apply_quadrature(op, h, v[i], i, N) == q[i]*v[i] |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
22 end |
4ca3794fffef
Add apply_quadrature to SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents:
219
diff
changeset
|
23 end |