diff options
author | 2023-02-27 13:04:58 -0800 | |
---|---|---|
committer | 2023-02-27 21:04:58 +0000 | |
commit | 3ac71fef9b83a3c3f94a93b492aec58329b546cc (patch) | |
tree | 53393c94f21b046bf777efeee1c55dc632c6956e /Python/pywarpx/picmi.py | |
parent | ce188a26a22c99f5c4b297c9ffab6fc3c5c0e180 (diff) | |
download | WarpX-3ac71fef9b83a3c3f94a93b492aec58329b546cc.tar.gz WarpX-3ac71fef9b83a3c3f94a93b492aec58329b546cc.tar.zst WarpX-3ac71fef9b83a3c3f94a93b492aec58329b546cc.zip |
Change plotfile RZ allowed diags to r,t from x,y (#3663)
* change plotfile RZ allowed diag to r,t from x,y
* Change labeling in checksums
* add rz silver mueller analysis script
* make analysis_silver_mueller_rz.py executable
* change x,y fields to r,t in more tests
* x->r in MR RZ checksums
* correct analysis for plotfiles saved as 'boxlib'
* add self to creator list
* change rz diags in PICMI
* correct PICMI changes
* another y->t in an rz test
* update picmi plotfile rz btd names
* review suggestion to condense analysis
* Apply suggestions from code review
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
---------
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
Diffstat (limited to 'Python/pywarpx/picmi.py')
-rw-r--r-- | Python/pywarpx/picmi.py | 69 |
1 files changed, 44 insertions, 25 deletions
diff --git a/Python/pywarpx/picmi.py b/Python/pywarpx/picmi.py index 45dfaa3dd..ce82ea5c9 100644 --- a/Python/pywarpx/picmi.py +++ b/Python/pywarpx/picmi.py @@ -1746,27 +1746,39 @@ class FieldDiagnostic(picmistandard.PICMI_FieldDiagnostic, WarpXDiagnosticBase): # --- Use a set to ensure that fields don't get repeated. fields_to_plot = set() + if pywarpx.geometry.dims == 'RZ': + E_fields_list = ['Er', 'Et', 'Ez'] + B_fields_list = ['Br', 'Bt', 'Bz'] + J_fields_list = ['Jr', 'Jt', 'Jz'] + A_fields_list = ['Ar', 'At', 'Az'] + else: + E_fields_list = ['Ex', 'Ey', 'Ez'] + B_fields_list = ['Bx', 'By', 'Bz'] + J_fields_list = ['Jx', 'Jy', 'Jz'] + A_fields_list = ['Ax', 'Ay', 'Az'] if self.data_list is not None: for dataname in self.data_list: if dataname == 'E': - fields_to_plot.add('Ex') - fields_to_plot.add('Ey') - fields_to_plot.add('Ez') + for field_name in E_fields_list: + fields_to_plot.add(field_name) elif dataname == 'B': - fields_to_plot.add('Bx') - fields_to_plot.add('By') - fields_to_plot.add('Bz') + for field_name in B_fields_list: + fields_to_plot.add(field_name) elif dataname == 'J': - fields_to_plot.add('jx') - fields_to_plot.add('jy') - fields_to_plot.add('jz') + for field_name in J_fields_list: + fields_to_plot.add(field_name.lower()) elif dataname == 'A': - fields_to_plot.add('Ax') - fields_to_plot.add('Ay') - fields_to_plot.add('Az') - elif dataname in ['Ex', 'Ey', 'Ez', 'Bx', 'By', 'Bz', 'Ax', 'Ay', 'Az', 'rho', 'phi', 'F', 'proc_number', 'part_per_cell']: + for field_name in A_fields_list: + fields_to_plot.add(field_name) + elif dataname in E_fields_list: + fields_to_plot.add(dataname) + elif dataname in B_fields_list: + fields_to_plot.add(dataname) + elif dataname in A_fields_list: fields_to_plot.add(dataname) - elif dataname in ['Jx', 'Jy', 'Jz']: + elif dataname in ['rho', 'phi', 'F', 'proc_number', 'part_per_cell']: + fields_to_plot.add(dataname) + elif dataname in J_fields_list: fields_to_plot.add(dataname.lower()) elif dataname.startswith('rho_'): # Adds rho_species diagnostic @@ -2015,23 +2027,30 @@ class LabFrameFieldDiagnostic(picmistandard.PICMI_LabFrameFieldDiagnostic, # --- Use a set to ensure that fields don't get repeated. fields_to_plot = set() + if pywarpx.geometry.dims == 'RZ': + E_fields_list = ['Er', 'Et', 'Ez'] + B_fields_list = ['Br', 'Bt', 'Bz'] + J_fields_list = ['Jr', 'Jt', 'Jz'] + else: + E_fields_list = ['Ex', 'Ey', 'Ez'] + B_fields_list = ['Bx', 'By', 'Bz'] + J_fields_list = ['Jx', 'Jy', 'Jz'] if self.data_list is not None: for dataname in self.data_list: if dataname == 'E': - fields_to_plot.add('Ex') - fields_to_plot.add('Ey') - fields_to_plot.add('Ez') + for field_name in E_fields_list: + fields_to_plot.add(field_name) elif dataname == 'B': - fields_to_plot.add('Bx') - fields_to_plot.add('By') - fields_to_plot.add('Bz') + for field_name in B_fields_list: + fields_to_plot.add(field_name) elif dataname == 'J': - fields_to_plot.add('jx') - fields_to_plot.add('jy') - fields_to_plot.add('jz') - elif dataname in ['Ex', 'Ey', 'Ez', 'Bx', 'By', 'Bz', 'rho']: + for field_name in J_fields_list: + fields_to_plot.add(field_name.lower()) + elif dataname in E_fields_list: + fields_to_plot.add(dataname) + elif dataname in B_fields_list: fields_to_plot.add(dataname) - elif dataname in ['Jx', 'Jy', 'Jz']: + elif dataname in J_fields_list: fields_to_plot.add(dataname.lower()) elif dataname.startswith('rho_'): # Adds rho_species diagnostic |