aboutsummaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorGravatar Davide Terzani <titoiride@gmail.com> 2023-02-21 09:05:16 -0800
committerGravatar GitHub <noreply@github.com> 2023-02-21 09:05:16 -0800
commit8f31cea2a47749ca697b64a93837842f990312ed (patch)
tree155ec4b9d31063b407797203c2fa7202117ecd4c /Source
parent7eae30870646a2efbdf9164d46c75e540251e5f0 (diff)
downloadWarpX-8f31cea2a47749ca697b64a93837842f990312ed.tar.gz
WarpX-8f31cea2a47749ca697b64a93837842f990312ed.tar.zst
WarpX-8f31cea2a47749ca697b64a93837842f990312ed.zip
Renamed "particle_vel" to "particle_mom" (#3672)
* Renamed particle_vel to particle_mom * Changed vel to u * Updated gitignore with vscode-specific folder * Updated docs for single particle * Revert "Updated gitignore with vscode-specific folder" This reverts commit cb44ef8d66c123daa93d6a13d5a1d88416e866bb. * Fixed typo * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Fixed other typo * Add species indication in warning --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Diffstat (limited to 'Source')
-rw-r--r--Source/Initialization/PlasmaInjector.H8
-rw-r--r--Source/Initialization/PlasmaInjector.cpp22
-rw-r--r--Source/Particles/PhysicalParticleContainer.cpp24
-rw-r--r--Source/WarpX.cpp28
4 files changed, 55 insertions, 27 deletions
diff --git a/Source/Initialization/PlasmaInjector.H b/Source/Initialization/PlasmaInjector.H
index b49e6d88c..6ad4ec198 100644
--- a/Source/Initialization/PlasmaInjector.H
+++ b/Source/Initialization/PlasmaInjector.H
@@ -72,16 +72,16 @@ public:
bool add_single_particle = false;
amrex::Vector<amrex::ParticleReal> single_particle_pos;
- amrex::Vector<amrex::ParticleReal> single_particle_vel;
+ amrex::Vector<amrex::ParticleReal> single_particle_u;
amrex::ParticleReal single_particle_weight;
bool add_multiple_particles = false;
amrex::Vector<amrex::ParticleReal> multiple_particles_pos_x;
amrex::Vector<amrex::ParticleReal> multiple_particles_pos_y;
amrex::Vector<amrex::ParticleReal> multiple_particles_pos_z;
- amrex::Vector<amrex::ParticleReal> multiple_particles_vel_x;
- amrex::Vector<amrex::ParticleReal> multiple_particles_vel_y;
- amrex::Vector<amrex::ParticleReal> multiple_particles_vel_z;
+ amrex::Vector<amrex::ParticleReal> multiple_particles_ux;
+ amrex::Vector<amrex::ParticleReal> multiple_particles_uy;
+ amrex::Vector<amrex::ParticleReal> multiple_particles_uz;
amrex::Vector<amrex::ParticleReal> multiple_particles_weight;
bool gaussian_beam = false;
diff --git a/Source/Initialization/PlasmaInjector.cpp b/Source/Initialization/PlasmaInjector.cpp
index b6f9ae9ad..c828e663e 100644
--- a/Source/Initialization/PlasmaInjector.cpp
+++ b/Source/Initialization/PlasmaInjector.cpp
@@ -185,8 +185,8 @@ PlasmaInjector::PlasmaInjector (int ispecies, const std::string& name)
utils::parser::getArrWithParser(
pp_species_name, "single_particle_pos", single_particle_pos, 0, 3);
utils::parser::getArrWithParser(
- pp_species_name, "single_particle_vel", single_particle_vel, 0, 3);
- for (auto& x : single_particle_vel) {
+ pp_species_name, "single_particle_u", single_particle_u, 0, 3);
+ for (auto& x : single_particle_u) {
x *= PhysConst::c;
}
utils::parser::getWithParser(
@@ -201,24 +201,24 @@ PlasmaInjector::PlasmaInjector (int ispecies, const std::string& name)
utils::parser::getArrWithParser(
pp_species_name, "multiple_particles_pos_z", multiple_particles_pos_z);
utils::parser::getArrWithParser(
- pp_species_name, "multiple_particles_vel_x", multiple_particles_vel_x);
+ pp_species_name, "multiple_particles_ux", multiple_particles_ux);
utils::parser::getArrWithParser(
- pp_species_name, "multiple_particles_vel_y", multiple_particles_vel_y);
+ pp_species_name, "multiple_particles_uy", multiple_particles_uy);
utils::parser::getArrWithParser(
- pp_species_name, "multiple_particles_vel_z", multiple_particles_vel_z);
+ pp_species_name, "multiple_particles_uz", multiple_particles_uz);
utils::parser::getArrWithParser(
pp_species_name, "multiple_particles_weight", multiple_particles_weight);
WARPX_ALWAYS_ASSERT_WITH_MESSAGE(
((multiple_particles_pos_x.size() == multiple_particles_pos_y.size()) &&
(multiple_particles_pos_x.size() == multiple_particles_pos_z.size()) &&
- (multiple_particles_pos_x.size() == multiple_particles_vel_x.size()) &&
- (multiple_particles_pos_x.size() == multiple_particles_vel_y.size()) &&
- (multiple_particles_pos_x.size() == multiple_particles_vel_z.size()) &&
+ (multiple_particles_pos_x.size() == multiple_particles_ux.size()) &&
+ (multiple_particles_pos_x.size() == multiple_particles_uy.size()) &&
+ (multiple_particles_pos_x.size() == multiple_particles_uz.size()) &&
(multiple_particles_pos_x.size() == multiple_particles_weight.size())),
"Error: The multiple particles source quantities must all have the same number of elements");
- for (auto& vx : multiple_particles_vel_x) { vx *= PhysConst::c; }
- for (auto& vy : multiple_particles_vel_y) { vy *= PhysConst::c; }
- for (auto& vz : multiple_particles_vel_z) { vz *= PhysConst::c; }
+ for (auto& vx : multiple_particles_ux) { vx *= PhysConst::c; }
+ for (auto& vy : multiple_particles_uy) { vy *= PhysConst::c; }
+ for (auto& vz : multiple_particles_uz) { vz *= PhysConst::c; }
add_multiple_particles = true;
return;
} else if (injection_style == "gaussian_beam") {
diff --git a/Source/Particles/PhysicalParticleContainer.cpp b/Source/Particles/PhysicalParticleContainer.cpp
index 1390fdda6..3e4c60737 100644
--- a/Source/Particles/PhysicalParticleContainer.cpp
+++ b/Source/Particles/PhysicalParticleContainer.cpp
@@ -783,17 +783,17 @@ PhysicalParticleContainer::AddParticles (int lev)
MapParticletoBoostedFrame(plasma_injector->single_particle_pos[0],
plasma_injector->single_particle_pos[1],
plasma_injector->single_particle_pos[2],
- plasma_injector->single_particle_vel[0],
- plasma_injector->single_particle_vel[1],
- plasma_injector->single_particle_vel[2]);
+ plasma_injector->single_particle_u[0],
+ plasma_injector->single_particle_u[1],
+ plasma_injector->single_particle_u[2]);
}
AddNParticles(lev, 1,
&(plasma_injector->single_particle_pos[0]),
&(plasma_injector->single_particle_pos[1]),
&(plasma_injector->single_particle_pos[2]),
- &(plasma_injector->single_particle_vel[0]),
- &(plasma_injector->single_particle_vel[1]),
- &(plasma_injector->single_particle_vel[2]),
+ &(plasma_injector->single_particle_u[0]),
+ &(plasma_injector->single_particle_u[1]),
+ &(plasma_injector->single_particle_u[2]),
1, &(plasma_injector->single_particle_weight), 0, nullptr, 0);
return;
}
@@ -804,18 +804,18 @@ PhysicalParticleContainer::AddParticles (int lev)
MapParticletoBoostedFrame(plasma_injector->multiple_particles_pos_x[i],
plasma_injector->multiple_particles_pos_y[i],
plasma_injector->multiple_particles_pos_z[i],
- plasma_injector->multiple_particles_vel_x[i],
- plasma_injector->multiple_particles_vel_y[i],
- plasma_injector->multiple_particles_vel_z[i]);
+ plasma_injector->multiple_particles_ux[i],
+ plasma_injector->multiple_particles_uy[i],
+ plasma_injector->multiple_particles_uz[i]);
}
}
AddNParticles(lev, plasma_injector->multiple_particles_pos_x.size(),
plasma_injector->multiple_particles_pos_x.dataPtr(),
plasma_injector->multiple_particles_pos_y.dataPtr(),
plasma_injector->multiple_particles_pos_z.dataPtr(),
- plasma_injector->multiple_particles_vel_x.dataPtr(),
- plasma_injector->multiple_particles_vel_y.dataPtr(),
- plasma_injector->multiple_particles_vel_z.dataPtr(),
+ plasma_injector->multiple_particles_ux.dataPtr(),
+ plasma_injector->multiple_particles_uy.dataPtr(),
+ plasma_injector->multiple_particles_uz.dataPtr(),
1, plasma_injector->multiple_particles_weight.dataPtr(), 0, nullptr, 0);
return;
}
diff --git a/Source/WarpX.cpp b/Source/WarpX.cpp
index 21945d6fa..48037eaa1 100644
--- a/Source/WarpX.cpp
+++ b/Source/WarpX.cpp
@@ -1650,6 +1650,34 @@ WarpX::BackwardCompatibility ()
ablastr::warn_manager::WarnPriority::low);
}
+ std::vector<std::string> backward_sp_names;
+ pp_particles.queryarr("species_names", backward_sp_names);
+ for(std::string speciesiter : backward_sp_names){
+ ParmParse pp_species(speciesiter);
+ std::vector<amrex::Real> backward_vel;
+ std::stringstream ssspecies;
+
+ ssspecies << "'" << speciesiter << ".multiple_particles_vel_<x,y,z>'";
+ ssspecies << " are not supported anymore. ";
+ ssspecies << "Please use the renamed variables ";
+ ssspecies << "'" << speciesiter << ".multiple_particles_u<x,y,z>' .";
+ WARPX_ALWAYS_ASSERT_WITH_MESSAGE(
+ !pp_species.queryarr("multiple_particles_vel_x", backward_vel) &&
+ !pp_species.queryarr("multiple_particles_vel_y", backward_vel) &&
+ !pp_species.queryarr("multiple_particles_vel_z", backward_vel),
+ ssspecies.str());
+
+ ssspecies.str("");
+ ssspecies.clear();
+ ssspecies << "'" << speciesiter << ".single_particle_vel'";
+ ssspecies << " is not supported anymore. ";
+ ssspecies << "Please use the renamed variable ";
+ ssspecies << "'" << speciesiter << ".single_particle_u' .";
+ WARPX_ALWAYS_ASSERT_WITH_MESSAGE(
+ !pp_species.queryarr("single_particle_vel", backward_vel),
+ ssspecies.str());
+ }
+
ParmParse pp_collisions("collisions");
int ncollisions;
if (pp_collisions.query("ncollisions", ncollisions)){