@@ -45,6 +45,9 @@ for source in D_test_list, T in (Float32, Float64)
45
45
# SBP property
46
46
M = mass_matrix (D)
47
47
@test M * Matrix (D) + Matrix (D)' * M ≈ mass_matrix_boundary (D)
48
+
49
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
50
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
48
51
# interior and boundary
49
52
mul! (res, D, x0)
50
53
@test all (i -> abs (res[i]) < 1000 * eps (T), eachindex (res))
@@ -112,6 +115,9 @@ for source in D_test_list, T in (Float32, Float64)
112
115
# SBP property
113
116
M = mass_matrix (D)
114
117
@test M * Matrix (D) + Matrix (D)' * M ≈ mass_matrix_boundary (D)
118
+
119
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
120
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
115
121
# interior and boundary
116
122
mul! (res, D, x0)
117
123
@test all (i -> abs (res[i]) < 1000 * eps (T), eachindex (res))
@@ -189,6 +195,9 @@ for source in D_test_list, T in (Float32, Float64)
189
195
# SBP property
190
196
M = mass_matrix (D)
191
197
@test M * Matrix (D) + Matrix (D)' * M ≈ mass_matrix_boundary (D)
198
+
199
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
200
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
192
201
# interior and boundary
193
202
mul! (res, D, x0)
194
203
@test all (i -> abs (res[i]) < 1000 * eps (T), eachindex (res))
@@ -276,6 +285,9 @@ for source in D_test_list, T in (Float32, Float64)
276
285
# SBP property
277
286
M = mass_matrix (D)
278
287
@test M * Matrix (D) + Matrix (D)' * M ≈ mass_matrix_boundary (D)
288
+
289
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
290
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
279
291
# interior and boundary
280
292
mul! (res, D, x0)
281
293
@test all (i -> abs (res[i]) < 16000 * eps (T), eachindex (res))
@@ -438,6 +450,9 @@ for source in D_test_list, T in (Float32, Float64)
438
450
dL = derivative_left (D, Val {1} ())
439
451
dR = derivative_right (D, Val {1} ())
440
452
@test M * Matrix (D) - Matrix (D)' * M ≈ eR * dR' - eL * dL' - dR * eR' + dL * eL'
453
+
454
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
455
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
441
456
# interior and boundary
442
457
mul! (res, D, x0)
443
458
@test all (i -> abs (res[i]) < 2000 * eps (T), eachindex (res))
@@ -509,6 +524,9 @@ for source in D_test_list, T in (Float32, Float64)
509
524
dL = derivative_left (D, Val {1} ())
510
525
dR = derivative_right (D, Val {1} ())
511
526
@test M * Matrix (D) - Matrix (D)' * M ≈ eR * dR' - eL * dL' - dR * eR' + dL * eL'
527
+
528
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
529
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
512
530
# interior and boundary
513
531
mul! (res, D, x0)
514
532
@test all (i -> abs (res[i]) < 10000 * eps (T), eachindex (res))
@@ -587,6 +605,9 @@ for source in D_test_list, T in (Float32, Float64)
587
605
dL = derivative_left (D, Val {1} ())
588
606
dR = derivative_right (D, Val {1} ())
589
607
@test M * Matrix (D) - Matrix (D)' * M ≈ eR * dR' - eL * dL' - dR * eR' + dL * eL'
608
+
609
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
610
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
590
611
# interior and boundary
591
612
mul! (res, D, x0)
592
613
@test all (i -> abs (res[i]) < 10000 * eps (T), eachindex (res))
669
690
@test derivative_order (D) == der_order
670
691
@test accuracy_order (D) == acc_order
671
692
@test issymmetric (D) == false
693
+
694
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
695
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
672
696
# interior and boundary
673
697
mul! (res, D, x0)
674
698
@test all (i -> abs (res[i]) < eps (T), eachindex (res))
730
754
@test derivative_order (D) == der_order
731
755
@test accuracy_order (D) == acc_order
732
756
@test issymmetric (D) == false
757
+
758
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
759
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
733
760
# interior and boundary
734
761
mul! (res, D, x0)
735
762
@test all (i -> abs (res[i]) < 100_000 * eps (T), eachindex (res))
800
827
@test derivative_order (D) == der_order
801
828
@test accuracy_order (D) == acc_order
802
829
@test issymmetric (D) == false
830
+
831
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
832
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
803
833
# interior and boundary
804
834
mul! (res, D, x0)
805
835
@test all (i -> abs (res[i]) < 1_000_000 * eps (T), eachindex (res))
884
914
@test derivative_order (D) == der_order
885
915
@test accuracy_order (D) == acc_order
886
916
@test issymmetric (D) == false
917
+
918
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
919
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
887
920
# interior and boundary
888
921
mul! (res, D, x0)
889
922
@test all (i -> abs (res[i]) < 10 * eps (T) / D. Δx^ 4 , eachindex (res))
953
986
@test derivative_order (D) == der_order
954
987
@test accuracy_order (D) == acc_order
955
988
@test issymmetric (D) == false
989
+
990
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
991
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
956
992
# interior and boundary
957
993
mul! (res, D, x0)
958
994
@test all (i -> abs (res[i]) < 50_000_000 * eps (T), eachindex (res))
@@ -1033,6 +1069,9 @@ end
1033
1069
@test derivative_order (D) == der_order
1034
1070
@test accuracy_order (D) == acc_order
1035
1071
@test issymmetric (D) == false
1072
+
1073
+ @test restrict_interior (x2, D) ≈ x2[(begin + 1 ): (end - 1 )]
1074
+ @test restrict_boundary (x2, D) ≈ [xmin^ 2 , xmax^ 2 ]
1036
1075
# interior and boundary
1037
1076
mul! (res, D, x0)
1038
1077
@test all (i -> abs (res[i]) < 50_000_000 * eps (T), eachindex (res))
0 commit comments