diff options
author | 2022-02-04 17:12:55 -0800 | |
---|---|---|
committer | 2022-02-05 01:12:55 +0000 | |
commit | 5692067b01252146b8d0a90137a1bd952644c8ca (patch) | |
tree | bfb704a14588a54207b883254264a8c474d65a14 /Source/Particles/RigidInjectedParticleContainer.cpp | |
parent | 9263e6a9832f7ec69a8cc54fda3f6f1de51caaf1 (diff) | |
download | WarpX-5692067b01252146b8d0a90137a1bd952644c8ca.tar.gz WarpX-5692067b01252146b8d0a90137a1bd952644c8ca.tar.zst WarpX-5692067b01252146b8d0a90137a1bd952644c8ca.zip |
Fixes removing implicit double to float conversions (#2687)
* Fixes removing implicit double to float conversions
* Minor fix in Evolve
* Removed comments
* Reverted amrex::second to original version.
This change will be made in a separate PR
* More fixes
* Performance: pow2 & pow3
* One more pow2
* Cleaning: auto where types are repetitive
std::pow(float, int): see comments and
https://stackoverflow.com/a/5627278/2719194
Diffstat (limited to 'Source/Particles/RigidInjectedParticleContainer.cpp')
-rw-r--r-- | Source/Particles/RigidInjectedParticleContainer.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/Source/Particles/RigidInjectedParticleContainer.cpp b/Source/Particles/RigidInjectedParticleContainer.cpp index e6f41c327..347acd2b5 100644 --- a/Source/Particles/RigidInjectedParticleContainer.cpp +++ b/Source/Particles/RigidInjectedParticleContainer.cpp @@ -92,10 +92,10 @@ RigidInjectedParticleContainer::RemapParticles() // For now, start with the assumption that this will only happen // at the start of the simulation. - const Real t_lab = 0.; + const Real t_lab = 0._rt; const Real uz_boost = WarpX::gamma_boost*WarpX::beta_boost*PhysConst::c; - const Real csqi = 1./(PhysConst::c*PhysConst::c); + const Real csqi = 1._rt/(PhysConst::c*PhysConst::c); vzbeam_ave_boosted = meanParticleVelocity(false)[2]; @@ -128,7 +128,7 @@ RigidInjectedParticleContainer::RemapParticles() ParticleReal xp, yp, zp; GetPosition(i, xp, yp, zp); - const Real gammapr = std::sqrt(1. + (uxp[i]*uxp[i] + uyp[i]*uyp[i] + uzp[i]*uzp[i])*csqi); + const Real gammapr = std::sqrt(1._rt + (uxp[i]*uxp[i] + uyp[i]*uyp[i] + uzp[i]*uzp[i])*csqi); const Real vzpr = uzp[i]/gammapr; // Back out the value of z_lab @@ -236,7 +236,7 @@ RigidInjectedParticleContainer::PushPX (WarpXParIter& pti, const Real z_plane_lev = zinject_plane_lev; const Real vz_ave_boosted = vzbeam_ave_boosted; const bool rigid = rigid_advance; - const Real inv_csq = 1./(PhysConst::c*PhysConst::c); + const Real inv_csq = 1._rt/(PhysConst::c*PhysConst::c); amrex::ParallelFor( pti.numParticles(), [=] AMREX_GPU_DEVICE (long i) { ParticleReal xp, yp, zp; @@ -251,7 +251,7 @@ RigidInjectedParticleContainer::PushPX (WarpXParIter& pti, zp = z_save[i] + dt*vz_ave_boosted; } else { - const Real gi = 1./std::sqrt(1. + (ux[i]*ux[i] + uy[i]*uy[i] + uz[i]*uz[i])*inv_csq); + const Real gi = 1._rt/std::sqrt(1._rt + (ux[i]*ux[i] + uy[i]*uy[i] + uz[i]*uz[i])*inv_csq); zp = z_save[i] + dt*uz[i]*gi; } SetPosition(i, xp, yp, zp); |