Skip to content

Commit dee0820

Browse files
committed
LWFA PICMI Tests: Add Electron Beam
1 parent b673c59 commit dee0820

File tree

4 files changed

+105
-25
lines changed

4 files changed

+105
-25
lines changed

Examples/Physics_applications/laser_acceleration/PICMI_inputs_1d.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,31 @@
5151
name = 'electrons',
5252
initial_distribution = uniform_distribution)
5353

54+
# Particles: beam electrons
55+
q_tot = 1e-12
56+
x_m = 0.
57+
y_m = 0.
58+
z_m = -28e-06
59+
x_rms = 0.5e-06
60+
y_rms = 0.5e-06
61+
z_rms = 0.5e-06
62+
ux_m = 0.
63+
uy_m = 0.
64+
uz_m = 500.
65+
ux_th = 2.
66+
uy_th = 2.
67+
uz_th = 50.
68+
gaussian_bunch_distribution = picmi.GaussianBunchDistribution(
69+
n_physical_particles = q_tot / q_e,
70+
rms_bunch_size = [x_rms, y_rms, z_rms],
71+
rms_velocity = [c*ux_th, c*uy_th, c*uz_th],
72+
centroid_position = [x_m, y_m, z_m],
73+
centroid_velocity = [c*ux_m, c*uy_m, c*uz_m])
74+
beam = picmi.Species(
75+
particle_type = 'electron',
76+
name = 'beam',
77+
initial_distribution = gaussian_bunch_distribution)
78+
5479
# Laser
5580
e_max = 16e12
5681
position_z = 9e-06
@@ -102,6 +127,11 @@
102127
electrons,
103128
layout = picmi.GriddedLayout(grid = grid, n_macroparticle_per_cell = [10]))
104129

130+
# Add beam electrons
131+
sim.add_species(
132+
beam,
133+
layout = picmi.PseudoRandomLayout(grid = grid, n_macroparticles = 100))
134+
105135
# Add laser
106136
sim.add_laser(
107137
laser,

Examples/Physics_applications/laser_acceleration/PICMI_inputs_3d.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,31 @@
5757
name = 'electrons',
5858
initial_distribution = uniform_distribution)
5959

60+
# Particles: beam electrons
61+
q_tot = 1e-12
62+
x_m = 0.
63+
y_m = 0.
64+
z_m = -28e-06
65+
x_rms = 0.5e-06
66+
y_rms = 0.5e-06
67+
z_rms = 0.5e-06
68+
ux_m = 0.
69+
uy_m = 0.
70+
uz_m = 500.
71+
ux_th = 2.
72+
uy_th = 2.
73+
uz_th = 50.
74+
gaussian_bunch_distribution = picmi.GaussianBunchDistribution(
75+
n_physical_particles = q_tot / q_e,
76+
rms_bunch_size = [x_rms, y_rms, z_rms],
77+
rms_velocity = [c*ux_th, c*uy_th, c*uz_th],
78+
centroid_position = [x_m, y_m, z_m],
79+
centroid_velocity = [c*ux_m, c*uy_m, c*uz_m])
80+
beam = picmi.Species(
81+
particle_type = 'electron',
82+
name = 'beam',
83+
initial_distribution = gaussian_bunch_distribution)
84+
6085
# Laser
6186
e_max = 16e12
6287
position_z = 9e-06
@@ -108,6 +133,11 @@
108133
electrons,
109134
layout = picmi.GriddedLayout(grid = grid, n_macroparticle_per_cell = [1, 1, 1]))
110135

136+
# Add beam electrons
137+
sim.add_species(
138+
beam,
139+
layout = picmi.PseudoRandomLayout(grid = grid, n_macroparticles = 100))
140+
111141
# Add laser
112142
sim.add_laser(
113143
laser,
Lines changed: 27 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,36 @@
11
{
2+
"beam": {
3+
"particle_cpu": 0.0,
4+
"particle_id": 5050.0,
5+
"particle_momentum_x": 4.707586336874016e-20,
6+
"particle_momentum_y": 4.4850722108112576e-20,
7+
"particle_momentum_z": 1.36054441043288e-17,
8+
"particle_position_x": 4.058764306495361e-05,
9+
"particle_position_y": 3.7888695722549883e-05,
10+
"particle_position_z": 0.00019656701118308398,
11+
"particle_weight": 6241509.074460764
12+
},
213
"electrons": {
314
"particle_cpu": 69212.0,
415
"particle_id": 2655287162.0,
5-
"particle_momentum_x": 1.79212316501518e-20,
6-
"particle_momentum_y": 7.225819832716737e-20,
7-
"particle_momentum_z": 4.231725460519779e-20,
8-
"particle_position_x": 0.7139122621161638,
9-
"particle_position_y": 0.7150340887578206,
10-
"particle_position_z": 1.317577060864619,
16+
"particle_momentum_x": 1.7921232203945004e-20,
17+
"particle_momentum_y": 7.225819894813053e-20,
18+
"particle_momentum_z": 4.231725460173154e-20,
19+
"particle_position_x": 0.7139122621161993,
20+
"particle_position_y": 0.7150340887578637,
21+
"particle_position_z": 1.3175770600690966,
1122
"particle_weight": 12926557617.187498
1223
},
1324
"lev=0": {
14-
"Bx": 5863879.027613791,
15-
"By": 2411.49823974812,
16-
"Bz": 116025.4367923822,
17-
"Ex": 6267728226590.701,
18-
"Ey": 1670763224821434.0,
19-
"Ez": 104345981838458.8,
20-
"jx": 555687757148559.1,
21-
"jy": 1595895515963762.0,
22-
"jz": 1045266123023548.0,
23-
"rho": 2211742630.95043
25+
"Bx": 5866866.85492377,
26+
"By": 11177.920546471447,
27+
"Bz": 116026.93444649166,
28+
"Ex": 8178548880638.266,
29+
"Ey": 1671614207789070.8,
30+
"Ez": 106548168484665.61,
31+
"jx": 555903247963958.4,
32+
"jy": 1595974150308405.2,
33+
"jz": 1366292284444382.5,
34+
"rho": 2212813480.6236324
2435
}
2536
}
Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,13 @@
11
{
2+
"beam": {
3+
"particle_cpu": 0.0,
4+
"particle_id": 0.0,
5+
"particle_momentum_x": 0.0,
6+
"particle_momentum_y": 0.0,
7+
"particle_momentum_z": 0.0,
8+
"particle_position_x": 0.0,
9+
"particle_weight": 0.0
10+
},
211
"electrons": {
312
"particle_cpu": 0.0,
413
"particle_id": 0.0,
@@ -9,15 +18,15 @@
918
"particle_weight": 0.0
1019
},
1120
"lev=0": {
12-
"Bx": 178016.7504669478,
13-
"By": 0.0,
21+
"Bx": 178038.73328943978,
22+
"By": 21.80404352678598,
1423
"Bz": 0.0,
15-
"Ex": 0.0,
16-
"Ey": 40878227583310.83,
17-
"Ez": 568254685.6950157,
18-
"jx": 0.0,
19-
"jy": 30442928969125.46,
20-
"jz": 1108530282155.6707,
21-
"rho": 3127749.1976868743
24+
"Ex": 6500587789.693293,
25+
"Ey": 40880870929309.17,
26+
"Ez": 2526222236149.224,
27+
"jx": 1073234194657.4467,
28+
"jy": 33548056437319.6,
29+
"jz": 1542998901893716.0,
30+
"rho": 18186572.727098644
2231
}
2332
}

0 commit comments

Comments
 (0)