aboutsummaryrefslogtreecommitdiff
path: root/Examples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py
diff options
context:
space:
mode:
authorGravatar Edoardo Zoni <59625522+EZoni@users.noreply.github.com> 2022-12-02 20:20:17 -0800
committerGravatar GitHub <noreply@github.com> 2022-12-02 20:20:17 -0800
commit2857ca08a97b3a8f82d902480816acac0b9614d6 (patch)
tree5999a62464445e491eeb81a96444f48c0fa41125 /Examples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py
parent3b6a467d1b7dd79ce90b02048dd1c6a0db7b138d (diff)
downloadWarpX-2857ca08a97b3a8f82d902480816acac0b9614d6.tar.gz
WarpX-2857ca08a97b3a8f82d902480816acac0b9614d6.tar.zst
WarpX-2857ca08a97b3a8f82d902480816acac0b9614d6.zip
Clean up examples folders (#3545)
* Clean up examples folders * Use `snake_case` names * Rename `nci_corrector` as `nci_fdtd_stability`
Diffstat (limited to 'Examples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py')
-rwxr-xr-xExamples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py133
1 files changed, 0 insertions, 133 deletions
diff --git a/Examples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py b/Examples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py
deleted file mode 100755
index d7d023ef6..000000000
--- a/Examples/Modules/ParticleBoundaryProcess/PICMI_inputs_reflection.py
+++ /dev/null
@@ -1,133 +0,0 @@
-#!/usr/bin/env python3
-#
-# --- Input file to test particle reflection off an absorbing boundary
-
-from pywarpx import picmi
-
-constants = picmi.constants
-
-##########################
-# numerics parameters
-##########################
-
-dt = 7.5e-12
-
-# --- Nb time steps
-
-max_steps = 10
-
-# --- grid
-
-nx = 64
-nz = 64
-
-xmin = -125e-6
-zmin = -149e-6
-xmax = 125e-6
-zmax = 1e-6
-
-
-##########################
-# numerics components
-##########################
-
-grid = picmi.Cartesian2DGrid(
- number_of_cells = [nx, nz],
- lower_bound = [xmin, zmin],
- upper_bound = [xmax, zmax],
- lower_boundary_conditions = ['dirichlet', 'dirichlet'],
- upper_boundary_conditions = ['dirichlet', 'dirichlet'],
- lower_boundary_conditions_particles = ['open', 'absorbing'],
- upper_boundary_conditions_particles = ['open', 'absorbing'],
- warpx_max_grid_size = 32
-)
-
-solver = picmi.ElectrostaticSolver(
- grid=grid, method='Multigrid', required_precision=1e-6,
- warpx_self_fields_verbosity=0
-)
-
-#embedded_boundary = picmi.EmbeddedBoundary(
-# implicit_function="-max(max(x-12.5e-6,-12.5e-6-x),max(z+6.15e-5,-8.65e-5-z))"
-#)
-
-##########################
-# physics components
-##########################
-
-uniform_plasma_elec = picmi.UniformDistribution(
- density = 1e15, # number of electrons per m^3
- lower_bound = [-1e-5, -1e-5, -125e-6],
- upper_bound = [1e-5, 1e-5, -120e-6],
- directed_velocity = [0., 0., 5e6] # uth the std of the (unitless) momentum
-)
-
-electrons = picmi.Species(
- particle_type='electron', name='electrons',
- initial_distribution=uniform_plasma_elec,
- warpx_save_particles_at_zhi=1,
- warpx_save_particles_at_zlo=1,
- warpx_reflection_model_zhi="0.5"
-)
-
-##########################
-# diagnostics
-##########################
-
-field_diag = picmi.ParticleDiagnostic(
- species=electrons,
- name = 'diag1',
- data_list=['previous_positions'],
- period = 10,
- write_dir = '.',
- warpx_file_prefix = 'Python_particle_reflection_plt'
-)
-
-##########################
-# simulation setup
-##########################
-
-sim = picmi.Simulation(
- solver = solver,
- time_step_size = dt,
- max_steps = max_steps,
- # warpx_embedded_boundary=embedded_boundary,
- verbose = 1
-)
-
-sim.add_species(
- electrons,
- layout = picmi.GriddedLayout(
- n_macroparticle_per_cell=[5, 2], grid=grid
- )
-)
-sim.add_diagnostic(field_diag)
-
-##########################
-# simulation run
-##########################
-
-sim.step(max_steps)
-
-################################################
-# check that the wrappers to access the particle
-# buffer functions as intended
-################################################
-
-n = sim.extension.get_particle_boundary_buffer_size("electrons", 'z_hi')
-print("Number of electrons in upper buffer:", n)
-assert n == 63
-
-n = sim.extension.get_particle_boundary_buffer_size("electrons", 'z_lo')
-print("Number of electrons in lower buffer:", n)
-assert n == 67
-
-scraped_steps = sim.extension.get_particle_boundary_buffer("electrons", 'z_hi', 'step_scraped', 0)
-for arr in scraped_steps:
- # print(arr)
- assert all(arr == 4)
-
-scraped_steps = sim.extension.get_particle_boundary_buffer("electrons", 'z_lo', 'step_scraped', 0)
-for arr in scraped_steps:
- # print(arr)
- assert all(arr == 8)