Mercurial > repos > public > sbplib_julia
annotate test/Grids/equidistant_grid_test.jl @ 1829:871f3f1decea refactor/grids/iterable_boundary_indices
Merge default
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Sun, 20 Oct 2024 21:38:09 +0200 |
parents | 98ae79eb0709 471a948cd2b2 |
children | edee7d677efb f93ba5832146 |
rev | line source |
---|---|
1726
471a948cd2b2
Rename project from Sbplib to Diffinitive
Vidar Stiernström <vidar.stiernstrom@gmail.com>
parents:
1713
diff
changeset
|
1 using Diffinitive.Grids |
213
0bf761485f40
Add test stub to package Grids
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
2 using Test |
1726
471a948cd2b2
Rename project from Sbplib to Diffinitive
Vidar Stiernström <vidar.stiernstrom@gmail.com>
parents:
1713
diff
changeset
|
3 using Diffinitive.LazyTensors |
213
0bf761485f40
Add test stub to package Grids
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
4 |
338
2b0c9b30ea3b
Add test sets for each submodule to make the test output nicer
Jonatan Werpers <jonatan@werpers.com>
parents:
335
diff
changeset
|
5 |
324
047dee8efaef
Grids.EquidistantGrid: Add constructor for 1d grid
Jonatan Werpers <jonatan@werpers.com>
parents:
217
diff
changeset
|
6 @testset "EquidistantGrid" begin |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
7 @test EquidistantGrid(0:0.1:10) isa EquidistantGrid |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
8 @test EquidistantGrid(range(0,1,length=10)) isa EquidistantGrid |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
9 @test EquidistantGrid(LinRange(0,1,11)) isa EquidistantGrid |
353
8257cc75ea6b
Add doc string and allow picking several dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
352
diff
changeset
|
10 |
1259
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
11 @testset "Indexing Interface" begin |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
12 g = EquidistantGrid(0:0.1:10) |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
13 @test g[1] == 0.0 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
14 @test g[5] == 0.4 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
15 @test g[101] == 10.0 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
16 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
17 @test g[begin] == 0.0 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
18 @test g[end] == 10.0 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
19 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
20 @test all(eachindex(g) .== 1:101) |
1398
447833be2ecc
Add tests for first and last index of equidistant grid
Jonatan Werpers <jonatan@werpers.com>
parents:
1365
diff
changeset
|
21 |
447833be2ecc
Add tests for first and last index of equidistant grid
Jonatan Werpers <jonatan@werpers.com>
parents:
1365
diff
changeset
|
22 @test firstindex(g) == 1 |
447833be2ecc
Add tests for first and last index of equidistant grid
Jonatan Werpers <jonatan@werpers.com>
parents:
1365
diff
changeset
|
23 @test lastindex(g) == 101 |
1259
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
24 end |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
25 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
26 @testset "Iterator interface" begin |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
27 @test eltype(EquidistantGrid(0:10)) == Int |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
28 @test eltype(EquidistantGrid(0:2:10)) == Int |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
29 @test eltype(EquidistantGrid(0:0.1:10)) == Float64 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
30 @test size(EquidistantGrid(0:10)) == (11,) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
31 @test size(EquidistantGrid(0:0.1:10)) == (101,) |
1259
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
32 |
1437
e3a80ef08d09
Implement size(g,d) for EquidistantGrid and TensorGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1414
diff
changeset
|
33 @test size(EquidistantGrid(0:0.1:10),1) == 101 |
e3a80ef08d09
Implement size(g,d) for EquidistantGrid and TensorGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1414
diff
changeset
|
34 |
1259
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
35 @test collect(EquidistantGrid(0:0.1:0.5)) == [0.0, 0.1, 0.2, 0.3, 0.4, 0.5] |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
36 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
37 @test Base.IteratorSize(EquidistantGrid{Float64, StepRange{Float64}}) == Base.HasShape{1}() |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
38 end |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
39 |
ee57bdb366e4
Reorganize some EquidistantGrid tests and add test for IteratorSize and eachindex
Jonatan Werpers <jonatan@werpers.com>
parents:
1255
diff
changeset
|
40 @testset "Base" begin |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
41 @test ndims(EquidistantGrid(0:10)) == 1 |
1414
1aa8adbf13d5
Move tests for axes out of indexing interface testset
Jonatan Werpers <jonatan@werpers.com>
parents:
1413
diff
changeset
|
42 |
1aa8adbf13d5
Move tests for axes out of indexing interface testset
Jonatan Werpers <jonatan@werpers.com>
parents:
1413
diff
changeset
|
43 g = EquidistantGrid(0:0.1:10) |
1aa8adbf13d5
Move tests for axes out of indexing interface testset
Jonatan Werpers <jonatan@werpers.com>
parents:
1413
diff
changeset
|
44 @test axes(g,1) == 1:101 |
1aa8adbf13d5
Move tests for axes out of indexing interface testset
Jonatan Werpers <jonatan@werpers.com>
parents:
1413
diff
changeset
|
45 @test axes(g) == (1:101,) |
688
e9e46a587370
Add eltype function to EquidistantGrids
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
686
diff
changeset
|
46 end |
405
16dc5b19843d
Fix exception handling in constructor of EquidistantGrid and add a bunch of tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
358
diff
changeset
|
47 |
1125
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
48 @testset "spacing" begin |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
49 @test spacing(EquidistantGrid(0:10)) == 1 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
50 @test spacing(EquidistantGrid(0:0.1:10)) == 0.1 |
1125
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
51 end |
405
16dc5b19843d
Fix exception handling in constructor of EquidistantGrid and add a bunch of tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
358
diff
changeset
|
52 |
1125
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
53 @testset "inverse_spacing" begin |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
54 @test inverse_spacing(EquidistantGrid(0:10)) == 1 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
55 @test inverse_spacing(EquidistantGrid(0:0.1:10)) == 10 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
56 end |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
57 |
1646
5f348cc5598e
Add min_spacing function for grids
Jonatan Werpers <jonatan@werpers.com>
parents:
1602
diff
changeset
|
58 @testset "min_spacing" begin |
5f348cc5598e
Add min_spacing function for grids
Jonatan Werpers <jonatan@werpers.com>
parents:
1602
diff
changeset
|
59 @test min_spacing(EquidistantGrid(0:10)) == 1 |
5f348cc5598e
Add min_spacing function for grids
Jonatan Werpers <jonatan@werpers.com>
parents:
1602
diff
changeset
|
60 @test min_spacing(EquidistantGrid(0:0.1:10)) == 0.1 |
5f348cc5598e
Add min_spacing function for grids
Jonatan Werpers <jonatan@werpers.com>
parents:
1602
diff
changeset
|
61 end |
5f348cc5598e
Add min_spacing function for grids
Jonatan Werpers <jonatan@werpers.com>
parents:
1602
diff
changeset
|
62 |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
63 @testset "boundary_identifiers" begin |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
64 g = EquidistantGrid(0:0.1:10) |
1672
3714a391545a
Make the boundary identifiers for EquidistantGrid subtype BoundaryIdentifer
Vidar Stiernström <vidar.stiernstrom@gmail.com>
parents:
1646
diff
changeset
|
65 @test boundary_identifiers(g) == (LowerBoundary(), UpperBoundary()) |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
66 @inferred boundary_identifiers(g) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
67 end |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
68 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
69 @testset "boundary_grid" begin |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
70 g = EquidistantGrid(0:0.1:1) |
1672
3714a391545a
Make the boundary identifiers for EquidistantGrid subtype BoundaryIdentifer
Vidar Stiernström <vidar.stiernstrom@gmail.com>
parents:
1646
diff
changeset
|
71 @test boundary_grid(g, LowerBoundary()) == ZeroDimGrid(0.0) |
3714a391545a
Make the boundary identifiers for EquidistantGrid subtype BoundaryIdentifer
Vidar Stiernström <vidar.stiernstrom@gmail.com>
parents:
1646
diff
changeset
|
72 @test boundary_grid(g, UpperBoundary()) == ZeroDimGrid(1.0) |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
73 end |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
74 |
1462
05eb8ba149e2
Implement boundary_indices for EquidistantGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1437
diff
changeset
|
75 @testset "boundary_indices" begin |
05eb8ba149e2
Implement boundary_indices for EquidistantGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1437
diff
changeset
|
76 g = EquidistantGrid(0:0.1:1) |
1829 | 77 @test boundary_indices(g, LowerBoundary()) == 1 |
78 @test boundary_indices(g, UpperBoundary()) == 11 | |
1824 | 79 |
1825 | 80 gf = collect(g) |
1829 | 81 @test gf[boundary_indices(g, LowerBoundary())] == gf[1] |
82 @test gf[boundary_indices(g, UpperBoundary())] == gf[11] | |
1462
05eb8ba149e2
Implement boundary_indices for EquidistantGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1437
diff
changeset
|
83 |
05eb8ba149e2
Implement boundary_indices for EquidistantGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1437
diff
changeset
|
84 g = EquidistantGrid(2:0.1:10) |
1829 | 85 @test boundary_indices(g, LowerBoundary()) == 1 |
86 @test boundary_indices(g, UpperBoundary()) == 81 | |
1462
05eb8ba149e2
Implement boundary_indices for EquidistantGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1437
diff
changeset
|
87 end |
05eb8ba149e2
Implement boundary_indices for EquidistantGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1437
diff
changeset
|
88 |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
89 @testset "refine" begin |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
90 g = EquidistantGrid(0:0.1:1) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
91 @test refine(g, 1) == g |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
92 @test refine(g, 2) == EquidistantGrid(0:0.05:1) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
93 @test refine(g, 3) == EquidistantGrid(0:(0.1/3):1) |
405
16dc5b19843d
Fix exception handling in constructor of EquidistantGrid and add a bunch of tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
358
diff
changeset
|
94 end |
16dc5b19843d
Fix exception handling in constructor of EquidistantGrid and add a bunch of tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
358
diff
changeset
|
95 |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
96 @testset "coarsen" begin |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
97 g = EquidistantGrid(0:1:10) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
98 @test coarsen(g, 1) == g |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
99 @test coarsen(g, 2) == EquidistantGrid(0:2:10) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
100 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
101 g = EquidistantGrid(0:0.1:1) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
102 @test coarsen(g, 1) == g |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
103 @test coarsen(g, 2) == EquidistantGrid(0:0.2:1) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
104 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
105 g = EquidistantGrid(0:10) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
106 @test coarsen(g, 1) == EquidistantGrid(0:1:10) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
107 @test coarsen(g, 2) == EquidistantGrid(0:2:10) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
108 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
109 @test_throws DomainError(3, "Size minus 1 must be divisible by the ratio.") coarsen(g, 3) |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
110 end |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
111 end |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
112 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
113 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
114 @testset "equidistant_grid" begin |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
115 @test equidistant_grid(0.0,1.0, 4) isa EquidistantGrid |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
116 @test equidistant_grid((0.0,0.0),(8.0,5.0), 4, 3) isa TensorGrid |
1687
3ac94e8f28b3
Allow calling equidistant_grid with tuples of lenght 1
Jonatan Werpers <jonatan@werpers.com>
parents:
1646
diff
changeset
|
117 @test equidistant_grid((0.0,),(8.0,), 4) isa TensorGrid |
1282
11b08b242e48
Make equdistant_grid return an EquidistantGrid for the 1d Case
Jonatan Werpers <jonatan@werpers.com>
parents:
1279
diff
changeset
|
118 |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
119 # constuctor |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
120 @test_throws DomainError equidistant_grid(0.0, 1.0, 0) |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
121 @test_throws DomainError equidistant_grid(1.0, 1.0, 1) |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
122 @test_throws DomainError equidistant_grid(1.0, -1.0, 1) |
1282
11b08b242e48
Make equdistant_grid return an EquidistantGrid for the 1d Case
Jonatan Werpers <jonatan@werpers.com>
parents:
1279
diff
changeset
|
123 |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
124 @test_throws DomainError equidistant_grid((0.0,0.0),(1.0,1.0), 0, 0) |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
125 @test_throws DomainError equidistant_grid((1.0,1.0),(1.0,1.0), 1, 1) |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
126 @test_throws DomainError equidistant_grid((1.0,1.0),(-1.0,-1.0), 1, 1) |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
127 |
1575
efe1fc4cb6b0
Improve error message when giving arguments of different length to equidistant_grid()
Jonatan Werpers <jonatan@werpers.com>
parents:
1529
diff
changeset
|
128 @test_throws ArgumentError equidistant_grid((0.0,),(8.0,5.0), 4, 3, 4) |
efe1fc4cb6b0
Improve error message when giving arguments of different length to equidistant_grid()
Jonatan Werpers <jonatan@werpers.com>
parents:
1529
diff
changeset
|
129 |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
130 @testset "Base" begin |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
131 @test eltype(equidistant_grid(0.0, 1.0, 4)) == Float64 |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
132 @test eltype(equidistant_grid((0,0),(1,3), 4, 3)) <: AbstractVector{Float64} |
1437
e3a80ef08d09
Implement size(g,d) for EquidistantGrid and TensorGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1414
diff
changeset
|
133 |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
134 @test size(equidistant_grid(0.0, 1.0, 4)) == (4,) |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
135 @test size(equidistant_grid((0.0,0.0), (2.0,1.0), 5, 3)) == (5,3) |
1437
e3a80ef08d09
Implement size(g,d) for EquidistantGrid and TensorGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1414
diff
changeset
|
136 |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
137 @test size(equidistant_grid((0.0,0.0), (2.0,1.0), 5, 3), 1) == 5 |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
138 @test size(equidistant_grid((0.0,0.0), (2.0,1.0), 5, 3), 2) == 3 |
1437
e3a80ef08d09
Implement size(g,d) for EquidistantGrid and TensorGrid
Jonatan Werpers <jonatan@werpers.com>
parents:
1414
diff
changeset
|
139 |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
140 @test ndims(equidistant_grid(0.0, 1.0, 4)) == 1 |
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
141 @test ndims(equidistant_grid((0.0,0.0), (2.0,1.0), 5, 3)) == 2 |
1252
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
142 end |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
143 |
c150eabaf656
Fix or mark tests broken where needed
Jonatan Werpers <jonatan@werpers.com>
parents:
1146
diff
changeset
|
144 @testset "getindex" begin |
1529
43aaf710463e
Change to signature of equidistant_grid to same style as many array methods.
Jonatan Werpers <jonatan@werpers.com>
parents:
1464
diff
changeset
|
145 g = equidistant_grid((-1.0,0.0), (0.0,7.11), 5, 3) |
1267
30729cba1095
Fix some broken tests in equidistant_grid_test.jl
Jonatan Werpers <jonatan@werpers.com>
parents:
1261
diff
changeset
|
146 gp = collect(g); |
1125
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
147 p = [(-1.,0.) (-1.,7.11/2) (-1.,7.11); |
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
148 (-0.75,0.) (-0.75,7.11/2) (-0.75,7.11); |
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
149 (-0.5,0.) (-0.5,7.11/2) (-0.5,7.11); |
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
150 (-0.25,0.) (-0.25,7.11/2) (-0.25,7.11); |
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
151 (0.,0.) (0.,7.11/2) (0.,7.11)] |
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
152 for i ∈ eachindex(gp) |
1267
30729cba1095
Fix some broken tests in equidistant_grid_test.jl
Jonatan Werpers <jonatan@werpers.com>
parents:
1261
diff
changeset
|
153 @test [gp[i]...] ≈ [p[i]...] atol=5e-13 |
1125
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
154 end |
b9c6b0d8f0fa
Add testsets to existing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1116
diff
changeset
|
155 end |
324
047dee8efaef
Grids.EquidistantGrid: Add constructor for 1d grid
Jonatan Werpers <jonatan@werpers.com>
parents:
217
diff
changeset
|
156 end |
1276 | 157 |
158 | |
159 @testset "change_length" begin | |
1278
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
160 @test Grids.change_length(0:20, 21) == 0:20 |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
161 @test Grids.change_length(0:20, 11) == 0:2:20 |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
162 @test Grids.change_length(0:2:20, 21) == 0:20 |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
163 |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
164 @test Grids.change_length(range(0,1,length=10), 10) == range(0,1,length=10) |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
165 @test Grids.change_length(range(0,1,length=10), 5) == range(0,1,length=5) |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
166 @test Grids.change_length(range(0,1,length=10), 20) == range(0,1,length=20) |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
167 |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
168 @test Grids.change_length(LinRange(1,2,10),10) == LinRange(1,2,10) |
4a0570f325ce
Add tests for change_length
Jonatan Werpers <jonatan@werpers.com>
parents:
1276
diff
changeset
|
169 @test Grids.change_length(LinRange(1,2,10),15) == LinRange(1,2,15) |
1276 | 170 end |