Skip to content

Commit a1980cf

Browse files
RemiLeheEZoni
andauthored
Update default behavior for gathering with direct deposition (#5024)
* Update default behavior for gathering with direct deposition * Modify condition under which to use galerkin interpolation * Update condition * Update benchmarks --------- Co-authored-by: Edoardo Zoni <[email protected]>
1 parent fbe9d6a commit a1980cf

12 files changed

+216
-208
lines changed

Docs/source/usage/parameters.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2446,7 +2446,7 @@ Grid types (collocated, staggered, hybrid)
24462446
For example, :math:`E_z` is gathered using ``algo.particle_shape`` along :math:`(x,y)` and ``algo.particle_shape - 1`` along :math:`z`.
24472447
See equations (21)-(23) of :cite:t:`param-Godfrey2013` and associated references for details.
24482448

2449-
Default: ``interpolation.galerkin_scheme = 0`` with collocated grids and/or momentum-conserving field gathering, ``interpolation.galerkin_scheme = 1`` otherwise.
2449+
Default: ``interpolation.galerkin_scheme = 0`` with collocated grids, or momentum-conserving field gathering, or when ``algo.current_deposition = direct`` ; ``interpolation.galerkin_scheme = 1`` otherwise.
24502450

24512451
.. warning::
24522452

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,40 @@
11
{
2-
"electrons": {
3-
"particle_momentum_x": 4.2387000553111037e-20,
4-
"particle_momentum_y": 0.0,
5-
"particle_momentum_z": 4.238700039223283e-20,
6-
"particle_position_x": 0.6553599659707846,
7-
"particle_position_y": 0.6553599659699976,
8-
"particle_weight": 3200000000000000.5
9-
},
102
"lev=0": {
113
"Bx": 0.0,
12-
"By": 46.86760020196344,
4+
"By": 46.65494014556924,
135
"Bz": 0.0,
14-
"Ex": 7589330186947.288,
6+
"Ex": 7596470155558.35,
157
"Ey": 0.0,
16-
"Ez": 7589330198843.742,
17-
"jx": 7283102663077210.0,
8+
"Ez": 7596470167219.471,
9+
"jx": 7277974695617658.0,
1810
"jy": 0.0,
19-
"jz": 7283102630279985.0
11+
"jz": 7277974664068728.0
2012
},
2113
"lev=1": {
2214
"Bx": 0.0,
23-
"By": 369.2209081024592,
15+
"By": 371.2497742366917,
2416
"Bz": 0.0,
25-
"Ex": 7593801203430.788,
17+
"Ex": 7596619292118.433,
2618
"Ey": 0.0,
27-
"Ez": 7593800988021.711,
28-
"jx": 6597471633118175.0,
19+
"Ez": 7596619076137.7295,
20+
"jx": 6592788899529852.0,
2921
"jy": 0.0,
30-
"jz": 6597471447306984.0
22+
"jz": 6592788734672843.0
23+
},
24+
"electrons": {
25+
"particle_momentum_x": 4.2314133085678375e-20,
26+
"particle_momentum_y": 0.0,
27+
"particle_momentum_z": 4.2314132920088513e-20,
28+
"particle_position_x": 0.6553599899254421,
29+
"particle_position_y": 0.6553599899246253,
30+
"particle_weight": 3200000000000000.5
3131
},
3232
"positrons": {
33-
"particle_momentum_x": 4.238670783273887e-20,
33+
"particle_momentum_x": 4.2314444192249906e-20,
3434
"particle_momentum_y": 0.0,
35-
"particle_momentum_z": 4.238670762294589e-20,
36-
"particle_position_x": 0.6553596917214832,
37-
"particle_position_y": 0.6553596917221793,
35+
"particle_momentum_z": 4.231444401040395e-20,
36+
"particle_position_x": 0.655359770013864,
37+
"particle_position_y": 0.6553597700144888,
3838
"particle_weight": 3200000000000000.5
3939
}
4040
}
Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,27 @@
11
{
2-
"electrons": {
3-
"particle_momentum_x": 5.663705661977914e-20,
4-
"particle_momentum_y": 0.0,
5-
"particle_momentum_z": 5.663705661977915e-20,
6-
"particle_position_x": 0.65536,
7-
"particle_position_y": 0.6553599999999999,
8-
"particle_weight": 3200000000000000.5
9-
},
102
"lev=0": {
11-
"Ex": 3771082811318.298,
3+
"Ex": 3751590727260.198,
124
"Ey": 0.0,
13-
"Ez": 3771082811318.301,
14-
"jx": 1.009365330460902e+16,
5+
"Ez": 3751590727260.1885,
6+
"jx": 1.0100623838390416e+16,
157
"jy": 0.0,
16-
"jz": 1.009365330460902e+16,
8+
"jz": 1.0100623838390416e+16,
179
"part_per_cell": 131072.0
1810
},
1911
"positrons": {
20-
"particle_momentum_x": 5.663705661977916e-20,
12+
"particle_momentum_x": 5.668407775012392e-20,
2113
"particle_momentum_y": 0.0,
22-
"particle_momentum_z": 5.663705661977916e-20,
14+
"particle_momentum_z": 5.668407775012392e-20,
2315
"particle_position_x": 0.65536,
2416
"particle_position_y": 0.65536,
2517
"particle_weight": 3200000000000000.5
18+
},
19+
"electrons": {
20+
"particle_momentum_x": 5.668407775012391e-20,
21+
"particle_momentum_y": 0.0,
22+
"particle_momentum_z": 5.668407775012391e-20,
23+
"particle_position_x": 0.65536,
24+
"particle_position_y": 0.6553600000000002,
25+
"particle_weight": 3200000000000000.5
2626
}
2727
}
Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
{
2-
"electrons": {
3-
"particle_momentum_x": 5.663705657675969e-20,
4-
"particle_momentum_y": 0.0,
5-
"particle_momentum_z": 5.663705657675969e-20,
6-
"particle_position_x": 0.65536,
7-
"particle_position_y": 0.65536,
8-
"particle_weight": 3200000000000000.5
9-
},
102
"lev=0": {
113
"Bx": 0.0,
12-
"By": 3.4892704618136277,
4+
"By": 5.710236645367475,
135
"Bz": 0.0,
14-
"Ex": 3771082786646.7104,
6+
"Ex": 3751590785149.1333,
157
"Ey": 0.0,
16-
"Ez": 3771082786646.702,
17-
"jx": 1.0093631772735916e+16,
8+
"Ez": 3751590785149.124,
9+
"jx": 1.0100602372860838e+16,
1810
"jy": 0.0,
19-
"jz": 1.0093631772735912e+16
11+
"jz": 1.0100602372860836e+16
2012
},
2113
"positrons": {
22-
"particle_momentum_x": 5.663705657675971e-20,
14+
"particle_momentum_x": 5.668407759026453e-20,
2315
"particle_momentum_y": 0.0,
24-
"particle_momentum_z": 5.663705657675969e-20,
25-
"particle_position_x": 0.65536,
16+
"particle_momentum_z": 5.668407759026454e-20,
17+
"particle_position_x": 0.6553599999999999,
2618
"particle_position_y": 0.65536,
2719
"particle_weight": 3200000000000000.5
20+
},
21+
"electrons": {
22+
"particle_momentum_x": 5.668407759026452e-20,
23+
"particle_momentum_y": 0.0,
24+
"particle_momentum_z": 5.668407759026452e-20,
25+
"particle_position_x": 0.65536,
26+
"particle_position_y": 0.6553600000000002,
27+
"particle_weight": 3200000000000000.5
2828
}
2929
}
Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
11
{
2-
"electrons": {
3-
"particle_momentum_x": 9.520485222844096e-20,
4-
"particle_position_x": 2.6214400000233367,
5-
"particle_position_y": 2.6214400000233367,
6-
"particle_position_z": 2.6214400000000007,
7-
"particle_weight": 128000000000.00002
8-
},
92
"lev=0": {
10-
"Bx": 78.90261993791012,
11-
"By": 78.90261993794903,
12-
"Bz": 78.9041393998435,
13-
"Ex": 84580428018688.97,
14-
"Ey": 84580428018688.73,
15-
"Ez": 84580441923246.2,
16-
"F": 685.6927382678912,
17-
"divE": 7.94184911020468e+19,
18-
"jx": 6.007457695701311e+16,
19-
"jy": 6.007457695701312e+16,
20-
"jz": 6.007453636158103e+16,
3+
"Bx": 86.03228226677659,
4+
"By": 86.03228226679013,
5+
"Bz": 86.033798606458,
6+
"Ex": 84659309211473.42,
7+
"Ey": 84659309211473.42,
8+
"Ez": 84659323064827.52,
9+
"F": 700.2020613746595,
10+
"divE": 7.94984970149747e+19,
11+
"jx": 5.999100369888243e+16,
12+
"jy": 5.999100369888247e+16,
13+
"jz": 5.999096310379822e+16,
2114
"part_per_cell": 524288.0,
22-
"rho": 705198439.2596256
15+
"rho": 705877712.4251474
2316
},
2417
"positrons": {
25-
"particle_momentum_z": 9.520479438980041e-20,
26-
"particle_position_x": 2.6214400000233367,
27-
"particle_position_y": 2.6214400000233358,
18+
"particle_momentum_z": 9.508931687286131e-20,
19+
"particle_position_x": 2.621440000034161,
20+
"particle_position_y": 2.6214400000341618,
2821
"particle_position_z": 2.62144
22+
},
23+
"electrons": {
24+
"particle_momentum_x": 9.508937471997448e-20,
25+
"particle_position_x": 2.6214400000341604,
26+
"particle_position_y": 2.621440000034161,
27+
"particle_position_z": 2.6214399999999993,
28+
"particle_weight": 128000000000.00002
2929
}
30-
}
30+
}
Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
{
2-
"electrons": {
3-
"particle_momentum_x": 9.633869745818886e-20,
4-
"particle_position_x": 2.621440000001177,
5-
"particle_position_y": 2.6214400000011784,
6-
"particle_position_z": 2.6214400000000007,
7-
"particle_weight": 128000000000.00002
8-
},
92
"lev=0": {
10-
"Bx": 80.96035538655111,
11-
"By": 80.96035538657691,
12-
"Bz": 80.96271445263956,
13-
"Ex": 84777489275096.88,
14-
"Ey": 84777489275096.88,
15-
"Ez": 84777485856239.4,
16-
"jx": 6.08447015360442e+16,
17-
"jy": 6.084470153604425e+16,
18-
"jz": 6.084470085554113e+16,
3+
"Bx": 88.73949682623977,
4+
"By": 88.73949682627456,
5+
"Bz": 88.74185838578241,
6+
"Ex": 84851140116479.64,
7+
"Ey": 84851140116479.62,
8+
"Ez": 84851136696893.72,
9+
"jx": 6.075773528102969e+16,
10+
"jy": 6.0757735281029736e+16,
11+
"jz": 6.075773460167053e+16,
1912
"part_per_cell": 524288.0,
20-
"rho": 703546536.8089281
13+
"rho": 704298346.5173542
2114
},
2215
"positrons": {
23-
"particle_momentum_z": 9.63386961193585e-20,
24-
"particle_position_x": 2.621440000001177,
25-
"particle_position_y": 2.621440000001179,
26-
"particle_position_z": 2.6214400000000007
16+
"particle_momentum_z": 9.621748455552108e-20,
17+
"particle_position_x": 2.621440000001309,
18+
"particle_position_y": 2.6214400000013076,
19+
"particle_position_z": 2.6214399999999998
20+
},
21+
"electrons": {
22+
"particle_momentum_x": 9.621748589257923e-20,
23+
"particle_position_x": 2.621440000001309,
24+
"particle_position_y": 2.6214400000013076,
25+
"particle_position_z": 2.6214399999999998,
26+
"particle_weight": 128000000000.00002
2727
}
2828
}
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
{
2+
"lev=0": {
3+
"Ex": 3047094224871324.5,
4+
"jx": 3.294250379355652e+18
5+
},
26
"electrons": {
3-
"particle_momentum_x": 1.7507165884671642e-17,
4-
"particle_position_x": 10.350911572498216,
5-
"particle_position_y": 10.485760000000003,
6-
"particle_position_z": 10.485760000000003,
7+
"particle_momentum_x": 1.740964347107983e-17,
8+
"particle_position_x": 10.351045542291539,
9+
"particle_position_y": 10.485759999999997,
10+
"particle_position_z": 10.48576,
711
"particle_weight": 320000000000.00006
8-
},
9-
"lev=0": {
10-
"Ex": 3091324128949712.5,
11-
"jx": 3.3015975627803766e+18
1212
}
1313
}
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
{
2+
"lev=0": {
3+
"Ex": 53556162492188.62,
4+
"jx": 5.722548841990386e+16
5+
},
26
"electrons": {
3-
"particle_momentum_x": 1.0449418710231497e-19,
4-
"particle_position_x": 0.0831205701527011,
5-
"particle_position_y": 0.08192,
7+
"particle_momentum_x": 1.0581442023547547e-19,
8+
"particle_position_x": 0.0831038802568349,
9+
"particle_position_y": 0.08191999999999999,
610
"particle_weight": 8000000000000001.0
7-
},
8-
"lev=0": {
9-
"Ex": 54311177004701.516,
10-
"jx": 5.639670983525456e+16
1111
}
1212
}
Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,32 @@
11
{
2-
"electrons": {
3-
"particle_momentum_x": 6.808479576836945e-20,
4-
"particle_momentum_y": 6.876934757849776e-20,
5-
"particle_momentum_z": 6.802215755177324e-20,
6-
"particle_position_x": 6339.279719574188,
7-
"particle_position_y": 6400.519522256783,
8-
"particle_position_z": 6332.552838182088,
9-
"particle_weight": 4999999954710.04
10-
},
112
"lev=0": {
12-
"Bx": 2.18760546171463e-05,
13-
"By": 1.777427672926153e-05,
14-
"Bz": 1.798431779205324e-05,
15-
"Ex": 262735.3418998487,
16-
"Ey": 264285.9081716973,
17-
"Ez": 262283.0576561827,
18-
"jx": 930.8363498458478,
19-
"jy": 940.577756171662,
20-
"jz": 929.9701516370898,
3+
"Bx": 2.1885709623428054e-05,
4+
"By": 1.7781538740987698e-05,
5+
"Bz": 1.798374460438725e-05,
6+
"Ex": 262814.04898035893,
7+
"Ey": 264360.66474815976,
8+
"Ez": 262360.8533027486,
9+
"jx": 931.6306925490601,
10+
"jy": 941.3279496407436,
11+
"jz": 930.7478072804985,
2112
"part_per_cell": 65536.0
2213
},
14+
"electrons": {
15+
"particle_momentum_x": 6.823819887231586e-20,
16+
"particle_momentum_y": 6.891558962132863e-20,
17+
"particle_momentum_z": 6.817050175691089e-20,
18+
"particle_position_x": 6339.113170504729,
19+
"particle_position_y": 6400.3586668158905,
20+
"particle_position_z": 6332.387112999683,
21+
"particle_weight": 4999999954710.04
22+
},
2323
"protons": {
24-
"particle_momentum_x": 3.177356695273816e-21,
25-
"particle_momentum_y": 3.165603704977051e-21,
26-
"particle_momentum_z": 3.157786057110636e-21,
27-
"particle_position_x": 6550.923797287247,
28-
"particle_position_y": 6537.195882086984,
29-
"particle_position_z": 6523.379262220709,
24+
"particle_momentum_x": 2.9968929267374238e-21,
25+
"particle_momentum_y": 2.984482330834465e-21,
26+
"particle_momentum_z": 2.9781449297861096e-21,
27+
"particle_position_x": 6550.923883255297,
28+
"particle_position_y": 6537.195968516041,
29+
"particle_position_z": 6523.379347813018,
3030
"particle_weight": 4999999954710.04
3131
}
3232
}

0 commit comments

Comments
 (0)