aboutsummaryrefslogtreecommitdiff
path: root/Source/Python/WarpX_py.cpp (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2020-07-30openPMD: Field Names/Labels, Particle Record Names (#1224)Gravatar Axel Huebl 1-12/+22
* openPMD: Field Names/Labels We currently pass the 2D, reconstructed to Cartesian at theta=0 fields to our plotfile and openPMD output routines. This fixes the labeling in openPMD, which anticipated modal output. * openPMD: Particle Position Names Fix the position record component names. Still dumped in r,z until we do reconstruction.
2020-07-30Travis CI: CCache (#1226)Gravatar Axel Huebl 3-1/+21
Speed up repeated builds in the same CI matrix element by using CCache: - https://ccache.dev - https://amrex-codes.github.io/amrex/docs_html/BuildingAMReX.html#ccache Seems to make no difference yet - probably due to truly distinct compiler flags/defines in our build matrix, but the missing entries in the `.ini` file are required otherwise #1223 and then #1204 will slow down.
2020-07-28Add some information about using async io in the docs (#1194)Gravatar Andrew Myers 3-0/+31
* add some information about using async io in the docs * document nfiles * update building instructions * typo * fix typo remove double word Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-07-28[tiny] Avoid particles with do_not_gather=1 be pushed in the last half step ↵Gravatar Luca Fedeli 2-20/+31
(#1210) * species with do_not_gather=1 are not anymore pushed in the last halft step * now do_not_gather is used just to avoid doing doGatherShapeN * Minor fix * fix involuntary capture of *this in lambda
2020-07-28Add job submission script of Cori Haswell in Doc (#1222)Gravatar Yinjian Zhao 2-0/+58
* 1st * modify .sh * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-07-28Docs: Hint FWHM_I in Gaussian Beam (#1215)Gravatar Axel Huebl 1-1/+3
Hint that the pulse length in theory is not the pulse length measured in experiments (and how to translate).
2020-07-27CI: Fix oneAPI Activation (#1219)Gravatar Axel Huebl 1-4/+11
* CI: Fix oneAPI Activation now located at `/opt/intel/oneapi/setvars.sh` * CI: DPC++ beta-8 broken deactivate for now
2020-07-27Input: Remove n<something> options (#1217)Gravatar Axel Huebl 60-126/+44
* Input: Remove n<something> options The information in - lasers.nlasers - particles.nspecies - collisions.ncollisions is redundant with their `<...>.names` counter-part and requires users to change info at two locations. We just remove this now since we can query the size of names automatically in the parser. * Examples: remove n<something> Removes: - lasers.nlasers - particles.nspecies - collisions.ncollisions from examples. * QED: Update nspecies * Removed nspecies and nlasers from the Python interface Co-authored-by: Dave Grote <grote1@llnl.gov>
2020-07-27Current Deposition: Fix Unused Params (#1218)Gravatar Axel Huebl 1-5/+9
Fix unused RZ parameters in current deposition.
2020-07-27Rename Input to `algo.maxwell_solver` (#1188)Gravatar Axel Huebl 31-43/+52
* Rename Input to `algo.maxwell_solver` Rename the input option `algo.maxwell_fdtd_solver` to `algo.maxwell_solver` and throw a useful error message for users using the old option. This is in preparation to unify FDTD and PSATD input control to reduce mutually exclusive binary variants of WarpX. * MW Solver Name: Update Examples Update all example to use the new algo.maxwell_solver option. * Fix typo in comutation of dt Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
2020-07-27Fix Diagnostics: Compiler Warnings (#1209)Gravatar Axel Huebl 6-75/+72
* Fix Diagnostics: Compiler Warnings Fix mixed sign comparisons and other warnings. * ranges: non-const refs we modify the objects
2020-07-27fix warning on LGTM (#1212)Gravatar Luca Fedeli 1-1/+3
2020-07-27Added k-space filter for RZ spectral solver (#1006)Gravatar David Grote 15-6/+250
* Added k-space filter for RZ spectral solver * Added SpectralBinomialFilter files for RZ spectral solver * Added RZspectral binomial filter to CMakeLists.txt * Update Docs/source/running_cpp/parameters.rst Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Update Docs/source/running_cpp/parameters.rst Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Update Source/FieldSolver/SpectralSolver/SpectralBinomialFilter.H Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Update Source/FieldSolver/SpectralSolver/SpectralBinomialFilter.cpp Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Update Source/FieldSolver/SpectralSolver/SpectralFieldDataRZ.H Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Fixed literals in SpectralBinomialFilter.cpp * For RZ spectral, apply filter to rho old and new * Added SpectralBinomialFilter::InitFilterArray * For SpectralBinomialFilter, combine R and Z into one routine Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * For SpectralBinomialFilter, combine R and Z into one routine, part 2 Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * For SpectralBinomialFilter, combine R and Z into one routine, part 3 Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
2020-07-27Build: Enable Warnings (#1211)Gravatar Axel Huebl 1-0/+3
Unconditionally enable compiler warnings for all builds. This will help us to increasing awareness on them to fix them, which will help us on the mid-term to catch bugs that diagnostics can catch early on. Only increases code stability and portability.
2020-07-24Fix -Wextra-semi (#1207)Gravatar Axel Huebl 20-68/+68
Remove unnecessary semicolons (fix compiler warnings).
2020-07-24do not directly access the particle id and cpu in favor of going through the ↵Gravatar Andrew Myers 3-5/+5
getter / setter methods. These members are implemented using an anonymous struct that will be going away soon in amrex, so this type of access is deprecated. (#1208)
2020-07-24CMake: RelWithDebInfo -O3 (#1203)Gravatar Axel Huebl 1-16/+27
Replace the historic default in `RelWithDebInfo` build types of `-O2` (if present) with `-O3`.
2020-07-24Do PSATD+RZ in the RZ_NO_MPI travis instance (#1202)Gravatar Remi Lehe 2-2/+3
* Do PSATD+RZ in the RZ_NO_MPI travis instance * Fix missing dependency
2020-07-24fix bug which prevented evolution of optical depth (#1205)Gravatar Luca Fedeli 1-1/+1
2020-07-23Workaround for 2D Galilean tests (#1200)Gravatar Edoardo Zoni 3-24/+34
2020-07-23Add Travis regression test for RZ spectral solver (#1175)Gravatar David Grote 6-8/+69
* Added PSATD RZ regression test case * Add Regression/Checksum/benchmarks_json/Langmuir_multi_rz_psatd.json * Fixed particle_ids in Langmuir_multi_rz_psatd.json * cmake-easyinstall: new options Just cosmetic updates to make the usage more compact :) * Moved RZ PSATD tests into the PSATD tests * Updated RZ PSATD checksum after merge of PR1072 Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-07-22Cleaner calculation of the simulation timestep (#1031)Gravatar Remi Lehe 13-91/+193
* Cleaner calculation of the simulation timestep * Fix compilation errors * Remove specification of CKC solver in PSATD test * Correct calculation of dt * Fix compilation error * Cleaner calculation of the simulation timestep * Fix compilation errors * Remove specification of CKC solver in PSATD test * Correct calculation of dt * Fix compilation error * Cleanup for cylindrical * Change input of automated tests to preserve previous results * Fix import statement for cylindrical * Preserve dt for PML test * Move function documentation to WarpX.H * Update CMakeList * Update CFL in some tests * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Fix compilation errors * Revert "Fix compilation errors" This reverts commit 56ef67f228269b266876629f49789d3afdbbc00b. * Fix compilation error * Add cmath headers Add directly used header files. * Fix Include Order Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-07-22make the docs and assertions around the particle shape factors reflect the ↵Gravatar Andrew Myers 2-3/+3
current behavior of the code. (#1199)
2020-07-22Fix Gatherv (#1197)Gravatar WeiqunZhang 1-2/+2
The long int version of amrex::ParallelDesciptor::Gatherv has been removed due to its poor performance. LoadBalance now uses ints for counts and offsets in gatherv.
2020-07-21openPMD: Fix NOMPI Particle Output (#1196)Gravatar Axel Huebl 1-12/+16
`amrex::ParallelGather::Gather` is implemented as a no-OP instead of a copy without MPI, so we need to branch in user-code.
2020-07-21[tiny] Explained print when NaN in LibEnsemble (#1190)Gravatar L. Diana Amorim 1-2/+2
* Add explanation to NaN test in warpx_simf.py * Fix suggested by reviewer
2020-07-21define compute_shape_factor for VayDepos (#1192)Gravatar Revathi Jambunathan 1-55/+83
* define compute_shape_factor for VayDepos * cast to double to avoid bug in SP * recasting double to amrex Real before calling atomics * Apply suggestions from code review Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-07-20Fix Evolution: Current Depos. and Shapes (#1082)Gravatar Michael E Rowan 7-210/+269
* single precision fixes * compute_shape_factor functors * _rt to compute_shape_factor argument * SP comment * SP benchmarks
2020-07-20Average slice emittance - libEnsemble example (#1157)Gravatar L. Diana Amorim 3-36/+73
* Added option of slice emittance * Removed previous emittance calculation to avoid confusion * Fixed electron rest mass * Fix extra y emittance not needed for 2D runs * Fixed extra range in emittance * Fixed typo * Fixed multiple errors * Fixed extra beta * Added option of NAN that does not interfere with analsys * Fixed emittance calculation function * Added NAN option to runs with negligible charge * Fix to EOL error * Remove repeated assignment * Added comment to explain if * Fixed typo * em_libE * Fixed energy spread * Excluding runs that did not finish * Fixed typo * Fixed typo 2 * Fix typo * No need to change this line * This way NAN values won't influence results * Also max needed fix for NANs
2020-07-20GitHub Action CI: CUDA (#1176)Gravatar Axel Huebl 1-0/+35
* GitHub Action CI: CUDA Add a single-precision, Nvidia NVCC CUDA build to CI. * CI: CUDA 11.0.2 * CUDA CI: with OpenMPI Just more complete and realistic.
2020-07-20Overwrite AMReX Defaults: Python (#1177)Gravatar Axel Huebl 3-8/+14
Forgot to also overwrite the initialization defines for Python with my last PR.
2020-07-20replace quotes in AMReX includes (#1186)Gravatar MaxThevenet 6-11/+16
2020-07-20instrument FlushFormatPlotfile::WriteToFile and use it in automated perf ↵Gravatar MaxThevenet 2-1/+2
tests (#1185)
2020-07-20Vay current deposition (#1051)Gravatar Edoardo Zoni 32-54/+916
* Added stub for current correction in RZ spectral solver * Start implementation of Vay deposition * Continue implementation of Vay deposition * Correct deposition of D * Add phase shift for staggered currents * Small clean-up * Fix units in deposition of D * Implement average of cumulative sum (needs bug fix) * Start fixing bug in average of cumulative sum * Still debugging * Cumulative sums should be correct now * Subtract averages of cumulative sums: - current implementation: cumulative sums, inverse Fourier transform, subtraction of averages - needs to be tested (including units of D after Vay deposition) - needs to be shortened (too many loops over boxes and ParallelFors) * [skip CI] Clean up and fix units * Still fixing units * [skip CI] Remove temporarily averages of cumulative sums * [skip CI] Remove distinction between staggered and nodal * Vay and Esirkepov similar results on periodic single box: TODO: - debug (charge not conserved); - try using compute_shifted_shape_factor as in Esirkepov deposition; - clean up; - try on multiple boxes and with correction of mode at 0 frequency. * [skip CI] Clean up * Fix bug in 3D deposition * [skip CI] Clean up * Fix 2D and 3D implementation: - simulation results agree between direct and Vay deposition in both 2D and 3D - Travis CI tests should pass except for check of charge conservation (debug) * Small clean-up * Fix bug when compiling in RZ geometry * Add benchmark json files (will be reset later) * Do not set zero current at zero frequency * [skip CI] Revert last commit and clean up * Fix small bug after reverting commit * Set nodal test first on Travis * Fix benchmark for nodal test in 3D * Fix particle output for nodal test in 3D * Fix bugs due to staggering * Rename current nodal Travis tests * Add Travis tests staggered in 2D and 3D * Further clean-up after bug fix * Abort when using Vay deposition with domain decomposition * Add optional argument of index type to forward FFT * Fourier shifts can be private members as before * Small clean-up * Clean up and improve Doxygen documentation * Fix small bug in analysis script for 2D tests * Fix tests (remove E and B fields from particle diags) * Add option to fill guard cells and docs * Fix value of last guard cell by enforcing periodicity * Revert changes merged from #1121 * Clean up style * Improve docs * Fix forgotten alignment * Improve docs * Make base class functions VayDeposition pure Co-authored-by: Dave Grote <dpgrote@lbl.gov>
2020-07-20Evolve: Remove Unused Variables (#1184)Gravatar Axel Huebl 1-3/+0
Fix warnings after some recent refactoring.
2020-07-17respect AMREX_MPI_THREAD_MULTIPLE (#1182)Gravatar Andrew Myers 1-5/+11
2020-07-17LWFA: Diag add Charge Density (#1048)Gravatar Axel Huebl 7-5/+14
* LWFA: Diag add Charge Density Dump the charge density in the LWFA example by default. This is a common quantity to visualize when getting started, so we adjust this to be generated by default. * reset benchmark: LaserAcceleration (add rho) Co-authored-by: Tools <warpx@lbl.gov>
2020-07-17Fixing compiler warnings (#1178)Gravatar Olga Shapoval 2-16/+5
* Removed unused variables and made 'vy=v_galilean[1]' declaration conditional on 3D case (this fixes compiler warnings) * Avoid unnecessary conversion from 'double' to 'int' (this fixes compiler warnings)
2020-07-17[mini] Fix automated performance tests on Cori (#1181)Gravatar MaxThevenet 1-1/+3
* need to load PrgEnv intel for tests * 1 step for IO tests on Cori too
2020-07-17fix documentation for external E B with constant values (#1180)Gravatar Revathi Jambunathan 1-3/+3
2020-07-17For RZ, fix the deposition near the axis (#1072)Gravatar David Grote 2-39/+38
* For RZ, fix the deposition near the axis * Updated LaserAccelerationRZ checksum The change was expected since the code changes modified the charge and current density near the axis. * Updated LaserAccelerationRZ checksum The change was expected since the code changes modified the charge and current density near the axis. * Update benchmark Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
2020-07-16Travis: Work-Around yt/matplotlib (#1179)Gravatar Axel Huebl 1-1/+1
Matplotlib 3.3.0 removed a private member module which yt relies on. We downgrade matplotlib to keep going.
2020-07-16Combine analysis scripts for Galilean and averaged PSATD automated tests in ↵Gravatar Olga Shapoval 5-120/+53
one (#1174) * Combined analysis scripts for Galilean and averaged tests in one script * Deleted files 'analysis_avg_2d.py' and 'analysis_avg_3d.py' * Cleanup: removed empty lines
2020-07-16Default: abort_on_out_of_gpu_memory = 1 (#1164)Gravatar Axel Huebl 6-6/+79
* Default: abort_on_out_of_gpu_memory = 1 Change the default input parameter from AMReX `amrex.abort_on_out_of_gpu_memory` from false (`0`) to true (`1`). We set this by default to avoid that users experience super-slow GPU runs when exceeding GPU memory. In such a case, users should explicitly set this to option. In my optinion, this is only an intermediate solution since what we actually want on out-of-GPU memory events should be: - finish current simulation step and cause a load balance or - trigger a checkpoint and shut down cleanly - then the user can manually restart with more resources We want to address the opposite case, user under-utilizes a GPU, with a warning for now. Ref.: - https://amrex-codes.github.io/amrex/docs_html/GPU.html#inputs-parameters * abort_on_out_of_gpu_memory: review Add review comments. Co-authored-by: L. Diana Amorim <LDianaAmorim@lbl.gov> Co-authored-by: L. Diana Amorim <LDianaAmorim@lbl.gov>
2020-07-16Add doc for performance tests (#1161)Gravatar MaxThevenet 2-0/+109
* add doc for performance tests * eol * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * eol * Apply suggestions from code review Co-authored-by: L. Diana Amorim <LDianaAmorim@lbl.gov> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: L. Diana Amorim <LDianaAmorim@lbl.gov>
2020-07-16fix automated performance tests on Summit (#1160)Gravatar MaxThevenet 12-20/+14
* update IO syntax for performance CI * update performance tests dir * minor fixes in the IO perf test
2020-07-15Add support for infinite-order PSATD (#1169)Gravatar danielbelkin 3-52/+98
* Set k_modified = k for inf order * Add support for nox = inf in input file * Added infinite-order to documentation * Add back in accidentally-removed line * End-of-line whitespaces? * End-of-line whitespaces. * Remove vspace Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Remove vspace Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Add whitespace Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Remove unnecessary line Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Whitespace Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * Remove whitespace * Clarify error message Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> * ...whitespace Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
2020-07-14Update automated galilean tests (#1173)Gravatar Olga Shapoval 4-29/+31
* Fixed typo: use 'dim=3' instead of 'dim=2' for 'galilean_3d_psatd' test * Updated reference energy values for 2D and 3D galilean tests. * Updated benchmark for galilean_3d_psatd.json
2020-07-14Fix bug in RZ PSATD rho terms (#1172)Gravatar David Grote 1-2/+2
2020-07-14make fft_do_time_averaging a member of class WarpX (#1165)Gravatar MaxThevenet 6-21/+16