diff options
-rw-r--r-- | Examples/Tests/restart/inputs | 10 | ||||
-rw-r--r-- | Regression/Checksum/benchmarks_json/restart.json | 60 | ||||
-rw-r--r-- | Regression/Checksum/benchmarks_json/restart_psatd.json | 60 | ||||
-rw-r--r-- | Regression/Checksum/benchmarks_json/restart_psatd_time_avg.json | 60 | ||||
-rw-r--r-- | Source/Diagnostics/ParticleIO.cpp | 16 |
5 files changed, 106 insertions, 100 deletions
diff --git a/Examples/Tests/restart/inputs b/Examples/Tests/restart/inputs index e47aa0fa8..c34146518 100644 --- a/Examples/Tests/restart/inputs +++ b/Examples/Tests/restart/inputs @@ -45,7 +45,7 @@ warpx.boost_direction = z ################################# particles.species_names = driver plasma_e plasma_p beam driverback particles.use_fdtd_nci_corr = 1 -#particles.rigid_injected_species = driver beam +particles.rigid_injected_species = driver beam driver.charge = -q_e driver.mass = 1.e10 @@ -65,8 +65,8 @@ driver.uz_m = 200000. driver.ux_th = 2. driver.uy_th = 2. driver.uz_th = 20000. -#driver.zinject_plane = 0. -#driver.rigid_advance = true +driver.zinject_plane = 0. +driver.rigid_advance = true driverback.charge = q_e driverback.mass = 1.e10 @@ -142,8 +142,8 @@ beam.uz_m = 2000. beam.ux_th = 2. beam.uy_th = 2. beam.uz_th = 200. -#beam.zinject_plane = .8e-3 -#beam.rigid_advance = true +beam.zinject_plane = .8e-3 +beam.rigid_advance = true # Diagnostics diagnostics.diags_names = diag1 chk diff --git a/Regression/Checksum/benchmarks_json/restart.json b/Regression/Checksum/benchmarks_json/restart.json index cdccdd073..ebb35357c 100644 --- a/Regression/Checksum/benchmarks_json/restart.json +++ b/Regression/Checksum/benchmarks_json/restart.json @@ -2,23 +2,23 @@ "beam": { "particle_cpu": 0.0, "particle_id": 1500500.0, - "particle_momentum_x": 4.210792541741028e-19, - "particle_momentum_y": 4.1138261183560033e-19, - "particle_momentum_z": 2.723782366817271e-17, - "particle_position_x": 0.0015091134632009644, - "particle_position_y": 0.001484901544080785, - "particle_position_z": 1.9017767912783692, + "particle_momentum_x": 4.275414307401172e-19, + "particle_momentum_y": 4.1735348940423594e-19, + "particle_momentum_z": 2.7466540338095267e-17, + "particle_position_x": 0.00038227754420858974, + "particle_position_y": 0.0004008480406063961, + "particle_position_z": 1.9017769844040129, "particle_weight": 3120754537.230381 }, "driver": { "particle_cpu": 0.0, "particle_id": 500500.0, "particle_momentum_x": 4.747251762692475e+21, - "particle_momentum_y": 4.957368621566193e+21, + "particle_momentum_y": 4.957368621566192e+21, "particle_momentum_z": 2.9967719884827463e+25, - "particle_position_x": 0.0015297460887947526, - "particle_position_y": 0.001602556980708184, - "particle_position_z": 0.3061832080602548, + "particle_position_x": 0.0015291127683050845, + "particle_position_y": 0.001603376452180436, + "particle_position_z": 0.30618320800027976, "particle_weight": 6241509074.460762 }, "driverback": { @@ -33,35 +33,35 @@ "particle_weight": 6241509074.460762 }, "lev=0": { - "Bx": 98161.70008968459, - "By": 98172.32439526827, - "Bz": 31.901351990962468, - "Ex": 14057086473507.713, - "Ey": 14054746454266.889, - "Ez": 33308979480924.473, - "jx": 656449539734.6744, - "jy": 646503950937.1055, - "jz": 904276481605925.0 + "Bx": 98192.19947145433, + "By": 98202.24044988544, + "Bz": 32.176883437432316, + "Ex": 14065714408245.07, + "Ey": 14064073072398.174, + "Ez": 33307954593489.707, + "jx": 304667056543.9146, + "jy": 180701392073.9691, + "jz": 904275753595636.4 }, "plasma_e": { "particle_cpu": 4116.0, "particle_id": 22919946.0, - "particle_momentum_x": 5.4081725205908615e-22, - "particle_momentum_y": 5.385150045424111e-22, - "particle_momentum_z": 1.1184395632328821e-17, - "particle_position_x": 0.13505934672940284, - "particle_position_y": 0.13505932414882538, - "particle_position_z": 0.20362721013846616, + "particle_momentum_x": 5.40817681171179e-22, + "particle_momentum_y": 5.385133314763837e-22, + "particle_momentum_z": 1.1184395632063724e-17, + "particle_position_x": 0.1350593467304257, + "particle_position_y": 0.1350593241232737, + "particle_position_z": 0.20362721013846566, "particle_weight": 126912632943.3621 }, "plasma_p": { "particle_cpu": 4116.0, "particle_id": 25328394.0, - "particle_momentum_x": 5.408306142946863e-22, - "particle_momentum_y": 5.385291148559078e-22, - "particle_momentum_z": 2.0535791481239935e-14, - "particle_position_x": 0.13505624831336888, - "particle_position_y": 0.13505624832566565, + "particle_momentum_x": 5.408310433658191e-22, + "particle_momentum_y": 5.385274435809097e-22, + "particle_momentum_z": 2.0535791481240203e-14, + "particle_position_x": 0.13505624831336835, + "particle_position_y": 0.13505624832567958, "particle_position_z": 0.2036271949467523, "particle_weight": 126912632943.3621 } diff --git a/Regression/Checksum/benchmarks_json/restart_psatd.json b/Regression/Checksum/benchmarks_json/restart_psatd.json index 12eb370d4..3fbcd9772 100644 --- a/Regression/Checksum/benchmarks_json/restart_psatd.json +++ b/Regression/Checksum/benchmarks_json/restart_psatd.json @@ -2,23 +2,23 @@ "beam": { "particle_cpu": 0.0, "particle_id": 1500500.0, - "particle_momentum_x": 4.2541507163023845e-19, - "particle_momentum_y": 4.152774664953137e-19, - "particle_momentum_z": 2.7285024671598035e-17, - "particle_position_x": 0.001517617677859585, - "particle_position_y": 0.0014929352020519265, - "particle_position_z": 1.9017771002859827, + "particle_momentum_x": 4.275414307401172e-19, + "particle_momentum_y": 4.17353489404236e-19, + "particle_momentum_z": 2.7466540338095267e-17, + "particle_position_x": 0.00038227754420858974, + "particle_position_y": 0.00040084804060639605, + "particle_position_z": 1.9017769844040127, "particle_weight": 3120754537.230381 }, "driver": { "particle_cpu": 0.0, "particle_id": 500500.0, - "particle_momentum_x": 4.747251762692475e+21, + "particle_momentum_x": 4.747251762692473e+21, "particle_momentum_y": 4.957368621566193e+21, "particle_momentum_z": 2.9967719884827463e+25, - "particle_position_x": 0.0015297460887947526, - "particle_position_y": 0.0016025569807081841, - "particle_position_z": 0.30618320806025484, + "particle_position_x": 0.0015291127683050845, + "particle_position_y": 0.001603376452180436, + "particle_position_z": 0.30618320800027976, "particle_weight": 6241509074.460762 }, "driverback": { @@ -33,35 +33,35 @@ "particle_weight": 6241509074.460762 }, "lev=0": { - "Bx": 97777.04044826895, - "By": 97787.26556234213, - "Bz": 31.59916720107527, - "Ex": 12868507499248.19, - "Ey": 12867303176821.19, - "Ez": 32449258298200.113, - "jx": 634704212071.4764, - "jy": 611625734809.7017, - "jz": 904274042090495.5 + "Bx": 97806.19840108546, + "By": 97815.85756771098, + "Bz": 31.732427701722912, + "Ex": 12877754924119.082, + "Ey": 12876901684280.229, + "Ez": 32448463177834.543, + "jx": 307666015585.9687, + "jy": 182363554739.9786, + "jz": 904274413323325.2 }, "plasma_e": { "particle_cpu": 4116.0, "particle_id": 22919946.0, - "particle_momentum_x": 5.685882296125418e-22, - "particle_momentum_y": 5.662977916983953e-22, - "particle_momentum_z": 1.1184398018268609e-17, - "particle_position_x": 0.13505924338837194, - "particle_position_y": 0.13505922196934064, - "particle_position_z": 0.2036272092198746, + "particle_momentum_x": 5.685881126709523e-22, + "particle_momentum_y": 5.6629711844429285e-22, + "particle_momentum_z": 1.1184398018026139e-17, + "particle_position_x": 0.1350592433885383, + "particle_position_y": 0.1350592219411637, + "particle_position_z": 0.20362720921987482, "particle_weight": 126912632943.36244 }, "plasma_p": { "particle_cpu": 4116.0, "particle_id": 25328394.0, - "particle_momentum_x": 5.686073146345258e-22, - "particle_momentum_y": 5.663176459735941e-22, - "particle_momentum_z": 2.0535791478847752e-14, - "particle_position_x": 0.1350562483696602, - "particle_position_y": 0.1350562483813245, + "particle_momentum_x": 5.686071969908394e-22, + "particle_momentum_y": 5.663169754132697e-22, + "particle_momentum_z": 2.0535791478848e-14, + "particle_position_x": 0.13505624836966013, + "particle_position_y": 0.13505624838133984, "particle_position_z": 0.20362719494726383, "particle_weight": 126912632943.36244 } diff --git a/Regression/Checksum/benchmarks_json/restart_psatd_time_avg.json b/Regression/Checksum/benchmarks_json/restart_psatd_time_avg.json index 3ed894265..bc8d71bbc 100644 --- a/Regression/Checksum/benchmarks_json/restart_psatd_time_avg.json +++ b/Regression/Checksum/benchmarks_json/restart_psatd_time_avg.json @@ -2,23 +2,23 @@ "beam": { "particle_cpu": 0.0, "particle_id": 1500500.0, - "particle_momentum_x": 4.254691979750989e-19, - "particle_momentum_y": 4.1535435963437147e-19, - "particle_momentum_z": 2.728767021901075e-17, - "particle_position_x": 0.001517680460798969, - "particle_position_y": 0.001493038909816312, - "particle_position_z": 1.9017771013093303, + "particle_momentum_x": 4.275414307401172e-19, + "particle_momentum_y": 4.17353489404236e-19, + "particle_momentum_z": 2.7466540338095267e-17, + "particle_position_x": 0.00038227754420858974, + "particle_position_y": 0.00040084804060639605, + "particle_position_z": 1.9017769844040127, "particle_weight": 3120754537.230381 }, "driver": { "particle_cpu": 0.0, "particle_id": 500500.0, - "particle_momentum_x": 4.747251762692475e+21, + "particle_momentum_x": 4.747251762692473e+21, "particle_momentum_y": 4.957368621566193e+21, "particle_momentum_z": 2.9967719884827463e+25, - "particle_position_x": 0.0015297460887947526, - "particle_position_y": 0.0016025569807081841, - "particle_position_z": 0.30618320806025484, + "particle_position_x": 0.0015291127683050845, + "particle_position_y": 0.001603376452180436, + "particle_position_z": 0.30618320800027976, "particle_weight": 6241509074.460762 }, "driverback": { @@ -33,35 +33,35 @@ "particle_weight": 6241509074.460762 }, "lev=0": { - "Bx": 97770.61191599404, - "By": 97780.70810712027, - "Bz": 31.008136828149073, - "Ex": 12838801235406.88, - "Ey": 12837507519031.262, - "Ez": 32438660943782.914, - "jx": 635272636369.7802, - "jy": 612269127739.1005, - "jz": 904274462562314.8 + "Bx": 97799.68920761721, + "By": 97809.22760976445, + "Bz": 31.138421896287632, + "Ex": 12848024095028.355, + "Ey": 12847124613971.557, + "Ez": 32437971780449.27, + "jx": 308194378521.1045, + "jy": 182890492089.67697, + "jz": 904274843199463.8 }, "plasma_e": { "particle_cpu": 4116.0, "particle_id": 22919946.0, - "particle_momentum_x": 5.744114065909579e-22, - "particle_momentum_y": 5.721131408219794e-22, - "particle_momentum_z": 1.1184397774427398e-17, - "particle_position_x": 0.1350592713852672, - "particle_position_y": 0.13505925001090735, - "particle_position_z": 0.20362720922167768, + "particle_momentum_x": 5.744112487812186e-22, + "particle_momentum_y": 5.721125891605127e-22, + "particle_momentum_z": 1.1184397774190402e-17, + "particle_position_x": 0.13505927138536114, + "particle_position_y": 0.13505924998293056, + "particle_position_z": 0.20362720922167785, "particle_weight": 126912632943.36244 }, "plasma_p": { "particle_cpu": 4116.0, "particle_id": 25328394.0, - "particle_momentum_x": 5.7443089782205155e-22, - "particle_momentum_y": 5.721334024352466e-22, - "particle_momentum_z": 2.0535791479091608e-14, - "particle_position_x": 0.1350562483544117, - "particle_position_y": 0.13505624836605168, + "particle_momentum_x": 5.744307393038055e-22, + "particle_momentum_y": 5.721328534468911e-22, + "particle_momentum_z": 2.0535791479091845e-14, + "particle_position_x": 0.13505624835441166, + "particle_position_y": 0.13505624836606694, "particle_position_z": 0.20362719494726217, "particle_weight": 126912632943.36244 } diff --git a/Source/Diagnostics/ParticleIO.cpp b/Source/Diagnostics/ParticleIO.cpp index a226bb590..a7b389d78 100644 --- a/Source/Diagnostics/ParticleIO.cpp +++ b/Source/Diagnostics/ParticleIO.cpp @@ -41,9 +41,10 @@ using namespace amrex; void RigidInjectedParticleContainer::ReadHeader (std::istream& is) { - is >> charge >> mass; - WarpX::GotoNextLine(is); + // Call parent class + WarpXParticleContainer::ReadHeader( is ); + // Read quantities that are specific to rigid-injected species int nlevs; is >> nlevs; WarpX::GotoNextLine(is); @@ -52,24 +53,29 @@ RigidInjectedParticleContainer::ReadHeader (std::istream& is) for (int i = 0; i < nlevs; ++i) { - int zinject_plane_tmp; + amrex::Real zinject_plane_tmp; is >> zinject_plane_tmp; zinject_plane_levels.push_back(zinject_plane_tmp); WarpX::GotoNextLine(is); } + is >> vzbeam_ave_boosted; + WarpX::GotoNextLine(is); } void RigidInjectedParticleContainer::WriteHeader (std::ostream& os) const { - // no need to write species_id - os << charge << " " << mass << "\n"; + // Call parent class + WarpXParticleContainer::WriteHeader( os ); + + // Write quantities that are specific to the rigid-injected species int nlevs = zinject_plane_levels.size(); os << nlevs << "\n"; for (int i = 0; i < nlevs; ++i) { os << zinject_plane_levels[i] << "\n"; } + os << vzbeam_ave_boosted << "\n"; } void |