blob: ba98558be47bd82903a85733e5108bab36dba936 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
warpx.zmax_plasma_to_compute_max_step = 0.0055
amr.n_cell = 32 32 64
amr.max_grid_size = 64
amr.blocking_factor = 32
amr.max_level = 0
my_constants.xmin = -128.e-6
my_constants.ymin = -128.e-6
my_constants.zmin = -40.e-6
my_constants.xmax = +128.e-6
my_constants.ymax = +128.e-6
my_constants.zmax = 0.e-6
geometry.dims = 3
geometry.prob_lo = xmin ymin zmin
geometry.prob_hi = xmax ymax zmax
boundary.field_lo = periodic periodic pec
boundary.field_hi = periodic periodic pec
algo.current_deposition = esirkepov
algo.charge_deposition = standard
algo.field_gathering = energy-conserving
algo.particle_pusher = vay
algo.maxwell_solver = ckc
warpx.use_filter = 1
warpx.cfl = 1.
# Order of particle shape factors
algo.particle_shape = 3
warpx.do_moving_window = 1
warpx.moving_window_dir = z
warpx.moving_window_v = 1.0 # in units of the speed of light
warpx.serialize_initial_conditions = 1
warpx.gamma_boost = 10.
warpx.boost_direction = z
particles.species_names = electrons ions beam
particles.use_fdtd_nci_corr = 1
electrons.charge = -q_e
electrons.mass = m_e
electrons.injection_style = NUniformPerCell
electrons.num_particles_per_cell_each_dim = 1 1 1
electrons.momentum_distribution_type = "at_rest"
electrons.xmin = -120.e-6
electrons.xmax = 120.e-6
electrons.ymin = -120.e-6
electrons.ymax = 120.e-6
electrons.zmin = 0.
electrons.zmax = .003
electrons.profile = constant
electrons.density = 3.5e24
electrons.do_continuous_injection = 1
ions.charge = q_e
ions.mass = m_p
ions.injection_style = NUniformPerCell
ions.num_particles_per_cell_each_dim = 1 1 1
ions.momentum_distribution_type = "at_rest"
ions.xmin = -120.e-6
ions.xmax = 120.e-6
ions.ymin = -120.e-6
ions.ymax = 120.e-6
ions.zmin = 0.
ions.zmax = .003
ions.profile = constant
ions.density = 3.5e24
ions.do_continuous_injection = 1
beam.charge = -q_e
beam.mass = m_e
beam.injection_style = "gaussian_beam"
beam.x_rms = 1.e-6
beam.y_rms = 1.e-6
beam.z_rms = .2e-6
beam.x_m = 0.
beam.y_m = 0.
beam.z_m = -20.e-6
beam.npart = 1000
beam.q_tot = -1.e-14
beam.momentum_distribution_type = "gaussian"
beam.ux_m = 0.0
beam.uy_m = 0.0
beam.uz_m = 200000.
beam.ux_th = .2
beam.uy_th = .2
beam.uz_th = 20.
lasers.names = laser1
laser1.profile = Gaussian
laser1.position = 0. 0. -0.1e-6 # This point is on the laser plane
laser1.direction = 0. 0. 1. # The plane normal direction
laser1.polarization = 0. 1. 0. # The main polarization vector
laser1.e_max = 2.e12 # Maximum amplitude of the laser field (in V/m)
laser1.profile_waist = 45.e-6 # The waist of the laser (in meters)
laser1.profile_duration = 20.e-15 # The duration of the laser (in seconds)
laser1.profile_t_peak = 40.e-15 # The time at which the laser reaches its peak (in seconds)
laser1.profile_focal_distance = 0.5e-3 # Focal distance from the antenna (in meters)
laser1.wavelength = 0.81e-6 # The wavelength of the laser (in meters)
# Diagnostics
diagnostics.diags_names = diag1 diag2
diag1.diag_type = BackTransformed
diag1.do_back_transformed_fields = 1
diag1.num_snapshots_lab = 4
diag1.dz_snapshots_lab = 0.001
diag1.fields_to_plot = Ex Ey Ez Bx By Bz jx jy jz rho
diag1.format = plotfile
diag1.buffer_size = 32
diag1.write_species = 1
diag2.diag_type = BackTransformed
diag2.do_back_transformed_fields = 1
diag2.intervals = 0:3:2, 1:3:2
diag2.dz_snapshots_lab = 0.001
diag2.fields_to_plot = Ex Ey Ez Bx By Bz jx jy jz rho
diag2.format = openpmd
diag2.buffer_size = 32
diag2.openpmd_backend = h5
|