Mercurial > repos > public > sbplib_julia
annotate test/Grids/multiblockgrids_test.jl @ 2020:7f7207b9bd6c feature/grids/multiblock_grids
Add constructor tests for 2d grids and using matrix for the grid collection
| author | Jonatan Werpers <jonatan@werpers.com> |
|---|---|
| date | Wed, 12 Mar 2025 10:48:58 +0100 |
| parents | fb2dc185c197 |
| children | d6618d628515 |
| rev | line source |
|---|---|
| 1912 | 1 using Diffinitive.Grids |
|
2020
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
2 using StaticArrays |
| 1912 | 3 |
|
2018
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
4 @testset "MultiBlockGrid" begin |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
5 @test MultiBlockGrid <: Grid |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
6 |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
7 @testset "Constructors" begin |
|
2020
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
8 # Vector |
|
2018
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
9 g₁ = equidistant_grid(0,1,5) |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
10 g₂ = equidistant_grid(0,1,5) |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
11 g₃ = equidistant_grid(0,1,5) |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
12 |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
13 C = connection.([ |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
14 (1, UpperBoundary(), 2, LowerBoundary()), |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
15 (2, UpperBoundary(), 3, LowerBoundary()), |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
16 ]) |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
17 |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
18 @test MultiBlockGrid([g₁,g₂,g₃], C) isa Grid{Float64,1} |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
19 @test MultiBlockGrid([g₁,g₂,g₃], C) isa MultiBlockGrid{Float64,1} |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
20 |
|
2020
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
21 |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
22 g₁₁ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
23 g₁₂ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
24 g₂₁ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
25 g₂₂ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
26 |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
27 C = map(((i1,d1,b1,i2,d2,b2),)->connection(i1,CartesianBoundary{d1,b1}(), i2, CartesianBoundary{d2,b2}()),[ |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
28 (1, 1, UpperBoundary, 2, 1, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
29 (3, 1, UpperBoundary, 4, 1, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
30 (1, 2, UpperBoundary, 3, 2, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
31 (2, 2, UpperBoundary, 4, 2, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
32 ]) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
33 |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
34 @test MultiBlockGrid([g₁₁, g₁₂, g₂₁, g₂₂], C) isa MultiBlockGrid{SVector{2,Float64},2} |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
35 |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
36 # Matrix |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
37 g₁₁ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
38 g₁₂ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
39 g₂₁ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
40 g₂₂ = equidistant_grid((0,0),(1,1),5,5) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
41 |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
42 C = map(((i1,d1,b1,i2,d2,b2),)->connection(CartesianIndex(i1),CartesianBoundary{d1,b1}(), CartesianIndex(i2), CartesianBoundary{d2,b2}()),[ |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
43 ((1,1), 1, UpperBoundary, (1,2), 1, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
44 ((2,1), 1, UpperBoundary, (2,2), 1, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
45 ((1,1), 2, UpperBoundary, (1,2), 2, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
46 ((2,1), 2, UpperBoundary, (2,2), 2, LowerBoundary), |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
47 ]) |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
48 |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
49 @test MultiBlockGrid([g₁₁ g₁₂; g₂₁ g₂₂], C) isa MultiBlockGrid{SVector{2,Float64},2} |
|
7f7207b9bd6c
Add constructor tests for 2d grids and using matrix for the grid collection
Jonatan Werpers <jonatan@werpers.com>
parents:
2019
diff
changeset
|
50 |
|
2018
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
51 # Dictionary |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
52 @test MultiBlockGrid(Dict(:a=>g₁, :b=>g₂), [connection(:a, UpperBoundary(), :b, LowerBoundary())]) isa MultiBlockGrid{Float64,1} |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
53 end |
|
2019
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
54 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
55 @testset "Base.getindex" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
56 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
57 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
58 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
59 @testset "boundary_identifiers" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
60 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
61 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
62 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
63 @testset "boundary_grid" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
64 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
65 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
66 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
67 @testset "min_spacing" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
68 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
69 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
70 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
71 @testset "refine" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
72 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
73 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
74 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
75 @testset "coarsen" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
76 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
77 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
78 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
79 @testset "boundary_indices" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
80 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
81 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
82 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
83 @testset "eval_on" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
84 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
85 end |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
86 |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
87 @testset "Base.map" begin |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
88 @test_broken false |
|
fb2dc185c197
Add stubs for functions and tests to be implemented
Jonatan Werpers <jonatan@werpers.com>
parents:
2018
diff
changeset
|
89 end |
|
2018
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
90 end |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
91 |
|
a3ffc3202813
Start implementation of MultiBlockGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
2017
diff
changeset
|
92 |
| 1912 | 93 @testset "MultiBlockBoundary" begin |
| 94 @test MultiBlockBoundary{1,UpperBoundary}() isa BoundaryIdentifier | |
| 95 | |
| 96 @test grid_id(MultiBlockBoundary{1,UpperBoundary}()) == 1 | |
| 97 | |
| 98 @test boundary_id(MultiBlockBoundary{1,UpperBoundary}()) == UpperBoundary() | |
| 99 end | |
|
2017
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
100 |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
101 @testset "connection" begin |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
102 @test connection(1, UpperBoundary(), 2, LowerBoundary()) == (MultiBlockBoundary{1,UpperBoundary}(), MultiBlockBoundary{2,LowerBoundary}()) |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
103 @test connection(:a, UpperBoundary(), :b, LowerBoundary()) == (MultiBlockBoundary{:a,UpperBoundary}(), MultiBlockBoundary{:b,LowerBoundary}()) |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
104 @test connection((1, UpperBoundary(), 2, LowerBoundary())) == (MultiBlockBoundary{1,UpperBoundary}(), MultiBlockBoundary{2,LowerBoundary}()) |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
105 |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
106 @test_throws Exception connection(1, UpperBoundary, 2, LowerBoundary()) |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
107 @test_throws Exception connection(1, UpperBoundary(), 2, LowerBoundary) |
|
ea2a15454cf2
Add connectio(...) to simplify the creation of grid connection tuples
Jonatan Werpers <jonatan@werpers.com>
parents:
1957
diff
changeset
|
108 end |
