diff options
Diffstat (limited to 'Examples/Tests/Langmuir/inputs.multi.rzmodes.rt')
-rw-r--r-- | Examples/Tests/Langmuir/inputs.multi.rzmodes.rt | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/Examples/Tests/Langmuir/inputs.multi.rzmodes.rt b/Examples/Tests/Langmuir/inputs.multi.rzmodes.rt new file mode 100644 index 000000000..9808163f4 --- /dev/null +++ b/Examples/Tests/Langmuir/inputs.multi.rzmodes.rt @@ -0,0 +1,95 @@ +# Runs test with RZ multimode solver +# Maximum number of time steps +max_step = 40 + +# number of grid points +amr.n_cell = 64 200 + +# Maximum allowable size of each subdomain in the problem domain; +# this is used to decompose the domain for parallel calculations. +amr.max_grid_size = 32 + +# Maximum level in hierarchy (for now must be 0, i.e., one level in total) +amr.max_level = 0 + +amr.plot_int = 40 # How often to write plotfiles. "<= 0" means no plotfiles. + +# Geometry +geometry.coord_sys = 1 # 0: Cartesian +geometry.is_periodic = 0 1 # Is periodic? +geometry.prob_lo = 0.e-6 -20.e-6 # physical domain +geometry.prob_hi = 20.e-6 20.e-6 + +warpx.nmodes = 3 + +warpx.serialize_ics = 1 +warpx.plot_raw_fields = 1 + +# Verbosity +warpx.verbose = 1 + +# Interpolation +interpolation.nox = 1 +interpolation.noy = 1 +interpolation.noz = 1 + +# CFL +warpx.cfl = 1.0 + +# dive is not supported with RZ multimode +warpx.do_dive_cleaning = 0 + +# Parameters for the plasma wave +my_constants.epsilon0 = 0.001 +my_constants.epsilon1 = 0.001 +my_constants.epsilon2 = 0.001 +my_constants.kp = 266125.0928256017 +my_constants.k0 = 314159.2653589793 +my_constants.w0 = 5.e-6 +# Note: kp is calculated in SI for a density of 2e24 +# k0 is calculated so as to have 2 periods within the 40e-6 wide box. + +# Particles +particles.nspecies = 2 +particles.species_names = electrons ions + +electrons.charge = -q_e +electrons.mass = m_e +electrons.injection_style = "NUniformPerCell" +electrons.num_particles_per_cell_each_dim = 2 8 2 +electrons.xmin = 0.e-6 +electrons.xmax = 18.e-6 +electrons.zmin = -20.e-6 +electrons.zmax = +20.e-6 + +electrons.profile = constant +electrons.density = 2.e24 # number of electrons per m^3 +electrons.momentum_distribution_type = parse_momentum_function +electrons.momentum_function_ux(x,y,z) = "+ epsilon0/kp*2*x/w0**2*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + - epsilon1/kp*2/w0*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + + epsilon1/kp*4*x**2/w0**3*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + - epsilon2/kp*8*x/w0**2*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + + epsilon2/kp*8*x*(x**2-y**2)/w0**4*exp(-(x**2+y**2)/w0**2)*sin(k0*z)" +electrons.momentum_function_uy(x,y,z) = "+ epsilon0/kp*2*y/w0**2*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + + epsilon1/kp*4*x*y/w0**3*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + + epsilon2/kp*8*y/w0**2*exp(-(x**2+y**2)/w0**2)*sin(k0*z) + + epsilon2/kp*8*y*(x**2-y**2)/w0**4*exp(-(x**2+y**2)/w0**2)*sin(k0*z)" +electrons.momentum_function_uz(x,y,z) = "- epsilon0/kp*k0*exp(-(x**2+y**2)/w0**2)*cos(k0*z) + - epsilon1/kp*k0*2*x/w0*exp(-(x**2+y**2)/w0**2)*cos(k0*z) + - epsilon2/kp*k0*4*(x**2-y**2)/w0**2*exp(-(x**2+y**2)/w0**2)*cos(k0*z)" + +ions.charge = q_e +ions.mass = m_p +ions.injection_style = "NUniformPerCell" +ions.num_particles_per_cell_each_dim = 2 8 2 +ions.xmin = 0.e-6 +ions.xmax = 18.e-6 +ions.zmin = -20.e-6 +ions.zmax = +20.e-6 + +ions.profile = constant +ions.density = 2.e24 # number of ions per m^3 +ions.momentum_distribution_type = constant +ions.ux = 0. +ions.uy = 0. +ions.uz = 0. |