# Initialize a deuterium-deuterium thermal plasma similar to that in # section 4.1 of [1], with fusion multiplication factor 1e10, # 1e4 particles per cell, density 1e20/cm^3, temperature 20 keV. # # Reference: # [1] Higginson, D.P., Link, A. and Schmidt, A., 2019. # A pairwise nuclear fusion algorithm for weighted particle-in-cell # plasma simulations. Journal of Computational Physics, 388, pp.439-453. # DOI: https://doi.org/10.1016/j.jcp.2019.03.020 # algo algo.particle_shape = 3 # amr amr.max_level = 0 amr.n_cell = 8 8 8 # boundary boundary.field_hi = periodic periodic periodic boundary.field_lo = periodic periodic periodic # collisions collisions.collision_names = dd_collision # dd_collision dd_collision.fusion_multiplier = 1e10 dd_collision.product_species = helium3 neutron dd_collision.species = deuterium deuterium dd_collision.type = nuclearfusion # deuterium deuterium.density = 1e26 deuterium.do_not_deposit = 1 deuterium.do_not_push = 1 deuterium.injection_style = "NRandomPerCell" deuterium.momentum_distribution_type = "gaussian" deuterium.num_particles_per_cell = 10000 deuterium.profile = constant deuterium.species_type = deuterium deuterium.ux_m = 0. deuterium.uy_m = 0. deuterium.uz_m = 0. # the standard deviation for the thermal momentum distribution is computed # from the plasma temperature as sqrt(kB*T/(mD*c**2)), where kB*T = 20 keV # and mD = 2.01410177812 u = 2.01410177812 * 931.49410242 MeV/c**2 deuterium.ux_th = 0.003265007901313691 deuterium.uy_th = 0.003265007901313691 deuterium.uz_th = 0.003265007901313691 deuterium.xmax = 1e-3 deuterium.xmin = -1e-3 deuterium.ymax = 1e-3 deuterium.ymin = -1e-3 deuterium.zmax = 1e-3 deuterium.zmin = -1e-3 # diag diag1.diag_type = Full diag1.fields_to_plot = rho rho_deuterium rho_helium3 diag1.intervals = 1 # diagnostics diagnostics.diags_names = diag1 # geometry geometry.dims = 3 geometry.prob_hi = 1e-3 1e-3 1e-3 geometry.prob_lo = -1e-3 -1e-3 -1e-3 # helium3 helium3.do_not_deposit = 1 helium3.do_not_push = 1 helium3.species_type = helium3 # max_step max_step = 10 # neutron neutron.do_not_deposit = 1 neutron.do_not_push = 1 neutron.species_type = neutron # particle_number particle_number.type = ParticleNumber particle_number.intervals = 1 particle_number.path = "./reduced_diags/" # particles particles.species_names = deuterium helium3 neutron # warpx warpx.cfl = 1.0 warpx.numprocs = 1 1 1 warpx.reduced_diags_names = particle_number warpx.verbose = 1