aboutsummaryrefslogtreecommitdiff
path: root/Python/pywarpx/fields.py (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2022-06-23Remove Unused Function `getcurrent` (#3197)Gravatar Edoardo Zoni 1-1/+0
2022-06-22AMReX/PICSAR: Weekly Update (#3192)Gravatar Axel Huebl 7-44/+44
* AMReX: Weekly Update * Reset: `reduced_diags_single_precision` * Reset: `background_mcc_dp_psp`
2022-06-21fix missing newline in documentation (#3193)Gravatar Luca Fedeli 1-0/+1
2022-06-20Remove temporary copy of MultiFab (#3190)Gravatar Marco Garten 1-10/+1
Use template specification of amrex::FillBoundary directly with comm_float_type in case of single-precision communication. Leave out FillBoundaryAndSync for now because it requires AMReX changes.
2022-06-20Use ablastr::utils::communication::FillBoundary instead of ↵Gravatar David Grote 1-2/+4
amrex::FillBoundary in PML_RZ (#3191)
2022-06-16Docs: Move LPI Experiment Citation (#3187)Gravatar Axel Huebl 1-5/+5
Moving a citation down to LPI.
2022-06-16Extract function for two-particle fusion reaction (#3175)Gravatar Remi Lehe 2-100/+192
* Extract function for fusion reaction between 2 particles * Extract function for two-particle momenta in fusion reaction * Apply suggestions from code review Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com> * Remove obsolete comment * Update Source/Particles/Collision/BinaryCollision/NuclearFusion/TwoProductFusionUtil.H Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com> Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
2022-06-15ABLASTR: Compute Phi (#2994)Gravatar Axel Huebl 7-267/+473
* ABLASTR: Compute Phi Expose the computation of the electro-static potential for relativistic beams via ABLASTR for ImpactX. * Add `ablastr::fields::computePhi` Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> * Cleanup: Old Comments Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
2022-06-14CMake: Generalize `CMAKE_INSTALL_CMAKEDIR` (#3180)Gravatar Axel Huebl 2-7/+10
* CMake: Generalize `CMAKE_INSTALL_CMAKEDIR` Generalize the control of the global `CMAKE_INSTALL_CMAKEDIR` variable. This way, we can control the variable in superbuilds that include ABLASTR, e.g., in ImpactX. * WarpXFunctions: Remove Unused Python Not (yet) used.
2022-06-14AMReX/PICSAR: Weekly Update (#3177)Gravatar Axel Huebl 5-5/+5
* AMReX: Weekly Update * AMReX: Bump Once More to 1a2fc3dbee1ce0c168cdb66710458757e92a0605
2022-06-14CMake: AMReX_PIC (`-fPIC`) for ABLASTR (#3181)Gravatar Axel Huebl 1-1/+1
Make sure that AMReX is also built with position independent code if the corresponding ABLASTR option is set.
2022-06-14openPMD-api: 0.14.5 (#3171)Gravatar Axel Huebl 1-1/+1
Automatically pull the lastet openPMD-api release, 0.14.5.
2022-06-14[pre-commit.ci] pre-commit autoupdate (#3178)Gravatar pre-commit-ci[bot] 1-1/+1
updates: - [github.com/pre-commit/pre-commit-hooks: v4.2.0 → v4.3.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.2.0...v4.3.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-06-13Extend MCC to accurately treat relativistic particles (#3118)Gravatar Roelof Groenewald 15-227/+541
* initial commit for MCC to support relativistic particles * proper calculation of collision energy when target mass is not much greater than projectile mass * fix bug with scattered velocity rotation to lab frame * refactor the MCC sequence for clarity * use cross-section input to determine energy limits when calculating the maximum collision frequency * code cleanup * updated CI tests * added Collisions section to Implementation Details in docs * reset benchmark for mixed precision MCC test and other more code cleanup * fix issue with single precision and simplified implementation * use `double` for particle mass and energy calculations in MCC * added comment to ImpactIonization.H explaining why `double`s are used for `energy` and `mass` * switch to round off safe version of energy calculation and switched to using u instead of v for gamma*v in ParticleUtils.H * update documentation * simplified expression for collision energy, updated docs * Add comment that the direct solver can be replaced for the MLMG solver once the issue with that solver is fixed (in the 1d MCC test)
2022-06-10Update glossary.rst (#3174)Gravatar Marco Garten 1-0/+6
Add *Ascent, IPO, LTO, PICMI, PICSAR, SENSEI*
2022-06-09Summit: Fix BLAS++/LAPACK++ Modules (#3172)Gravatar Axel Huebl 1-2/+2
These modules are by default using GPU support, which points to CUDA 11.0. Due to C++17 compiler bugs in that early CUDA release, we cannot use that version and pull in circular dependencies to two different CUDA toolkit versions as soon as we use BLAS++ & LAPACK++: when compiling PSATD+RZ. Nonetheless, we do not use BLAS++/LAPACK++ on GPU yet anyway. Thus, we can simply use the CPU versions of those modules.
2022-06-08Fix: ABLASTR CMake Build (macOS) (#3173)Gravatar Axel Huebl 1-1/+1
Fix ABLASTR `WarnManager` build target.
2022-06-08AMReX: Weekly Update (#3170)Gravatar Axel Huebl 5-5/+5
2022-06-08ABLASTR: Move Communication Utilities (#3167)Gravatar Axel Huebl 21-282/+346
* Move: WarpXCommUtils to ABLASTR * Update Usage Locations * Refactor: `WarpX::do_single_precision_comms` Do not use a global from WarpX in ABLASTR routines.
2022-06-07Merge `FillBoundary` and `NodalSync` (`OneStep_nosub`, `OneStep_sub1`) (#3013)Gravatar Remi Lehe 9-113/+122
* Add argument for synchronizing nodal points * Add the option to overridesync in FillBoundaryE / FillBoundaryB * Remove explicit synchronization * Cleanup calls to nodal synchronization * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Improve const Correctness * Cleaning * Merge NodalSync and FillBoundary First Restarting the implementation from scratch. To-do: remove redundant FillBoundary calls. * Merge Only for OneStep_nosub and OneStep_sub1 * Fix Checksums of Python_wrappers * Define sync_nodal_points as WarpX Private Member Variable * Keep Calls to NodalSync for B * Keep Calls to NodalSync for F * Reset Benchmark of reduced_diags_single_precision * OneStep_sub1: Remove All Calls to NodalSync * OneStep_nosub: Remove All Calls to NodalSync * Reset Benchmark of divb_cleaning_3d Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Edoardo Zoni <ezoni@lbl.gov>
2022-06-07Docs: AMReX Debug Moved (#3164)Gravatar Axel Huebl 1-1/+1
The link top the AMReX debugging section in the manual moved.
2022-06-06build image - test fix for 1D builds (#3162)Gravatar Roelof Groenewald 1-4/+9
2022-06-06Release 22.06 (#3161)Gravatar Axel Huebl 11-13/+13
* AMReX: 22.06 * PICSAR: 22.06 * WarpX: 22.06
2022-06-03Vay Deposition: Add Cumulative Sums (#2958)Gravatar Edoardo Zoni 8-0/+399
* Implement Cumulative Sum * Implement Subtraction of Average * Fix Bug, Remove Abort w/ Periodic Single Box * Enforce Consistency w/ Periodic Single Box * Cleaning * Cleaning * Fix Bugs * Cleaning * Compute Cumulative Sums Before Sync * Always Loop Over Full Boxes * MFIter without Tiling * Cleaning * Do Not Store Cumulative Sums * Add Two-Particle Test (3D) * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Set 3D Velocity in CI Test * Precompute Normalization Factors * Add Two-Particle Test (2D) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-06-03Doc: adding few more references on numerical algorithms (#3158)Gravatar Olga Shapoval 1-4/+16
* Added assymetrical PSATD equations. * Fixed typos. * Added few more references on numerical algorithms implemented in WarpX. * Fix Extra Changes
2022-06-02Fix: WarnManager (#3159)Gravatar Axel Huebl 1-2/+2
Fix concurrently landing PRs while moving the warning manager.
2022-06-02Move warning logger in ablastr (#3154)Gravatar Luca Fedeli 33-308/+400
* initial work to move the Warning Logger into ablastr * progress with warn manager class * moved Warning Logger in ablastr * fixed bugs * Fix: `SpectralFieldDataRZ.cpp` Missing include for `WarpX::getCosts(lev);` Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-06-01Change Default for `psatd.current_correction` (#3092)Gravatar Edoardo Zoni 5-43/+64
* Change Default for `psatd.current_correction` * Fix CI Tests * Add Warning * Update Documentation * Current Correction Not Implemented for Multi-J
2022-06-02Fix: ABLASTR rm MPIInitHelpers (#3156)Gravatar Axel Huebl 1-5/+1
For now, let's remove these helpers. They are not yet used in ImpactX and the routines need: - moving in a separate directory - renaming - fixing of linking (at least on macOS) due to #3154 not yet being ported
2022-06-01Clean-up in python wrappers to access particle data (#2531)Gravatar Roelof Groenewald 1-30/+15
* use numLocalTilesAtLevel instead of an empty particle iterator loop to determine the number of non-empty tiles * explicitly zero out the `*particles_per_tile` array
2022-06-01Crusher: Update Modules (#3152)Gravatar Axel Huebl 1-3/+3
Module update on Crusher.
2022-06-01Boundary scraping diagnostic (#3064)Gravatar Remi Lehe 15-23/+324
* Initialize boundary scraping diagnostic * Add new file * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Start fixing diagnostics * Define ReadParameters function * Define stubs for all required functions * Enable new diagnostics in one of the tests * Dump all particles at the end of the run * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Use the same types for different pinned-memory particles * Use the same types for different pinned-memory particles * Fix compilation error * Finalize dumping buffer * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Clean up file * Activate recording of particles at the boundary * New function getParticleBufferPointer * Pass a WarpXParticleContainer to the ParticleDiag * Handle timestamp * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Revert to multi-level simulation * Add documentation and a few checks * Fix error with MPI * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update varnames for RZ openPMD * Add automated test * Add automatic check * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Create new named component particle container * Fix compilation * Make WarpXParticleContainer derive from NamedParticleContainer * Transfer functions that are specific to the particle component maps * Move PIdx * Make PinnedMemoryParticleContainer derive from NamedComponentParticleContainer * Fix compilation * Avoid unnecessary MPI communications * Fix brittle code * Define function `make_alike` * Fix compilation * Add back const anotations * Fix typo * Update code * Fix compilation error * Fix indentation * Fix indentation * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Fix namespace * Improve Error Messages Further * Doxygen: Parameters of the Diag Constructor * Update `WarpX-tests.ini` ... so we can filter the test out if we build w/o openPMD. Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-06-01Acknowledge us: update DOIs (#3150)Gravatar Axel Huebl 1-7/+7
- properly link DOIs (pretty) - add arXiv for non-OA publication(s) - remove arXiv for OA publicaion(s)
2022-05-31AMReX no-MPI Gather Fixed (#3149)Gravatar Axel Huebl 2-5/+3
* CI: Add no-MPI Runtest * FieldProbe: Remove Work-Around #3134
2022-05-31Add 3D tests for proton boron fusion (#2450)Gravatar Neïl Zaim 4-0/+1104
* Add 3D tests for proton boron fusion * Add execute permission to analysis script * Fix Checksum path * Increase tolerance for energy check * Update benchmarks * Specify type of exception in try expect block * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Add review suggestions Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> * Safe Runtime: <species>.do_not_deposit = 1 Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> * Remove division by zero warning in python analysis script * Update cross-section in the E > 3.5 MeV range * Increase some tolerances * Update benchmark Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-05-31Docs: Science Highlights (#3139)Gravatar Axel Huebl 3-2/+78
* Docs: Science Highlights Document science papers of ours and users that use WarpX. * Add: More LWFA Preprints :rocket: * Use Ordered (Numbered) Lists
2022-05-31AMReX: Weekly Update (#3147)Gravatar Axel Huebl 5-5/+5
2022-05-31Move MsgLogger to ablastr (#3148)Gravatar Luca Fedeli 13-53/+55
* move Msg Logger to ablastr * fixed bug * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fixed bug Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-05-30Use Utils::TextMsg::Err and WARPX_ALWAYS_ASSERT_WITH_MESSAGE in more files ↵Gravatar Luca Fedeli 15-106/+137
(#3117) * use formatted error messages * fixed bug * fixed bug * fixed bugs * fixed bug
2022-05-30move serialization to ablastr (#3145)Gravatar Luca Fedeli 2-62/+69
2022-05-27Remove Extraneous `WARPX_DIM_RZ` in Gaussian Laser Init (#3144)Gravatar Ryan Sandberg 1-1/+1
2022-05-27Docs: Improve `collision_name>.species` (#3143)Gravatar Axel Huebl 1-2/+2
... for `background_stopping` we also just use one species.
2022-05-26Write Inputs to `warpx_used_inputs` (#3132)Gravatar Axel Huebl 3-2/+28
Write a general file `warpx_used_inputs` that contains all inputs of a simulation. This is needed, since we add & overwrite the inputs parameters in the inputs file with command-line options regularly. Writing the actually used inputs increases reproducibility of such workflows, especially in unsupervised scripted runs/optimizations.
2022-05-26Fix: Install ABLASTR (#3141)Gravatar Axel Huebl 1-1/+1
Since ABLASTR is a proper library now, we need to install it as well.
2022-05-26SpectralFieldDataRZ: Missing Utils Include (#3140)Gravatar Axel Huebl 1-0/+1
2022-05-25Fix: Field Probe no-MPI Gather (#3134)Gravatar Axel Huebl 1-2/+6
In AMReX, Gather without MPI was implemented as a no-OP. This applies a work-around so we can patch already released WarpX versions.
2022-05-25PML.cpp: missing util include (#3138)Gravatar Axel Huebl 1-0/+1
fix a missing include for `PML.cpp`
2022-05-25Reactivate Multi-J RZ PSATD Checksums (#2459)Gravatar Neïl Zaim 3-34/+29
* Try to reactivate Multi-J RZ PSATD checksums * Reduce size of test and add debug prints * No MPI in test * Revert "Reduce size of test and add debug prints" This reverts commit c8656710de7cdada71a7e8ff5a7c0e44d082e701. * Revert "No MPI in test" This reverts commit 1a0a682018800f606894f039c7c89f28998532b2. * Remove close to zero values from field outputs * Update benchmarks
2022-05-24Test Filter: Include Python Langmuir (#3129)Gravatar Axel Huebl 2-11/+8
* Test Filter: Include Python Langmuir * Reset Benchmarks (Python Langmuir) Co-authored-by: Tools <warpx@lbl.gov>
2022-05-24Specify particle precision (#3065)Gravatar Kevin Z. Zhu 23-256/+349
* Add precision to printed PIC parameters * Added WarpX_PARTICLE_PRECISION as a build option * Update types to ParticleReal * Updated libwarpx to inject particles with correct ParticleReal type * Fix syntax error * Add logic to avoid duplicate definitions * Use correct ParticleReal type in add_particles * Cleaned up code, addressed comments * Update Python/pywarpx/_libwarpx.py Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com> * Removed redundant functions, fixed some typing * Modified template functions * Cast d_w to Real * Fixed failing tests * Cast types to be consistent * removed in-tree-build from pip command * Added GPU device macros to PDim3 methods * rerun tests * Removed unecessary casting, update calls to use PDim3 instead of XDim3 * Refactored comments * Added mcc fields double precision, particles single precision test * Updated casting and formatting * Removed cast, updated declaration Co-authored-by: Peter Scherpelz <peter.scherpelz@modernelectron.com> Co-authored-by: Peter Scherpelz <31747262+peterscherpelz@users.noreply.github.com>