diff options
author | 2019-06-11 13:49:39 -0700 | |
---|---|---|
committer | 2019-06-11 13:49:39 -0700 | |
commit | 3a6dac11bd60a88669dd3f86b065e7675e276098 (patch) | |
tree | 88e8326129da79ed3be8faeffd0afd589cae1585 /Python/pywarpx/picmi.py | |
parent | 5b9a4a219450f2f158f3238f525f19bb0670bea6 (diff) | |
parent | 4c01a51d48f0f95b6ac309060d279145c5443064 (diff) | |
download | WarpX-3a6dac11bd60a88669dd3f86b065e7675e276098.tar.gz WarpX-3a6dac11bd60a88669dd3f86b065e7675e276098.tar.zst WarpX-3a6dac11bd60a88669dd3f86b065e7675e276098.zip |
Merge branch 'dev' into RZgeometry
Diffstat (limited to 'Python/pywarpx/picmi.py')
-rw-r--r-- | Python/pywarpx/picmi.py | 63 |
1 files changed, 33 insertions, 30 deletions
diff --git a/Python/pywarpx/picmi.py b/Python/pywarpx/picmi.py index 151de388d..80d8e01e7 100644 --- a/Python/pywarpx/picmi.py +++ b/Python/pywarpx/picmi.py @@ -94,24 +94,25 @@ class GaussianBunchDistribution(picmistandard.PICMI_GaussianBunchDistribution): #species.zmin #species.zmax + # --- Note that WarpX takes gamma*beta as input if np.any(np.not_equal(self.velocity_divergence, 0.)): species.momentum_distribution_type = "radial_expansion" - species.u_over_r = self.velocity_divergence[0] - #species.u_over_y = self.velocity_divergence[1] - #species.u_over_z = self.velocity_divergence[2] + species.u_over_r = self.velocity_divergence[0]/c + #species.u_over_y = self.velocity_divergence[1]/c + #species.u_over_z = self.velocity_divergence[2]/c elif np.any(np.not_equal(self.rms_velocity, 0.)): species.momentum_distribution_type = "gaussian" - species.ux_m = self.centroid_velocity[0] - species.uy_m = self.centroid_velocity[1] - species.uz_m = self.centroid_velocity[2] - species.ux_th = self.rms_velocity[0] - species.uy_th = self.rms_velocity[1] - species.uz_th = self.rms_velocity[2] + species.ux_m = self.centroid_velocity[0]/c + species.uy_m = self.centroid_velocity[1]/c + species.uz_m = self.centroid_velocity[2]/c + species.ux_th = self.rms_velocity[0]/c + species.uy_th = self.rms_velocity[1]/c + species.uz_th = self.rms_velocity[2]/c else: species.momentum_distribution_type = "constant" - species.ux = self.centroid_velocity[0] - species.uy = self.centroid_velocity[1] - species.uz = self.centroid_velocity[2] + species.ux = self.centroid_velocity[0]/c + species.uy = self.centroid_velocity[1]/c + species.uz = self.centroid_velocity[2]/c class UniformDistribution(picmistandard.PICMI_UniformDistribution): @@ -139,19 +140,20 @@ class UniformDistribution(picmistandard.PICMI_UniformDistribution): species.profile = "constant" species.density = self.density + # --- Note that WarpX takes gamma*beta as input if np.any(np.not_equal(self.rms_velocity, 0.)): species.momentum_distribution_type = "gaussian" - species.ux_m = self.directed_velocity[0] - species.uy_m = self.directed_velocity[1] - species.uz_m = self.directed_velocity[2] - species.ux_th = self.rms_velocity[0] - species.uy_th = self.rms_velocity[1] - species.uz_th = self.rms_velocity[2] + species.ux_m = self.directed_velocity[0]/c + species.uy_m = self.directed_velocity[1]/c + species.uz_m = self.directed_velocity[2]/c + species.ux_th = self.rms_velocity[0]/c + species.uy_th = self.rms_velocity[1]/c + species.uz_th = self.rms_velocity[2]/c else: species.momentum_distribution_type = "constant" - species.ux = self.directed_velocity[0] - species.uy = self.directed_velocity[1] - species.uz = self.directed_velocity[2] + species.ux = self.directed_velocity[0]/c + species.uy = self.directed_velocity[1]/c + species.uz = self.directed_velocity[2]/c if self.fill_in: species.do_continuous_injection = 1 @@ -185,19 +187,20 @@ class AnalyticDistribution(picmistandard.PICMI_AnalyticDistribution): for k,v in self.user_defined_kw.items(): setattr(pywarpx.my_constants, k, v) + # --- Note that WarpX takes gamma*beta as input if np.any(np.not_equal(self.rms_velocity, 0.)): species.momentum_distribution_type = "gaussian" - species.ux_m = self.directed_velocity[0] - species.uy_m = self.directed_velocity[1] - species.uz_m = self.directed_velocity[2] - species.ux_th = self.rms_velocity[0] - species.uy_th = self.rms_velocity[1] - species.uz_th = self.rms_velocity[2] + species.ux_m = self.directed_velocity[0]/c + species.uy_m = self.directed_velocity[1]/c + species.uz_m = self.directed_velocity[2]/c + species.ux_th = self.rms_velocity[0]/c + species.uy_th = self.rms_velocity[1]/c + species.uz_th = self.rms_velocity[2]/c else: species.momentum_distribution_type = "constant" - species.ux = self.directed_velocity[0] - species.uy = self.directed_velocity[1] - species.uz = self.directed_velocity[2] + species.ux = self.directed_velocity[0]/c + species.uy = self.directed_velocity[1]/c + species.uz = self.directed_velocity[2]/c if self.fill_in: species.do_continuous_injection = 1 |