Benchmark computations for Maxwell equations
for the approximation of highly singular solutions

Results from ETH Zürich, SAM, computed with Concepts

horizontal rule

The benchmark problems are presented in the page BENCHMAX.

Authors, affiliation

Authors
Philipp FRAUENFELDER, Kersten SCHMIDT, Christoph SCHWAB.

Affiliation
ETH Zürich, Seminar for Applied Mathematics

horizontal rule

Method and code

The method is the weighted Regularization.

It consists in adding to the bilinear form \int_Domain curl u . curl v dx a part in s \int_Domain div u div v d\mu with, instead the standard measure dx on the Domain, a measure of the form d\mu = \rho(x) dx where \rho(x) is a suitable weight (it tends to zero with a special rate as x tends to the singular support of the solution). s is a scaling parameter not affecting physical Eigenmodes.

Reference 1:
Martin COSTABEL, Monique DAUGE,
"Weighted Regularization of Maxwell Equations in Polyhedral Domains. A rehabilitation of nodal finite elements", Numer. Math., 93(2): 239-277, 2002.

Reference 2:
Philipp FRAUENFELDER, Christian LAGE,
"Concepts-An Object-Oriented Software Package for Partial Differential Equations", M2AN Math. Model. Numer. Anal. 36(5): 937-951, 2002.

Reference 3:
Philipp FRAUENFELDER,
"hp-Finite Element Methods for Anisotropically, Locally Refined Meshes in Three Dimensions", Doctoral Dissertation, in preparation. (To be found online.)

Reference 4:
Code Concepts

Reference 5:
Mark AINSWORTH and Joe COYLE,
"Hierarchic hp-edge element families for Maxwell's equations on hybrid quadrilateral/triangular meshes", Comput. Methods Appl. Mech. Engrg. 190(49-50): 6709-6733, 2001.

Reference 6:
Paul David LEDGER,
"An hp-adaptive finite element procedure for electromagnetic scattering problems", Doctoral Dissertation, University of Wales, Nov. 2001.

Technical data:
Computations in double precision arithmetics on a Sun-Fire-880 running Solaris 2.8. Eigensolver: ARPACK together with Umfpack as direct sparse linear solver.

horizontal rule

Results

Eigenvalues

horizontal rule

Maxwell eigenvalues in 2DomA (L-shape), (20031112)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 2 in the smallest two layers and n+1 in the largest layer).

Mesh
Mesh in L-shaped domain
Eigenvalues
Eigenvalues in s-ev plot

In the above plot (15770 dofs), red are spurious Eigenvalues, green are physical Eigenvalues, horizontal blue lines are 'exact' values from Benchmax. Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 9.

N = 92
n = 2
N = 254
n = 3
N = 524
n = 4
N = 920
n = 5
N = 1460
n = 6
2.865739598405162.137509107489111.788985727210291.618893621166871.53736021852868
3.655052848480333.573962819072173.546656717787863.537576103954723.53486006898055
9.943846796479759.870854286401419.86961943319429.869604509268219.86960440165983
N = 2162
n = 7
N = 3044
n = 8
N = 4124
n = 9
N = 5420
n = 10
N = 6950
n = 11
1.501171634147231.485945003021721.479760908799241.477278608963561.47628579229304
3.53419131316553.534058754463393.53403583903273.534032087046293.53403148248334
9.869604401091689.869604401089379.869604401089369.869604401089259.86960440108923
N = 8732
n = 12
N = 10784
n = 13
N = 13124
n = 14
N = 15770
n = 15
1.475887205080151.475727640929951.475663924374591.47563855438825
3.534031385267623.534031369724633.534031367252833.53403136686121
9.869604401089419.869604401088699.869604401039899.86960440106789
Relative errors with benchmark

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue show three different curves each: for the values s = 9, s = 6 and s = 2.
Convergence history of 1st Eigenvalue Convergence history of 2nd Eigenvalue Convergence history of 3rd Eigenvalue

up arrow horizontal rule up arrow

Maxwell eigenvalues in 2DomB (Cracked domain), (20031112)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 2 in the smallest two layers and n+1 in the largest layer).

Mesh

We have meshed the whole domain despite of its symmetry.

Mesh in cracked domain
Eigenvalues
Eigenvalues in s-ev plot

In the above plot (21028 dofs), red are spurious Eigenvalues, green are physical Eigenvalues, horizontal blue lines are 'exact' values from Benchmax. Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 9.

N = 28
n = 1
N = 124
n = 2
N = 340
n = 3
N = 700
n = 4
N = 1228
n = 5
0001.587773783909291.32620845736318
2.485961699119942.46866475641032.467405904313642.467401119879762.46740110030937
4.208893712561034.092407053198584.059774148110144.05075017865594.04794410873117
N = 1948
n = 6
N = 2884
n = 7
N = 4060
n = 8
N = 5500
n = 9
N = 7228
n = 10
1.18370698597021.109357743758351.071587388598621.052758109224451.04339680492742
2.467401100272442.467401100272352.467401100272342.467401100272272.46740110027231
4.047146494022124.046962498074434.046930552069944.046925982815764.04692538017452
N = 9268
n = 11
N = 11644
n = 12
N = 14380
n = 13
N = 17500
n = 14
N = 21028
n = 15
1.038739799454161.036409034562551.035242490595641.034658474203991.03436626682797
2.467401100272332.467401100272292.467401100271322.467401100269392.46740110027262
4.046925302724514.046925292835254.04692529157984.04692529141964.04692529140291
Relative errors with benchmark

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue show three different curves each: for the values s = 9, s = 6 and s = 2.
Convergence history of 1st Eigenvalue Convergence history of 2nd Eigenvalue Convergence history of 3rd Eigenvalue

up arrow horizontal rule up arrow

Maxwell eigenvalues in 2DomE (Square for transmission problems, ε1 = 0.5), (20040408, 20040505, 20040511)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 2 in the smallest two layers and n+1 in the largest layer). We have used three different methods:

Plain Weighted Regularization Weighted Regularization with Node Doubling Edge Elements
Mesh
Mesh for plain weighted regularization in (-1,1)^2 Mesh for weighted regularization with node doubling in (-1,1)^2 Mesh for edge elements in (-1,1)^2
Eigenvalues
Eigenvalues in s-ev plot Eigenvalues in s-ev plot
N = 60
n = 1
N = 264
n = 2
3.31732589456964
3.35972173595939
6.18999459362659
3.31743364084025
3.36393612737339
6.18643980456594
N = 752
n = 3
N = 1692
n = 4
3.31752601416437
3.365511568792
6.18639017210705
3.31754451531046
3.36604952473317
6.18638955736896
N = 3284
n = 5
N = 5760
n = 6
3.31754797550072
3.36623145128975
6.1863895618935
3.31754861742566
3.36629287184557
6.1863895624481
N = 9384
n = 7
N = 14452
n = 8
3.31754873637201
3.36631360012794
6.18638956248473
3.31754875840574
3.36632059486052
6.18638956248701
N = 21292
n = 9
N = 30264
n = 10
3.31754876248696
3.36632295516737
6.18638956248675
3.31754876324292
3.36632375162601
6.18638956248728
N = 41760
n = 11
N = 56204
n = 12
3.3175487633826
3.36632402038143
6.18638956248719
3.31754876340893
3.36632411107011
6.18638956248657
N = 74052
n = 13
N = 95792
n = 14
3.31754876341618
3.36632414167234
6.18638956248975
3.31754876341594
3.36632415199731
6.18638956248872
In the above plots (20766 and 7680 dofs, click for larger version), red are spurious Eigenvalues, green are physical Eigenvalues, horizontal blue lines are 'exact' values from Benchmax. Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 10.
N = 30
n = 1
N = 126
n = 2
3.24322810224601
3.24577214731192
6.19564598036415
3.10046941236368
3.10880009755685
6.13597244613991
N = 382
n = 3
N = 918
n = 4
3.36429152443549
3.42602202134598
6.18615540859658
3.33088887534925
3.37976522991338
6.18672444106447
N = 1886
n = 5
N = 3470
n = 6
3.32412501143759
3.38087661290379
6.18643317284668
3.32157904777508
3.38885100742956
6.18633040958983
N = 5886
n = 7
N = 9382
n = 8
3.31814605198328
3.36045217405082
6.18763689455118
3.31801549367598
3.36774355773469
 
N = 14238
n = 9
N = 20766
n = 10
3.31774714738676
3.36708395225233
 
3.31763079225684
3.36664571697868
 
N = 48
n = 1
N = 160
n = 2
4.06896961214344
6.34172438800243
6.68558365532546
3.59983870638615
4.69979306038279
6.1955373161925
N = 400
n = 3
N = 792
n = 4
3.42710036046357
3.9098809313688
6.18672374063397
3.35682098891715
3.59501007357774
6.18643315752554
N = 1360
n = 5
N = 2128
n = 6
3.3301178668276
3.45892600252659
6.18639923312905
3.32096595687638
3.40120715628326
6.18639175159294
N = 3120
n = 7
N = 4360
n = 8
3.31832267907811
3.37877617228035
6.18639004454515
3.3177043505265
3.37063120234754
6.18638966502972
N = 5872
n = 9
N = 7680
n = 10
3.31757860067753
3.36779816676172
6.18638958395823
3.31755440928261
3.3668277420059
6.1863895669101
Relative errors with benchmark

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue show three different curves each: for the values s = 10, s = 6 and s = 2. In the case of edge elements, no s is used.

Convergence history of 1st Eigenvalue
Convergence history of 2nd Eigenvalue
Convergence history of 3rd Eigenvalue
Convergence history of 1st Eigenvalue
Convergence history of 2nd Eigenvalue
Convergence history of 3rd Eigenvalue
Convergence history of 1st Eigenvalue
Convergence history of 2nd Eigenvalue
Convergence history of 3rd Eigenvalue
The descent for the weighted regularization with node doubling (pictures in the middle) is steeper because it uses only a vertex mesh as opposed to edge meshes in the other two cases.

up arrow horizontal rule up arrow

Maxwell eigenvalues in 2DomE (Square for transmission problems, ε1 = 1e-2), (20040527)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 2 in the smallest two layers and n+1 in the largest layer). We have used three different methods:

Mesh

The same mesh was used for all three methods.
Mesh for weighted regularization with node doubling in (-1,1)^2

Eigenvalues
Eigenvalues in s-ev plot

In the above plot (7680 dofs), red are spurious Eigenvalues, green are physical Eigenvalues, horizontal blue lines are 'exact' values from Benchmax. Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 2.

Weighted Regularization with Node Doubling Edge Elements Equivalent Magnetic Problem
N = 160
n = 2
N = 400
n = 3
4.90860143619998
7.23586056899067
 
4.89343894568972
7.20580673906758
23.8922583809045
N = 792
n = 4
N = 1360
n = 5
4.89321753435491
7.20674140539913
23.4928456169029
4.89318044167821
7.20669409510113
23.079596718588
N = 2128
n = 6
N = 3120
n = 7
4.89315713220859
7.2066765395359
22.5757880414489
4.89320133241858
7.20666960534684
21.9709710507563
N = 4360
n = 8
N = 5872
n = 9
4.89317817734026
7.20667685219788
21.3293481517207
4.89315634114115
7.20666945534267
20.6900510842529
N = 7680
n = 10
4.89320189787017
7.20666152441262
20.0967115752608
N = 60
n = 1
N = 264
n = 2
4.89380818930107
7.21455839170595
7.39261385977372
4.8932010168805
7.20676311887109
8.42119622037621
N = 600
n = 3
N = 1124
n = 4
4.89319204755882
7.20667195732241
9.35385313579001
4.89319330978249
7.20667526338729
10.1894522480086
N = 1852
n = 5
N = 2808
n = 6
4.89319332763091
7.20667541360879
10.9272778126277
4.89319332479599
7.206675421713
11.5719056697179
N = 4016
n = 7
N = 5500
n = 8
4.89319332488361
7.2066754224032
12.1304453514532
4.89319332488963
7.2066754223983
12.6110666428872
N = 7284
n = 9
N = 9392
n = 10
4.89319332489007
7.2066754224439
13.0224511720649
4.89319332489007
7.20667542246896
13.3729591233934
N = 385
n = 4
N = 657
n = 5
4.89319384339549
7.20667720188694
21.0886575145218
4.89319335755609
7.20667549381511
20.3611718867607
N = 1025
n = 6
N = 1501
n = 7
4.8931933270849
7.20667542683698
19.6645699470048
4.89319332503984
7.20667542271929
19.0252733269495
N = 2097
n = 8
N = 2825
n = 9
4.89319332490045
7.20667542246195
18.4565219186074
4.89319332489082
7.20667542244585
17.9611747738125
N = 3697
n = 10
N = 4725
n = 11
4.89319332489013
7.20667542244444
17.5357572314486
4.89319332489011
7.20667542244477
17.1736951302521
N = 5921
n = 12
N = 7297
n = 13
4.89319332489009
7.20667542244464
16.8673308568564
4.89319332489012
7.20667542244487
16.6090492275063
Relative errors with benchmark

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue
Convergence history of 1st Eigenvalue Convergence history of 2nd Eigenvalue Convergence history of 3rd Eigenvalue

Remarks

The edge elements and the equivalent problem show exponential convergence for the first three Eigenvalues in the above plots. The weighted regularisation only does so for the third Eigenvalue. The convergence histories for the first and second Eigenvalue deteriorate at a level of the relative error of 10-6. This does not depend on s, the chosen Eigenvalue solver (or its parameters) or the formulation of the constraints at the origin.

The third plot above shows the convergence history for the third Eigenvalue: It is approximated poorly. The reason is that the third Eigenfunction has a strong unbounded singularity at the origin. This can also be seen in the eigenvalues-s plot: The Eigenvalues computed with the weighted regularisation are above 20 for s >= 2 and even above 25 for s >= 16---the true value is expected to be close to 15.

up arrow horizontal rule up arrow

Maxwell eigenvalues in 2DomE (Square for transmission problems, ε1 = 1e-8), (20040512)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 2 in the smallest two layers and n+1 in the largest layer). We have used three different methods:

Mesh

The same mesh was used for all three methods.
Mesh for weighted regularization with node doubling in (-1,1)^2

Eigenvalues
Eigenvalues in s-ev plot

In the above plot (7680 dofs), red are spurious Eigenvalues, green are physical Eigenvalues, horizontal blue lines are 'exact' values from Benchmax. Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 6.

Weighted Regularization with Node Doubling Edge Elements Equivalent Magnetic Problem
N = 160
n = 2
N = 400
n = 3
4.97580722987537
7.24801792385274
25.7005617308816
4.93791281467001
7.22763267241733
24.7074878433978
N = 792
n = 4
N = 1360
n = 5
4.93514011530577
7.22562502310233
24.6749018234076
4.93483286830701
7.22527193013618
24.6740218706198
N = 2128
n = 6
N = 3120
n = 7
4.93480448857052
7.22519460976819
24.6740109234031
4.93480232247803
7.22517749655057
24.6740107944724
N = 4360
n = 8
N = 5872
n = 9
4.93480216974128
7.22517388898964
24.6740107936014
4.93480215950694
7.22517311232585
24.6740107936161
N = 7680
n = 10
4.93480215883166
7.22517295145961
24.6740107936007
N = 60
n = 1
N = 264
n = 2
4.93547628322842
7.23310064830809
25.8589924453283
4.93481340389196
7.22526055543531
24.7049714642037
N = 600
n = 3
N = 1124
n = 4
4.9348011409772
7.22516939072838
24.6745875617225
4.9348021617021
7.22517274579186
24.6740158727508
N = 2808
n = 5
N = 4016
n = 6
4.93480215878352
7.2251729087422
24.6737913526755
4.934802158829484
7.2251729095509
24.6740106038513
N = 5500
n = 7
N = 7284
n = 8
4.93480215878362
7.22517290950729
24.6740111552097
4.93480215876373
7.22517290968737
24.67400874213
N = 197
n = 3
N = 385
n = 4
4.93481322214594
7.22526423683577
24.7020626063564
4.93480218349695
7.22517479363773
24.6747102414941
N = 657
n = 5
N = 1025
n = 6
4.93480215882631
7.22517300045202
24.6740179529331
4.93480215878383
7.22517292149373
24.6740087674509
N = 1501
n = 7
N = 2097
n = 8
4.93480215878379
7.22517291484662
24.6740084139985
4.93480215878378
7.22517318777213
24.6740081956183
N = 2825
n = 9
N = 3697
n = 10
4.93480215878373
7.22517269691101
24.6740078705903
4.9348021587837
7.22517324402165
24.6740076570344
N = 4725
n = 11
N = 5921
n = 12
4.93480215878368
7.22517311731277
24.6740074120457
4.93480215878371
7.2251729550341
24.6740071873671
Relative errors with benchmark

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue
Convergence history of 1st Eigenvalue Convergence history of 2nd Eigenvalue Convergence history of 3rd Eigenvalue

Remarks

All three methods show exponential convergence for the first three Eigenvalues in the above plots with the following two exceptions:

up arrow horizontal rule up arrow

Maxwell eigenvalues in 3DomA (thick L), (20031124)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 1 in the smallest two layers and n in the largest layer). We used two different geometric grading parameters: σ = 0.5 and σ = 0.15.

Mesh
Mesh in thick L-shaped domain with σ = 1/2 Mesh in thick L-shaped domain with σ = 0.15

The mesh with σ = 0.5 on the left has hanging nodes and is automatically generated by refining geometrically towards the singular reentrant edge. The mesh with σ = 0.15 on the right is generated by and hand-written mesh generator and is regular (no hanging nodes).

Eigenvalues for σ = 0.5
Eigenvalues in s-ev plot

In the above plot (18726 dofs), red are spurious Eigenvalues, green are physical Eigenvalues, blue circles are undecided, horizontal blue lines are 'exact' values from Benchmax. Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 9.

N = 35
n = 2
N = 262
n = 3
N = 849
n = 4
N = 2045
n = 5
N = 4079
n = 6
11.70258004339229.936360335761069.7036842872699.661993827405439.64832141646694
14.448279834758112.945301260495311.877117001348811.441422854551911.2979362655014
14.587950560637313.717643876684213.46139604005213.420862411140713.4086701905748
N = 7273
n = 7
N = 12003
n = 8
N = 18726
n = 9
N = 27953
n = 10
N = 40276
n = 11
9.643113805192669.641067026149849.6402566783579.639935279140019.63980775012728
11.262794848867811.223733177584211.499357225065711.365319452569211.3484229353869
13.405238872848213.404173266898313.403788330283813.403668612522513.4036417544865
N = 56341
n = 12
9.63975714199179
11.3448098681505
13.4036367812583
Eigenvalues for σ = 0.15
N = 330
n = 2
N = 1007
n = 3
N = 2196
n = 4
N = 4096
n = 5
N = 6951
n = 6
9.661542375189149.642369346257739.639925667038029.639747488219769.63972630864826
11.683034805299211.311490668824511.408933911534111.347410889018611.3451931889982
13.583092899075213.418098241425113.407187852951713.403864725157413.4036551326599
N = 11041
n = 7
N = 16700
n = 8
N = 24298
n = 9
9.639724200700389.639723900485569.63972385325434
11.344604288679611.345830711895111.345288444485
13.403637380727513.403635965057413.4036350967918
Relative errors with benchmark for σ = 0.5 and σ = 0.15

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue (top to bottom) show three different curves each for different values of s. The left and right plots show σ = 0.5 and σ = 0.15 respectively with the same scales! It is clearly visible that the mesh with σ = 0.15 beats the mesh with σ = 0.5. Note: the convergence histories for the different values of s are identical for the 1st Eigenvalue.

σ = 0.5 σ = 0.15
Convergence history of 1st Eigenvalue
Convergence history of 2nd Eigenvalue
Convergence history of 3rd Eigenvalue
Convergence history of 1st Eigenvalue
Convergence history of 2nd Eigenvalue
Convergence history of 3rd Eigenvalue

up arrow horizontal rule up arrow

Maxwell eigenvalues in 3DomB (Fichera), (20031127)

Computed by a Galerkin approximation with a geometric mesh with increasing number of layers n and linearly distributed polynomial degree (between 1 in the smallest two layers and n in the largest layer).

Mesh
Mesh in Fichera corner
Eigenvalues
Eigenvalues in s-ev plot

In the above plot (45450 dofs), red are spurious Eigenvalues, green are physical Eigenvalues, blue circles are undecided, horizontal blue lines are extrapolated values from the computations.

1st EV2nd EV3rd EV
3.1975.87810.6955

Below are the numeric values of the first three physical Eigenvalues for different number of layers n. We chose s = 9.

N = 102
n = 2
N = 990
n = 3
N = 3882
n = 4
N = 10551
n = 5
N = 23325
n = 6
7.18440117183775.519513801261794.395192574192263.827781078402673.52738328207976
7.184401171837716.242401564430946.032982850231655.943567631927685.90513973333147
13.106285104013810.976321287350810.752956908104510.713821438463210.7010661314235
45450
n = 7
N = 81285
n = 8
3.372374198204983.29778479761133
5.88993554284195.88424721054921
10.696374043511710.6945254229041
Relative errors with benchmark

The convergence histories below for the 1st, 2nd and 3rd Eigenvalue show three different curves each: for the values s = 9, s = 6 and s = 2.
Convergence history of 1st Eigenvalue Convergence history of 2nd Eigenvalue Convergence history of 3rd Eigenvalue

up arrow horizontal rule up arrow