From d411310e45a370cfde872b25baa7a9f20bcf4966 Mon Sep 17 00:00:00 2001 From: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com> Date: Wed, 22 Dec 2021 15:32:36 -0800 Subject: Change _libwarpx.py functions to LibWarpX class methods (#2696) * Initial attempt at moving function into LibWarpX * Bugfix - undefined structs in get_particle_theta This is untested, identified by IDE/visual inspection only * Unify newlines * Delete libwarpx.clight (duplicated picmi.py) See picmi.constants.c * Change function descriptive comment to docstring Also remove extra newline in __init__ beginning. * Replace pywarpx/_libwarpx calls appropriately * Fix atexit register of finalize function * Reorder WarpX.py imports for pre-commit * Use picmi.Simulation.extension = libwarpx alias This will hopefully preempt user script changes if we restructure things to allow multiple WarpX runs to be done within a single Python script. * Fix libwarpx ref in WarpX.getProbLo/getProbHi * Update get_particle_boundary_buffer doc reference --- Examples/Tests/ParticleDataPython/PICMI_inputs_2d.py | 15 +++++++-------- .../Tests/ParticleDataPython/PICMI_inputs_prev_pos_2d.py | 7 +++---- 2 files changed, 10 insertions(+), 12 deletions(-) (limited to 'Examples/Tests/ParticleDataPython') diff --git a/Examples/Tests/ParticleDataPython/PICMI_inputs_2d.py b/Examples/Tests/ParticleDataPython/PICMI_inputs_2d.py index 6df8d676c..ff3c0704b 100755 --- a/Examples/Tests/ParticleDataPython/PICMI_inputs_2d.py +++ b/Examples/Tests/ParticleDataPython/PICMI_inputs_2d.py @@ -3,7 +3,6 @@ import argparse import sys import numpy as np -import pywarpx from pywarpx import callbacks, picmi # Create the parser and add the argument @@ -107,9 +106,9 @@ sim.initialize_warpx() ########################## -pywarpx.add_real_comp('electrons', 'newPid') +sim.extension.add_real_comp('electrons', 'newPid') -my_id = pywarpx.getMyProc() +my_id = sim.extension.getMyProc() def add_particles(): @@ -123,7 +122,7 @@ def add_particles(): w = np.ones(nps) * 2.0 newPid = 5.0 - pywarpx.add_particles( + sim.extension.add_particles( species_name='electrons', x=x, y=y, z=z, ux=ux, uy=uy, uz=uz, w=w, newPid=newPid, unique_particles=args.unique ) @@ -141,11 +140,11 @@ sim.step(max_steps - 1) # are properly set ########################## -assert (pywarpx.get_particle_count('electrons') == 270 / (2 - args.unique)) -assert (pywarpx.get_particle_comp_index('electrons', 'w') == 0) -assert (pywarpx.get_particle_comp_index('electrons', 'newPid') == 4) +assert (sim.extension.get_particle_count('electrons') == 270 / (2 - args.unique)) +assert (sim.extension.get_particle_comp_index('electrons', 'w') == 0) +assert (sim.extension.get_particle_comp_index('electrons', 'newPid') == 4) -new_pid_vals = pywarpx.get_particle_arrays( +new_pid_vals = sim.extension.get_particle_arrays( 'electrons', 'newPid', 0 ) for vals in new_pid_vals: diff --git a/Examples/Tests/ParticleDataPython/PICMI_inputs_prev_pos_2d.py b/Examples/Tests/ParticleDataPython/PICMI_inputs_prev_pos_2d.py index d71aa3fea..9cfe669ce 100755 --- a/Examples/Tests/ParticleDataPython/PICMI_inputs_prev_pos_2d.py +++ b/Examples/Tests/ParticleDataPython/PICMI_inputs_prev_pos_2d.py @@ -3,7 +3,6 @@ # --- Input file to test the saving of old particle positions import numpy as np -import pywarpx from pywarpx import picmi constants = picmi.constants @@ -110,10 +109,10 @@ sim.step(max_steps - 1) # exist ########################## -assert (pywarpx.get_particle_comp_index('electrons', 'prev_x') > 0) -assert (pywarpx.get_particle_comp_index('electrons', 'prev_z') > 0) +assert (sim.extension.get_particle_comp_index('electrons', 'prev_x') > 0) +assert (sim.extension.get_particle_comp_index('electrons', 'prev_z') > 0) -prev_z_vals = pywarpx.get_particle_arrays( +prev_z_vals = sim.extension.get_particle_arrays( 'electrons', 'prev_z', 0 ) for z_vals in prev_z_vals: -- cgit v1.2.3