diff options
author | 2019-06-05 19:01:26 -0400 | |
---|---|---|
committer | 2019-06-05 19:01:26 -0400 | |
commit | f0f8a8da1c7d57f5feff454f4e22099ca6dc09d2 (patch) | |
tree | 1b0b3408d70d5c312954fb3c4ff0284d5e2c99f0 /Python/pywarpx/picmi.py | |
parent | c3a5d1fa06f1c2670d7df1cc9d4acc6852b82d1b (diff) | |
parent | 6faec7af00055eb58000967f2aa6415516533a34 (diff) | |
download | WarpX-f0f8a8da1c7d57f5feff454f4e22099ca6dc09d2.tar.gz WarpX-f0f8a8da1c7d57f5feff454f4e22099ca6dc09d2.tar.zst WarpX-f0f8a8da1c7d57f5feff454f4e22099ca6dc09d2.zip |
Merge branch 'dev' of https://github.com/ECP-WarpX/WarpX into spectral_cufftOnGPU
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 f242f8589..f6dc47fec 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 |