Mercurial > repos > public > sbplib_julia
comparison test/Grids/multiblockgrids_test.jl @ 2026:1b6f150d95c5 feature/grids/multiblock_grids
Implement min_spacing, coarsen, refine
| author | Jonatan Werpers <jonatan@werpers.com> |
|---|---|
| date | Thu, 10 Apr 2025 16:20:22 +0200 |
| parents | 3fb33f00dab2 |
| children | 0f27ddff6f92 |
comparison
equal
deleted
inserted
replaced
| 2025:d35a4cb170ff | 2026:1b6f150d95c5 |
|---|---|
| 16 end | 16 end |
| 17 | 17 |
| 18 function multiblockgrid2d() | 18 function multiblockgrid2d() |
| 19 g₁₁ = equidistant_grid((0,0),(1,1),5,5) | 19 g₁₁ = equidistant_grid((0,0),(1,1),5,5) |
| 20 g₁₂ = equidistant_grid((0,0),(1,1),5,5) | 20 g₁₂ = equidistant_grid((0,0),(1,1),5,5) |
| 21 g₂₁ = equidistant_grid((0,0),(1,1),5,5) | 21 g₂₁ = equidistant_grid((0,0),(1,1),11,11) |
| 22 g₂₂ = equidistant_grid((0,0),(1,1),5,5) | 22 g₂₂ = equidistant_grid((0,0),(1,1),5,5) |
| 23 | 23 |
| 24 C = map(((i1,d1,b1,i2,d2,b2),)->connection(i1,CartesianBoundary{d1,b1}(), i2, CartesianBoundary{d2,b2}()),[ | 24 C = map(((i1,d1,b1,i2,d2,b2),)->connection(i1,CartesianBoundary{d1,b1}(), i2, CartesianBoundary{d2,b2}()),[ |
| 25 (1, 1, UpperBoundary, 2, 1, LowerBoundary), | 25 (1, 1, UpperBoundary, 2, 1, LowerBoundary), |
| 26 (3, 1, UpperBoundary, 4, 1, LowerBoundary), | 26 (3, 1, UpperBoundary, 4, 1, LowerBoundary), |
| 32 end | 32 end |
| 33 | 33 |
| 34 function multiblockgrid_matrix() | 34 function multiblockgrid_matrix() |
| 35 g₁₁ = equidistant_grid((0,0),(1,1),5,5) | 35 g₁₁ = equidistant_grid((0,0),(1,1),5,5) |
| 36 g₁₂ = equidistant_grid((0,0),(1,1),5,5) | 36 g₁₂ = equidistant_grid((0,0),(1,1),5,5) |
| 37 g₂₁ = equidistant_grid((0,0),(1,1),5,5) | 37 g₂₁ = equidistant_grid((0,0),(1,1),11,11) |
| 38 g₂₂ = equidistant_grid((0,0),(1,1),5,5) | 38 g₂₂ = equidistant_grid((0,0),(1,1),5,5) |
| 39 | 39 |
| 40 C = map(((i1,d1,b1,i2,d2,b2),)->connection(CartesianIndex(i1),CartesianBoundary{d1,b1}(), CartesianIndex(i2), CartesianBoundary{d2,b2}()),[ | 40 C = map(((i1,d1,b1,i2,d2,b2),)->connection(CartesianIndex(i1),CartesianBoundary{d1,b1}(), CartesianIndex(i2), CartesianBoundary{d2,b2}()),[ |
| 41 ((1,1), 1, UpperBoundary, (1,2), 1, LowerBoundary), | 41 ((1,1), 1, UpperBoundary, (1,2), 1, LowerBoundary), |
| 42 ((2,1), 1, UpperBoundary, (2,2), 1, LowerBoundary), | 42 ((2,1), 1, UpperBoundary, (2,2), 1, LowerBoundary), |
| 122 @testset "boundary_grid" begin | 122 @testset "boundary_grid" begin |
| 123 @test_broken false | 123 @test_broken false |
| 124 end | 124 end |
| 125 | 125 |
| 126 @testset "min_spacing" begin | 126 @testset "min_spacing" begin |
| 127 @test_broken false | 127 gs, cs = multiblockgrid2d() |
| 128 @test min_spacing(MultiBlockGrid(gs,cs)) isa Float64 | |
| 129 @test min_spacing(MultiBlockGrid(gs,cs)) == 0.1 | |
| 128 end | 130 end |
| 129 | 131 |
| 130 @testset "refine" begin | 132 @testset "refine" begin |
| 131 @test_broken false | 133 gs, cs = multiblockgrid2d() |
| 134 @test refine(MultiBlockGrid(gs,cs),2) isa MultiBlockGrid | |
| 135 | |
| 136 rg = refine(MultiBlockGrid(gs,cs),2) | |
| 137 @test connections(rg) == cs | |
| 138 @test grids(rg) == [ | |
| 139 equidistant_grid((0,0),(1,1),9,9), | |
| 140 equidistant_grid((0,0),(1,1),9,9), | |
| 141 equidistant_grid((0,0),(1,1),21,21), | |
| 142 equidistant_grid((0,0),(1,1),9,9), | |
| 143 ] | |
| 132 end | 144 end |
| 133 | 145 |
| 134 @testset "coarsen" begin | 146 @testset "coarsen" begin |
| 135 @test_broken false | 147 gs, cs = multiblockgrid2d() |
| 148 @test coarsen(MultiBlockGrid(gs,cs),2) isa MultiBlockGrid | |
| 149 | |
| 150 cg = coarsen(MultiBlockGrid(gs,cs),2) | |
| 151 @test connections(cg) == cs | |
| 152 @test grids(cg) == [ | |
| 153 equidistant_grid((0,0),(1,1),3,3), | |
| 154 equidistant_grid((0,0),(1,1),3,3), | |
| 155 equidistant_grid((0,0),(1,1),6,6), | |
| 156 equidistant_grid((0,0),(1,1),3,3), | |
| 157 ] | |
| 136 end | 158 end |
| 137 | 159 |
| 138 @testset "boundary_indices" begin | 160 @testset "boundary_indices" begin |
| 139 @test_broken false | 161 @test_broken false |
| 140 end | 162 end |
