Age | Commit message (Collapse) | Author | Files | Lines |
|
* Fix comments for documentation
* More fixes to comments for documentation
* Fixes in the doc files
* Fix typo in parameters.rst
|
|
* Implement First-Order PSATD Equations
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Fix Unused Parameter Warning
* Fix RZ Build
* Fix Normalization of G to Match PML
* Add CI Test: 3D Uniform Plasma
* Cleaning
* Update 2D CI Checksums
* Update 3D CI Checksums
* Add F,G to CI Checksums of `uniform_plasma_multiJ`
* Allow User to Choose First-Order v. Second-Order
* Add WARPX_ALWAYS_ASSERT_WITH_MESSAGE
* Rename New Class `PsatdAlgorithmFirstOrder`
* Remove Inline Comment
* Update RZ CI Checksums
* Fix inline comment
* Use auxiliary variables to avoid divisions
* Use auxiliary variables to avoid divisions
* Make `nci_psatd_stability` dir and merge inputs
* Move all Galilean tests to `nci_psatd_stability`
* Fix CI
* Fix index for backward FFT of J
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
|
|
|
* initial work to clean WarpX Utils
* remove AMRCore from Ionization tables
* progress
* refactoring of a part of the utils directory
* fix bug
* fixed bug
* fixed bug
* remove debug line accidentally slipped into the code
* remove debug line accidentally slipped into the code
* remove debug line accidentally slipped into the code
* cleaning
* fixed bug
|
|
* Rename PsatdAlgorithm as PsatdAlgorithmJConstantInTime
* Add New Inputs: psatd.J_in_time, psatd.rho_in_time
* Update PSATD Classes
* Fix Bug for FDTD Build
* Fix Warning for RZ PSATD Build
* Fix Multi-J Loop w/ J Constant in Time
* Clean up
* Fix Error Message
* Fix Time of Charge Deposition for Rho Linear
* Add 3D Langmuir CI Tests w/ Multi-J Algo
* Fix Checksums of New CI Tests
* Remove Extra CI Tests (added in #3363)
* Fix CI Tests w/ Multi-J PSATD
* Add Docs for New Input Parameters
* Galilean/Comoving PSATD Not Compatible w/ J Linear
|
|
* Use gemm on GPU for Hankel transform
* Add stream synchronization
* Add `amrex`
* blas::gemm call: add `queue` with device id
* CMake: BLAS++ Missing Deps
* Update installation instructions for Summit
* CMake: BLAS++ should not need curand
* Add paths to blaspp/lapackpp
* Move Queue Constructor to Constructor
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Correct name of profiled area
* Use gemm for inverse Hankel transform
* Add missing comma
* Clean up the code so that it compiles for CPU
* Clean up code ; update documentation
* Update Comment
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
* Update Tools/machines/summit-olcf/summit_warpx.profile.example
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
* Add stream synchronization
* Switch to streamsynchronize
* Update comments
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>
|
|
* Fill Guard Cells of Fields and Currents Independently
* Fill Guard Cells of Averaged Fields as Regular Fields
|
|
amrex::Array4 is a 4D array that can be accessed with three spatial indices
plus an optional component index. We must always provide all three spatial
indices even in 2D.
|
|
* 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>
|
|
(#3117)
* use formatted error messages
* fixed bug
* fixed bug
* fixed bugs
* fixed bug
|
|
|
|
* use WARPX_ALWAYS_ASSERT_WITH_MESSAGE instead of Abort()
* fix bug
* Update Source/WarpX.cpp
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
* use more uniform text formatting
* fixed bug
* fixed bug
* using Utils::TextMsg in more files
* fixed bug
* use Utils::TextMsg in more files
* fixed bug
* use Utils::TextMsg in more files
* fixed last merge conflict
* fixed bug
* fix indentation
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
|
|
|
|
* Cleaned up handling of v_galilean
* Missed one
* Update Source/WarpX.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/WarpX.H
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/WarpX.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/PhotonParticleContainer.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/FieldSolver/WarpXPushFieldsEM.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/WarpXParticleContainer.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/WarpXParticleContainer.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Diagnostics/ReducedDiags/ParticleExtrema.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/PhysicalParticleContainer.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/PhysicalParticleContainer.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Utils/WarpXUtil.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/RigidInjectedParticleContainer.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/ElementaryProcess/QEDPhotonEmission.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/ElementaryProcess/QEDPairGeneration.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/Particles/ElementaryProcess/Ionization.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Update Source/FieldSolver/WarpXPushFieldsEM.cpp
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* More cleanup
* Reset Galilean Benchmarks
* For mirrors, now include the Galilean shift
* Removed the flag since it is true for all calls
* Fix Source/FieldSolver/SpectralSolver/SpectralFieldDataRZ.cpp
* Update Source/WarpX.H
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
Co-authored-by: Edoardo Zoni <ezoni@lbl.gov>
|
|
* Refactoring
* Separate Arrays (Fine Patch)
* Add Aborts w/ Current Centering, MR
* Cleaning
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
|
* Hybrid Algorithms: Add FDTD Support for Centering
* Current Centering Incompatible with Esirkepov Deposition
* Remove FDTD v. PSATD Runtime Conditions
* Add CI Test
* Rename coefs as coeffs in getFornbergStencilCoefficients
* amrex::Vector: Use at() Instead of Operator []
* Reset Benchmark
* Reset Benchmark
* Cleaning
* Reduce Size of New CI Test
* Reset Benchmark
* Fix Bug
|
|
* RZ: Use WarpX::ncomps more consistently
We used `2*modes - 1` in many places, which is harder to follow then
the variable we have.
* Update Comments
* Replace leftover `ncomp` -> `m_ncomps`
|
|
* initial work to add msg formatter
* wip
* replace AMREX_ALWAYS_ASSERT_WITH_MESSAGE with WarpX equivalent
|
|
* Refactor Vay Deposition Functions
* Use rho Index Type for FFT of D
* Improve Doxygen Strings
|
|
* Refactor Current Correction Functions
* Clean Up, Reset Benchmark
|
|
* Only set modified k to 0 for even number of points
* Update Source/FieldSolver/SpectralSolver/SpectralKSpace.cpp
|
|
* Rename PSATD Classes
* Rename PsatdAlgorithmJLinear as PsatdAlgorithmJLinearInTime
|
|
* Separate Class for Multi-J PSATD Algo
* Cleaning
* X1,...,X6 Real, not Complex
* Cleaning
* Improve Comments, Rename Jx as Jx_old (etc.)
|
|
* Initial version of RZ PSATD PML BCs
* Cleaned up some bugs
* Add support of do_pml_in_domain option
* Cleaned up stuff for building
* Fix PMLPsatdAlgorithm macro
* Removed unneeded variable from SpectralSolverRZ
* Change length 3 arrays to length 2 (for 2D)
* Cleanup around DampPML
* Added more checks of pml[lev]
* Added CI test for RZ PML
* Added code to update the corner guard cells
* Further updates
* Added CI test
* Fixed EOL space
* Updated CI benchmarks, removing round off fields
* Changes to CI missed on previous commit
* Various fixes for clean up
* More fixes for clean up
* Further cleanup
* Updated benchmark
* Fixed benchmarks file
* Minor cleanup
* Added round off benchmark values
* Fixed testname in analysis_pml_psatd_rz.py
* Update comment in analysis file
* Put pml_rz code in RZ and PSATD macro blocks
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Add geometry.dims input to CI test input file, inputs_rz
* Cleanup to match recent changes
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
|
|
|
* Remove WarpX::J_linear_in_time
* Fix Bug
* Implement Deposition of Rho at Half Time
* Implement New Equations for E
* Fix New Equations for E
* Cleaning
* Fix Limits of X2, X3, X7
* Implement New Equations for F
* Implement New Equations for F
* Revert E Equations to Avoid Roundoff Changes
* Remove Quadratic Equations
* Remove Deposition of Rho at Half Time Step
|
|
* Doxygen: Fix Diags, FieldSolver, Parallelization & Particles
* Apply suggestions: Remi
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
* Apply suggestions: Roelof
Co-authored-by: Roelof Groenewald <40245517+roelof-groenewald@users.noreply.github.com>
* Apply suggestions: Luca
Co-authored-by: Luca Fedeli <luca.fedeli@for.unipi.it>
* Apply suggestions: Edoardo
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Apply suggestions: Andrew
* Apply suggestions: Edoardo
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Apply suggestions: Neil
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Apply suggestions: Roelof
* Apply suggestions: Weiqun
Co-authored-by: Weiqun Zhang <WeiqunZhang@lbl.gov>
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
Co-authored-by: Roelof Groenewald <40245517+roelof-groenewald@users.noreply.github.com>
Co-authored-by: Luca Fedeli <luca.fedeli@for.unipi.it>
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: Weiqun Zhang <WeiqunZhang@lbl.gov>
|
|
* [Draft] ABLASTR Library
- CMake object library
- include FFTW wrappers to start with
* Add: MPIInitHelpers
* Enable ABLASTR-only builds
* Add alias WarpX::ablastr
* ABLASTR: openPMD forwarding
* make_third_party_includes_system: Avoid Collision
* WarpX: depend on `ablastr`
* Definitions: WarpX -> ablastr
* CMake: Reduce build objects for ABLASTR
Skip all object files that we do not use in builds.
* CMake: app/shared links all object targets
Our `PRIVATE` source/objects are not PUBLICly propagated themselves.
|
|
* AMREX_SPACEDIM : Boundary Conditions
* AMREX_SPACEDIM : Parallelization
* Fix compilation
* AMREX_SPACEDIM : Initialization
* Fix Typo
* space
* AMREX_SPACEDIM : Particles
* AMREX_SPACEDIM : Evolve and FieldSolver
|
|
* Implement div(E)/div(B) Cleaning with Standard PSATD
* Cleaning
* Update Benchmark
* Add Nodal Synchronization of F,G
* OneStep_multiJ: Nodal Syncs, Damp PML
* OneStep_multiJ: Push PSATD Fields in PML
* div Cleaning Defaults (Domain v. PML)
* Include Fix of #2429 until Merged
* Reset Benchmark of Langmuir_multi_psatd_div_cleaning
* Multi-J: Remove PML Support
* Include Fix of #2474 Until Merged
* Exchange All Guard Cells for F,G
* Fix Defaults
* Update Test, Reset Benchmark
* Fix Defaults
* Cleaning
* Default update_with_rho=1 if do_dive_cleaning=1
* Update CI Test pml_psatd_dive_divb_cleaning
* Replace Warning with Abort
|
|
* Python: Start 1D Support
Start supporting 1D builds in Python.
* Fix 1D: PML FillZero unused
... since PMLs are not yet supported in 1D.
* BeamRelevant: Fix unused p_pos0
* FromTXYEFileLaserProfile: Not Impl in 1D
* QED Schwinger: 1D not Implemented
Fix unused warnings, add aborts.
* 1D RealVect/IntVect: Initialization
Use explicit scalar constructors, no braces.
Fix warning in clang 10.
* 1D NCI Filter: Fix unused members & Init
Unimplemented, but throws warnings.
* PSATD: 1D not Implemented
- remove compile warnings
- start porting some parts
* NCIGodfreyFilter: Clean up 2D & Else
|
|
psatd.update_with_rho=0 (#2571)
|
|
* PSATD with div(B) Cleaning: Change Normalization of G
* Use New Normalization also in RZ
* Use New Normalization also in FDTD
* Reset Benchmark of Test divb_cleaning_3d
|
|
* improve error msg
* eliminate final dot
* initial layout of the main classes
* progress
* progress with warnings
* print local errors
* progress with warning logger
* improved MsgLogger
* added file to test warnings
* added method to read debug warnings from inputfile
* progress towards collective gather of warnings
* add missing blank line in warning message
* move misplaced file
* refactoring
* fixed bugs
* progress
* fixed bugs
* fixed some bugs
* it finally works!
* add comments in WarpX.H
* add missing comment
* added comments to WarpX.cpp
* add profiler to WarpX.cpp
* expose option to enable 'warn immediately' feature in cmake
* Add comment to main.cpp
* add missing comment in WarpX.cpp
* add copyright and include guards to WarnManager_fwd.H
* cleaning and added comments to WarnManager.H
* updated test
* added fwd file for MsgLogger
* cleaning
* Added copyright in WarnManager.cpp
* Cleaning
* cleaning
* Add missing copyright
* cleaning
* clean and add comments to MsgLoggerSerialization.H
* cleaning MsgLogger_fwd.H
* cleaning
* continue cleaning MsgLogger
* added comments & bugfixing
* removed test file
* fixed bugs
* Update Source/Utils/MsgLogger/MsgLogger.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/WarpX.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLogger.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLogger.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLogger.cpp
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLoggerSerialization.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLoggerSerialization.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLoggerSerialization.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLoggerSerialization.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/MsgLogger/MsgLoggerSerialization.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/WarnManager.cpp
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/WarnManager.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/WarnManager.H
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Update Source/Utils/WarnManager.cpp
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* fixed bugs
* Update Source/Utils/MsgLogger/MsgLogger.cpp
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
* Added comment to explain rotation
* use last value computed by partial_sum
* fix bug
* now use error stream
* using anonymous namespace for helper functions
* print on both stderr and stdout
* now using runtime parameter to always print warnings
* added documentation
* using long int for counter
* sort affected warnings list
* add doc entry
* removed doc
* added documentation
* fixed bug
* fixed bug
* removing unnecessary text
* reformatting
* reformatting
* fixed bug
* fixed bug
* correction
* add warning_logger.rst to toctree in developers.rst
Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
|
|
* Use parser for more input parameters
* Fix PSATD compilation and apply suggestions from code review
* Avoid out of bound array access for num_particles_per_cell_each_dim
* Fix few input files with respect to num_particles_per_cell_each_dim
* Fix get that incorrectly became query
|
|
* Fix: Missing Include Guards (FWD)
All header files need include guards to avoid double definitons.
* Fix copy-paste guard
|
|
C++ template typedefs do not work in `extern C` blocks.
This work-arounds this construct:
https://github.com/ROCmSoftwarePlatform/rocFFT/blob/rocm-4.3.0/library/include/rocfft.h#L36-L42
This is fixed in the post 4.3.0 rocFFT `develop` branch already.
Fixes build errors of the kind:
```
AnyFFT.H:15:
In file included from /opt/rocm-4.1.0/hip/../include/rocfft.h:38:
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../include/c++/7/cstddef:69:21: error: explicit specialization of undeclared template struct '__byte_operand'
template<> struct __byte_operand<bool> { using __type = byte; };
```
|
|
* RZ PSATD: Time Averaging for Multi-J Algorithm
* Fix Wrong Signs in Bm
* Use Time Averaging in CI Test, Update Benchmark
* Minor Fix
|
|
|
|
* RZ PSATD: Implement Multi-J Algorithm
* Implement J_linear_in_time Option
* Reduce Style Changes
* Move Copy/Zero/Scale Functions to SpectralFieldDataRZ
* Remove Unused Member m_n_rz_azimuthal_modes from SpectralSolverRZ
* Fix CI -Werror Warnings
* Implement Same Changes of #2116, Cleaning
* Fix Bug: Pass Correct dt to SpectralSolverRZ
* Add CI Test
* CI Test: Set random_theta = 0, Update Benchmark
* Remove random_theta from Inputs
* Update Benchmark of multi_J_rz_psatd
|
|
* Multi-J Algo: Make div(E)/div(B) Cleaning Optional
* Remove Unnecessary Newlines
|
|
|
|
* Add New Spectral Index Class
* Cleaning
* Use New Spectral Index Class in PML
* Cleaning
* Reuse Available Data for divE
* Allocate Rho Data Only when Necessary
* Cleaning
* Fix Bug in RZ Geometry
* Revert Commits for Allocation of Rho Data
* Cleaning
* Update Forward Declaration Header
* Do Not Include Unnecessary Header Files
* Doxygen
* Do Not Use Separate div() Cleaning Flags
* SpectralFieldIndex: Add Missing param to Doxygen
* Remove Unused getRequiredNumberOfFields
|
|
* Add Cost Calculations to ApplyFilter
* Add Cost Calculations to ApplyStencil
* Update Doxygen
|
|
* For RZ, changed the sign of the density corrections near the axis
* Further fixes for deposition correction near axis
* Yet one more sign fix for charge density
* For RZ spectral solver, filled in the guard cells below the radial axis
* Fix white space at end of line
* In RZ spectral backtransform, ensure box is valid
* For RZ inverse volume scaling, fixed use of nGrow to use nGrowVect
* Temporary fix adding damped cells in the domain interior
* Bug fix for RZ PSATD scalar backward transform
* Fixes for damping of the fields in the z-guards
* Bug fix in DampFieldsInGuards
* Bug fix in DampFieldsInGuards (for tiling)
* Added warpx_amr_check_input input parameter
* Removed unneeded damp and zero_in_domain input
* Removed damping related code from picmi
* Improved some comments in code copying field to the radial guard cells
* Update Source/FieldSolver/SpectralSolver/SpectralFieldDataRZ.cpp
Simplify the expression for the sign
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
* Updated benchmarks
* Updated tolerance for Langmuir analysis script
* Updated CI test galilean_rz_psatd_current_correction
Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
|
|
* Fix Warnings for RZ Builds
* Add Cost Calculation to RZ Spectral Solver
|
|
* Do Not Always Fill Guard Cells with Inverse FFTs
* Query psatd.fill_guards from Inputs
* Clean Up and Reduce Style Changes
* Fix Bug for Periodic Single Box
* Clean Up and Reduce Style Changes
* Fix Bug for RZ PSATD
* Remove Input Parameter, Default 0 Unless Damping
* Fix CI Tests (2D)
* Fix CI Tests (3D)
|
|
|
|
* fix readability-container-size-empty warning raised by clang-tidy
* fix bug
|
|
* CMake: Find out if FFTW supports OpenMP
Add a heuristics that also works with PkgConfig to query
OpenMP support in FFTW. Enable by default if we build with the
OpenMP compute backend unless explicitly disabled.
Add a macro to control the source-code, since FFTW does not offer
a public define for this.
* FFTW: Initialize Threads
Co-authored-by: Severin Diederichs <severin.diederichs@desy.de>
Co-authored-by: Severin Diederichs <severin.diederichs@desy.de>
|