aboutsummaryrefslogtreecommitdiff
path: root/Source/Python/WarpX_py.cpp (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2020-03-16Use C++ templates for the `EvolveF` and `ComputeDivE` function (#753)Gravatar Remi Lehe 9-141/+433
* Prepare EvolveE * Cartesian equations without current * Implement Cartesian EvolveE * Progress towards cylindrical solver * Correct typo * Implement cylindrical solver (without on-axis condition) * Fix compilation errors * Add regularization for RZ solver * Added correction term for F * Remove file for nodal stencil * Apply stylistic changes to EvolveE * Fix compilation errors * Correction to avoid out of bound * Remove references to old file * Correct bug in EvolveB * Implement correction on axis for Et * Remove previous field update functions * Implement EvolveF in Cartesian * Add missing file * Update on-axis condition * Correct typo * Add theta derivative for divE calculation * Fix rho component * Fix compilation error * Use C++ templates in computation of divE * Update Source/FieldSolver/FiniteDifferenceSolver/ComputeDivE.cpp Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> * Apply suggestions from code review Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> * Use comparisons to 0 again Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-03-16Add ParticleHistogram Reduced Diagnostic (#727)Gravatar Yinjian Zhao 7-11/+369
* Add Histogram * Add normalization * Add doc * Minor * Minor * Fix a bug * Add const * Apply suggestions from code review Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> * Modify based on suggestions. * Add histogram name * Add bin values * Don't add histogram name * Modify read_raw_data.py * Add doc * Change ux,uy,uz units * Change ux,uy,uz units * Change if format * Save some variables * Change more * Minor * Fix a bug on GPU * Fix a bug on GPU * Add wrong species name abort * Minor doc * Change #include format * Apply suggestions from code review Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> * Add const * Change to member variables * revert * Modify doc * Change ReduceRealSum * Improve by using enum * Remove no_normalization * Add struct * Minor format * Apply suggestions from code review Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> * Change based on suggestions Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-03-16Because of AMReX change, we now have to explicitly specify where BaseFab ↵Gravatar WeiqunZhang 1-3/+3
functions should run. (#803)
2020-03-13PSATD Single precision (#805)Gravatar MaxThevenet 12-85/+170
* fix compilation for single precision PSATD with USE_GPU * compiles and tested on CPU also * add sentence to doc: FFTW needs to be compiled with single precision option * add test, better pre-proc directives indent, clearer ifdef * use using whenever possible * indent * fix TravisCI matrix, and improve matrix test * need to compile with same precision for fields and particles
2020-03-13For diagnostics, added RZ modes of scalars, allowed different centerings (#770)Gravatar David Grote 3-88/+96
* For diagnostics, added RZ modes of scalars, allowed different centerings * Fixed spacing in ConstructTotalRZScalarField Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-03-13Add limit to #parts in theta in RZ (#765)Gravatar L. Diana Amorim 4-4/+20
* Added abort error for insufficient #cells in phi * Fixed language in error message * Added #parts per theta limit in docs * Fixed initialization of n_rz_azimuthal_modes * Fixed abort message cpp errors * Fix n_rz_azimuthal_modes read from WarpX class * Fix wrong index in num_particles_per_cell_each_dim * Fix PR# and abort message without additional variable * Fixed LWFA RZ example * Changed Abort to AssertWithMessage * Corrected inequality to include case of x2 * RZ #modes=1 by default. Fix #parts in theta =2 * Fix to LWFA RZ #modes=2 #parts in theta=4 * Added limitation in #parts in theta for NRandomPerCell style
2020-03-13Fixed FDTD coefficients of E push from F (#804)Gravatar David Grote 1-13/+13
2020-03-13Remove obsolete Fortran function declaration (#796)Gravatar Remi Lehe 1-79/+0
2020-03-13correct misprint in doc (#802)Gravatar Luca Fedeli 1-1/+1
2020-03-12Added RZ mode for charge and direct current deposition (#793)Gravatar David Grote 3-9/+46
2020-03-12Fix misspellings of the word 'auxiliary' (#799)Gravatar Michael E Rowan 2-5/+5
2020-03-12Changed BL_ASSERT to AMREX_ALWAYS_ASSERT for user input (#798)Gravatar David Grote 2-10/+10
* Changed BL_ASSERT to AMREX_ALWAYS_ASSERT for user input * Fixed typo when replacing BL_ASSERTs
2020-03-12Fail gracefully when laser amplitude is zero (#781)Gravatar danielbelkin 1-0/+7
* added error message if laser amplitude is not positive * moved assert to LaserParticleContainer
2020-03-11Added optional user defined number of guard cells to use with PSATD solver ↵Gravatar Olga Shapoval 2-14/+18
(#787) * Added optional user defined number of quard cells to use with PSATD solver. * Removed temporary comments. * Changed names nx_guard_psatd to psatd.nx_guard for consistency.
2020-03-10Single Precision: Regression Tolerance (#771)Gravatar Axel Huebl 1-0/+2
For single precision, roughly 4-5 significant digits are comparable for our floating point precision tolerance.
2020-03-10With RZ, always write out theta (#782)Gravatar David Grote 1-0/+7
2020-03-10Include private members of classes in Doxygen documentation (#785)Gravatar Edoardo Zoni 2-10/+10
* Include private members of classes in Doxygen documentation * add space before bracket for function implementation Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-03-10Allowed for more general centering of charge density (#768)Gravatar David Grote 5-25/+52
* Allowed for more general centering of charge density * Used rho_nodal_flag in ApplyInverseVolumeScalingToChargeDensity * Simplify declaration of rho_nodal_flag Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> * Fix documentation for doChargeDepositionShapeN Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-03-06Remove old electrostatic code (#780)Gravatar Remi Lehe 20-1385/+0
* Create inputs * fixed stuff * Make smaller test * Re-use EvolveEM for ES calculation * Use correct variable const_dt * Avoid out of bound and modify computation of electrostatic field * Update test file * Remove tab * Minor refactoring of space-charge calculation * Remove old electrostatic files * Fix electrostatic test * Rename WarpXEvolveEM to WarpXEvolve * Use if conditions instead of ifdef * Correct initialization of `do_electrostatic` * Fix static variable * Add documentation for `do_electrostatic` * Remove more electrostatic code Co-authored-by: dbizzozero <dbizzozero@users.noreply.github.com>
2020-03-06Remove FFTW include (#777)Gravatar Remi Lehe 1-4/+0
2020-03-06Update CONTRIBUTING.md: fix URL for Github forks (#774)Gravatar Edoardo Zoni 1-1/+1
2020-03-06Add default values for particle and cell weights used in heuristic costs ↵Gravatar Michael E Rowan 2-4/+58
update (#773) * Add default prtl and cell wts for costs update Remove print Cleanup Typo * Add AMREX_USE_GPU ifdef * Add default costs for CPU case * Formatting * Add comment that default values are for Summit * Explain tests in doc * Formatting * Clarify logic
2020-03-06add _rt suffix to particle shape factor functions (#763)Gravatar MaxThevenet 1-20/+41
2020-03-06Fix electrostatic solver (#730)Gravatar Remi Lehe 7-89/+107
* Create inputs * fixed stuff * Make smaller test * Re-use EvolveEM for ES calculation * Use correct variable const_dt * Avoid out of bound and modify computation of electrostatic field * Update test file * Remove tab * Minor refactoring of space-charge calculation * Fix electrostatic test * Rename WarpXEvolveEM to WarpXEvolve * Use if conditions instead of ifdef * Correct initialization of `do_electrostatic` * Fix static variable * Add documentation for `do_electrostatic` Co-authored-by: dbizzozero <dbizzozero@users.noreply.github.com>
2020-03-04Fix and automatically test USE_PSATD_PICSAR=TRUE (#769)Gravatar MaxThevenet 2-0/+20
* Fix compilation for hybrid PSATD * Add automated test for hybrid PSATD
2020-03-04Permission issue with Maxwell QED input test file (#766)Gravatar Remi Lehe 1-0/+0
* corrected two typos missed during review of PR-719 * changed file permission from executable to read/write
2020-03-03update tag number (#764)Gravatar MaxThevenet 3-3/+3
2020-03-02Option to specify the type of physical species (#746)Gravatar MaxThevenet 9-30/+142
* first implementation, doesnt link * fix species type and use it in some examples * eol * typo in input file * Apply suggestions from code review Co-Authored-By: Luca Fedeli <luca.fedeli.88@gmail.com> Co-Authored-By: Yinjian Zhao <yinjianzhao@lbl.gov> * changes suggested by review * put species functions into a namespace Co-authored-by: Luca Fedeli <luca.fedeli.88@gmail.com> Co-authored-by: Yinjian Zhao <yinjianzhao@lbl.gov>
2020-03-02Heuristic load balance based on number of particles and number of cells (#737)Gravatar Michael E Rowan 12-50/+241
* Issue #713: Load Balance w.r.t. number of cells + particles README: Update Badged to `master` (#725) * README: Update Badged to `master` Update the badges to check the `master` branch as development branch. * Docs: More dev->master updates - release workflow - contribution guide link Galilean PSATD with shift (#704) * Read Galilean velocity * Prepare structures for Galilean solver * Started implementing Galilean equations * Analytical limits for X1, X2, X3, X4 coefficients added * Slight changes added * Added Galilean position pusher * Scale galilean velocity * Remove unneeded Abort * Fix Galilean pusher * Allocate Theta2 array * Fix definition of coefficients * Increase guard cells for Galilean * Add guard cell in particle exchange * Type corrected * v_gal added to warpx_current_deposition * v_gal added to WarpXParticleContainer.H * Bug fixed - update particle x-position over one time step * Fix issues with merge from dev * Preparation for merging dev into galilean. * Adding galilean shift * Implemented galilean shift * Changed method's name from GalileanShift to ShiftGalileanBoundary * Added doxygen string for ShiftGalileanBoundary * Removed never used method LowerCornerWithCentering * Removed temporary comments * Removed dt as a variable from DepositCharge method and its dependencies * Converted tab to spaces * Removed EOL white space * Add documentation and automated tests * Fix compilation error * Add automated test * Update automated test * Removed temporary used galilean shift * Removed temporary used particle's push for Galilean PSATD * Removed unused statement * Remove EOL white space. * Added zero shift for LowerCorner in RZ geometry * Minor changes to Galilean implementation * Modifications for GPU * Fix typo Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> [mini-PR] when a cufft error occurs, print a meaningful error message (#728) * added method to translate cufft errors * fixed style * bug fixing avoid duplicate tests and plot less often (#726) * avoid duplicate tests and plot less often * fix tests I broke when trying to save plotfiles doc install yt on Summit (#729) * doc install yt on Summit * eol Do not use local Redistribute for electrostatic solver (#731) Add Reset Random Seed Feature (#717) * Add ResetRandomSeed * Add doc * Modify and change location of the code. * Small fix * Try to fix an alert * Try to fix an alert * Modify based on suggestions * Use INT_MAX * Modify based on suggestions. * Modify based on suggestions. openPMD: warn if step is already written (#718) * making sure iterations are written at most once. * prints a warning when iteration is written more than once writting is not stopped * Fixed tabs * included <iostream> as requested by Axel Minor refactoring of space-charge calculation (#732) Improve clarity and documentation Minor Update GNUmakefile Update based on comments Update GNU Makefile Formatting Formatting Formatting Formatting Remove unneeded function Removed unneeded function Formatting Formatting Formatting Whitespace Minor Formatting Formatting Formatting Formatting Formatting Formatting Formatting whitespace Formatting Minor Formatting Remove unneeded template function Change import Minor Formatting Remove unused variable Formatting Update Source/WarpX.H Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> Update Source/Parallelization/WarpXRegrid.cpp Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> Remove `n_particles` and `n_cells` Update Source/WarpX.H Co-Authored-By: MaxThevenet <mthevenet@lbl.gov> Revert clear costs in case of edge case Update to use new load_balance_api in AMReX Tabs Minor * minor: indentation in Source/WarpX.H Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-03-02modified comments and replaced old-style cast (#762)Gravatar Luca Fedeli 1-20/+52
2020-03-02EvolveE: Update Includes (#761)Gravatar Axel Huebl 1-2/+3
Generalize includes to base path.
2020-02-29replace tau by optical_depth_QSR and optical_depth_BW (#742)Gravatar MaxThevenet 6-28/+38
* replace tau by optical_depth_QSR and optical_depth_BW * update python analysis scripts accordingly * fix bug for BW
2020-02-28fixing bug in ckc (#760)Gravatar Revathi Jambunathan 1-10/+10
2020-02-28Avoid using namespace amrex in .H files (#754)Gravatar MaxThevenet 1-10/+14
* avoid using namespace amrex in .H files * need amrex prefix to function arguments * typo
2020-02-28Add acknowledgement doc section (#758)Gravatar MaxThevenet 2-0/+24
* add acknowledgement doc section * better phrasing and fix citation * typo
2020-02-27Update tolerance of regression tests on garuda (#756)Gravatar Remi Lehe 1-0/+3
2020-02-27Comment/Remove Unused Parameters (#749)Gravatar Axel Huebl 15-22/+34
Use the `clang-tidy` pass `misc-unused-parameters` to remove unused parameter warnings. https://clang.llvm.org/extra/clang-tidy/checks/misc-unused-parameters.html) Committed as generic user so git does not credit the many lines to me: ```bash GIT_AUTHOR_NAME="Tools" GIT_AUTHOR_EMAIL="warpx@lbl.gov" \ git commit ```
2020-02-27fix number of steps for injection test on GPU (#755)Gravatar MaxThevenet 1-0/+1
2020-02-27Implement div(E) diagnostics for spectral case (#720)Gravatar Edoardo Zoni 8-24/+121
* Implement div(E) diagnostics for spectral case. * split travis tests in bigger matrix * split more TravisCI tests, add electrostatic, use defaults values * typo * Move computation of div(E) to base class SpectralBaseAlgorithm. * need to split psatd too * consistent variable names and use function to avoid duplication * fix typo for qed tests * typo * also need to update run_tests.sg * Update copyright tags. * change matrix * Add test of div(E) vs rho/epsilon_0 in PML test. * SpectralFieldIndex: reuse memory slot for Bx when computing divE. Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
2020-02-26Insist that small PRs are better. (#752)Gravatar MaxThevenet 1-3/+7
* clarify that we WANT PRs to be small * Update CONTRIBUTING.md Co-Authored-By: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-02-26Fix Util: No Variable-Length Array (#750)Gravatar Axel Huebl 1-6/+1
Defining a variable-length array (VLA) is a C99 feature. It's conditional in C11 and actually not part of C++ either :)
2020-02-26Use C++ templates in `EvolveE` function (#676)Gravatar Remi Lehe 9-440/+386
* Prepare EvolveE * Cartesian equations without current * Implement Cartesian EvolveE * Progress towards cylindrical solver * Correct typo * Implement cylindrical solver (without on-axis condition) * Fix compilation errors * Add regularization for RZ solver * Added correction term for F * Remove file for nodal stencil * Apply stylistic changes to EvolveE * Fix compilation errors * Correction to avoid out of bound * Remove references to old file * Correct bug in EvolveB * Implement correction on axis for Et * Remove previous field update functions * Remove unused code
2020-02-26BackTransformedDiagnostic: ParticleReal (#747)Gravatar Axel Huebl 1-28/+28
Fix type conversions when compiling with `PRECISION=FLOAT`.
2020-02-26Single Precision: Binary Suffixes (#748)Gravatar Axel Huebl 1-0/+7
Add `.SP` for `PRECISION=FLOAT` and `.pSP` for `USE_SINGLE_PRECISION_PARTICLES=TRUE` as binary suffix.
2020-02-25Includes: Clean Up (#743)Gravatar Axel Huebl 96-405/+525
- Use `""` for WarpX-local includes - Order: WarpX `""`, AMReX `<>`, other third party includes `<>` - Add dir prefixes for WarpX Add order to includes by including from `Source/` onward and keeping directory prefixes of non-local includes for clarity.
2020-02-25FDTD: Real Literals and Formatting (#736)Gravatar Axel Huebl 4-149/+176
Clean up `amrex::Real` literals (aka "numbers"). This avoids calculating a line in double precision and casting it down to `Real` on assignment. Also fixes some formatting issues. (Commit credited to Remi.) Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
2020-02-25openPMD: Fix Single Precision Build (#745)Gravatar Axel Huebl 2-2/+2
Fix type for local field data pointer.
2020-02-24Profiler wrapper to allow for cudaDeviceSynchronize (#738)Gravatar MaxThevenet 35-117/+178
* add warpx profiler wrapper * call WX profiler wrapper instead of BL * EOL and cleaning * add doc on profile syncs * do not use PROFILE macros in .H files * replace WX_PROFILE with WARPX_PROFILE and use bool instead of int * typo * this file shouldn't be there
2020-02-24Split travis tests in bigger matrix (#723)Gravatar MaxThevenet 6-26/+113
* split travis tests in bigger matrix * split more TravisCI tests, add electrostatic, use defaults values * typo * need to split psatd too * consistent variable names and use function to avoid duplication * fix typo for qed tests * typo * also need to update run_tests.sg * change matrix * try gathering 2D and 3D tests together * split test matrix to have 2 compilations for each group * EOL * avoid compiling electrostatic * typo * [ci skip] Update Regression/prepare_file_travis.py Co-Authored-By: Axel Huebl <axel.huebl@plasma.ninja> * this is an OR, not an AND * test that TravisCI matrix encompasses all tests * debugging * debugging * should fix the error * Apply suggestions from code review Co-Authored-By: Axel Huebl <axel.huebl@plasma.ninja> * use fewer && * safeguard * should work like that Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-02-24corrected two typos missed during review of PR-719 (#741)Gravatar Glenn Richardson 1-2/+2