diff options
author | 2019-06-03 13:32:39 -0700 | |
---|---|---|
committer | 2019-06-03 13:32:39 -0700 | |
commit | dc4519afab38021fea8072e3c89bc26f78ab05c5 (patch) | |
tree | a943ea8a1520679a8e3ba4bcc7211f0a072e0211 /Source/Diagnostics/ParticleIO.cpp | |
parent | 6c20c43e0ecc9a03b21ef6c57adb2f13911004e2 (diff) | |
parent | 50eb97ac0f075159fd8e3bd906fa0042c9013d05 (diff) | |
download | WarpX-dc4519afab38021fea8072e3c89bc26f78ab05c5.tar.gz WarpX-dc4519afab38021fea8072e3c89bc26f78ab05c5.tar.zst WarpX-dc4519afab38021fea8072e3c89bc26f78ab05c5.zip |
Merge branch 'dev' into symmetrize_beam
Diffstat (limited to 'Source/Diagnostics/ParticleIO.cpp')
-rw-r--r-- | Source/Diagnostics/ParticleIO.cpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Source/Diagnostics/ParticleIO.cpp b/Source/Diagnostics/ParticleIO.cpp index ba413dcae..0f6246715 100644 --- a/Source/Diagnostics/ParticleIO.cpp +++ b/Source/Diagnostics/ParticleIO.cpp @@ -5,6 +5,53 @@ using namespace amrex; void +RigidInjectedParticleContainer::ReadHeader (std::istream& is) +{ + is >> charge >> mass; + WarpX::GotoNextLine(is); + + int nlevs; + is >> nlevs; + WarpX::GotoNextLine(is); + + AMREX_ASSERT(zinject_plane_levels.size() == 0); + AMREX_ASSERT(done_injecting.size() == 0); + + for (int i = 0; i < nlevs; ++i) + { + int zinject_plane_tmp; + is >> zinject_plane_tmp; + zinject_plane_levels.push_back(zinject_plane_tmp); + WarpX::GotoNextLine(is); + } + + for (int i = 0; i < nlevs; ++i) + { + int done_injecting_tmp; + is >> done_injecting_tmp; + done_injecting.push_back(done_injecting_tmp); + WarpX::GotoNextLine(is); + } +} + +void +RigidInjectedParticleContainer::WriteHeader (std::ostream& os) const +{ + // no need to write species_id + os << charge << " " << mass << "\n"; + int nlevs = zinject_plane_levels.size(); + os << nlevs << "\n"; + for (int i = 0; i < nlevs; ++i) + { + os << zinject_plane_levels[i] << "\n"; + } + for (int i = 0; i < nlevs; ++i) + { + os << done_injecting[i] << "\n"; + } +} + +void WarpXParticleContainer::ReadHeader (std::istream& is) { is >> charge >> mass; |