Age | Commit message (Collapse) | Author | Files | Lines |
|
* Add timers
* eol
* AtomicAdd
* lev argument for getCosts
* style
* style
* wip
* eol
* .ipynb
* passing down lev
* eol
* passing lev
* eol
* Update Source/Particles/Collision/PairWiseCoulombCollision.cpp
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
* Add for QED and ionization routines
* eol
* remove unneeded
* mfi-->pti
* move cost
* eol
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
|
|
* Refactor and clean up some spectral classes
* Abort when current correction or Vay deposition are not implemented
* Implement general equations for averaged Galilean
* Allocate averaged MultiFabs also when aux_is_nodal=1 and do_nodal=0
* Allocate +ngextra guard cells also for averaged MultiFabs
* Make alias MultiFabs for averaged aux data
* With averaging, interpolate from avg_fp (not fp) to aux
* Fix some limits of the coefficients
* Fix bug causing NaNs in spectral coefficients
* Add 2D CI test with same analysis as nodal test
* Add 3D CI test with same analysis as nodal test
* Add limit that was not covered (knorm=0 && knorm_c!=0 && nu=0)
* Allocate T2_coef only if Galilean algorithm is used
* Allocate X4_coef only if Galilean algorithm is used
* Remove extra ghost cell from 'avg_fp' MultiFabs
|
|
* Fix warnings for 2D/3D PSATD builds
* Fix warnings for RZ PSATD builds
* Update FIXME comment: no known bug
* Fix remaining warning for RZ PSATD builds
|
|
|
|
* Introduce option to update E with/without rho
* Clean up
* Implement current correction for Galilean PSATD (needs bug fix)
* Include equations in docs
* Fix EOL whitespaces error
* Small clean-up
* Implement Galilean PSATD update without rho
* Clean up
* Fix bug in current correction
* Fix EOL whitespaces
* Clean up
* Fix unused import
* Remove unused variable
* [skip CI] Improve docs
* Clean up style
* Fix EOL whitespaces
* Fix EOL whitespaces
* Clean up style
* Revert analysis script to old status
* [skip CI] Clean up style
* Make equations more human-readable and improve comments
* 2D test with current correction works
* Temporary build fix as in #1197
* 3D test with current correction works
* Rename th and th_star as theta and theta_star
* Fix a couple of wrong comments
* Add vertical spaces to improve readability
* Improve documentation
* Function CurrentCorrection is now pure
* 2D benchmark fields data are now correct
* Add limits of coefficients for nu=-1
* Change default of update_with_rho for Galilean PSATD
|
|
* 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>
|
|
* Introduce option to update E with/without rho
* Clean up
* Include equations in docs
* Fix EOL whitespaces error
* Small clean-up
* Clean up
|
|
* Clean up implementation of current correction:
- abort when current correction runs with psatd.periodic_single_box_fft=0
- rename input parameter from psatd.do_current_correction to psatd.current_correction
- add nodal tests in 2D and 3D (using direct current deposition)
- change 2D test: use Esirkepov deposition, instead of direct, as in 3D test
- add/update relevant checksum benchmarks
* Small clean-up
|
|
* Start implementing PSATD push without rho.
TODO: 1) fix unit test pml_x_psatd;
2) try new PSATD push in PML;
3) avoid intro of new derived class?
* Correct PSATD push to fix PML test.
* Few improvements on new PSATD push:
- new class name is 'PsatdAlgorithmMixed' (both rho and J are used);
- new algorithm parameter to choose between available implementations:
parameter name is 'psatd_push', possible values are 'standard' for
old implementation using rho via Gauss law and continuity equation
and 'mixed' for new implementation using rho via Gauss law and J for
all remaining terms.
* Fix style error (tabs vs four white spaces).
* Improve comments for available PSATD algorithms.
* Correct few typos in latest comments.
* Implement first current correction:
- new member function 'CurrentCorrection' in class SpectralSolver;
- correction applied only without subcycling (in function 'OneStep_nosub');
- TODO: add correction when subcycling is used (in function 'OneStep_sub1');
- back to old implementation of PSATD push of E and B (class 'PsatdAlgorithmMixed' removed);
- TODO: PML unit test 'pml_x_psatd' does not pass.
* Small cleanup:
- remove residual option for choice of PSATD push algorithm (only one choice now);
- improve comments.
* 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.
* Small clean-up.
* Small clean-up
* Remove option for current correction from input files of two new tests (not used)
* Small clean-up: remove unnecessary references
* More clean-up (minimize style changes to keep PR simple).
* Add specific 2D/3D tests for current correction:
- 'Langmuir_multi_2d_psatd_cc': same input file as 'Langmuir_multi_2d_psatd',
except for current correction and output of divE;
- 'Langmuir_multi_psatd_cc': same input file (3D) as 'Langmuir_multi_psatd',
except for current correction and output of divE;
- add corresponding Python scripts for analysis: same as previous ones,
except for check on L-infinity spatial norm of rho/epsilon_0 vs div(E);
- revert changes on old tests: do not use current correction in old tests
(benchmarks on Battra do not need to be updated).
* Improve comments.
* Start implementation of new averaging with staggering:
- face-to-cell-center and edge-to-cell-center replaced so far;
- TODO: node-to-cell-center and 1D behavior (AMREX_SPACEDIM=1).
* Remove unrelated style changes (cleaner PR).
* Avoid duplication of input files and analysis scripts for new tests
* Improve comments for Doxygen documentation.
* Improve comments for Doxygen documentation.
* Small clean-up
* first implementation of Diags base classes
* Small clean-up
* Small clean-up
* Fix erroneous non-ASCII character
* Small clean-up
* Auxiliary function for current correction in class WarpX to keep OneStep_nosub clean
* Remove unrelated style changes (cleaner PR)
* Improve comments
* Instrument virtual function 'CurrentCorrection'
* Trying to fix build error detected by LGTM analysis only
* add example, temporarily
* Continue implementation of new averaging with staggering:
- new function takes reference to single MultiFab (no vector);
- TODO: node-to-cell-center still in progress.
* Fix small bug and clean up
* Fix bug in loop over n=0,...,ncomp-1 and clean up
* add more functions
* Add Doxygen documentation and clean up
* Small clean-up in Doxygen documentation
* Compile in single precision: add _rt suffix to avoid unnecessary conversions
* Avoid accessing staggering index directly from IntVect in innermost loops
* Implement periodic-single box option for spectral
* Fix out-of-bound in the periodic, single-box case
* Replace do-while loop with for loop (default ncomp=1)
* Remove temporary pointer and pass reference to MultiFab (instead of MultiFab*)
* Replace AMREX_LAUNCH_HOST_DEVICE_LAMBDA with ParallelFor
* cleaning and initialize output mf
* use general average routine
* move flush in new class, and implemented the Plotfile derived class
* add comments
* eol
* free memory in destructor
* typo
* typo
* no need to clear MF pointers there
* though shalt not break existing tests
* FlushRaw doesnt have to be virtual for now
* The importance of being constant
* Capability to select fields in output files
* EOL
* revert to old inputs
* const in right place
* avoid brace initializer there
* oops, fix logic error in is_in
* Use old name for output image of new 2D test
* user can choose flush interval, same behavior as plot_int
* Small clean-up in Doxygen documentation
* Add option to plot raw fields
* eol
* replace ter flush with dump to avoid confusion
* add options
* Diagnostics stores a vector of functors to compute diags on the fly
* eol
* Field gather from diags to sync particle quantities
* New diagnostics handle RZ with same behavior as old ones
* cleaning and doc
* const ref for string
* smarter for loop from Axel and typo fix from Reva
* Functors to compute some fields
* simplify code following Dave's comments
* Create subfolders and add more output options (divE etc.)
* eol
* Add documentation for periodic_single_box_fft
* For periodic, single-box, apply current correction after guard cell exchange
* rename mode_avg to convertRZmodes2cartesian
* Update CellCenterFunctor.H
* fill varnames and vector of functors at the same time
* output rho_new, not rho_old
* WarpX instance not needed here
* add const
* little bit more of reorganization
* Travis CI: force 2 MPI processes only for numprocs > 2
* Use special FFT (PR #834) and new diagnostics (PR #844) in new tests
* Improve Doxygen documentation
* Move option do_current_correction from warpx to psatd
* Fix path to output files for tests using new diagnostics
* Fix additional paths to output files for new diagnostics
* Add input paramter do_current_correction to documentation
* Fix test Langmuir_multi_psatd_hybrid: do not plot divE
* Remove input parameter amr.plot_int in tests using new diagnostics
* Trigger failing source/style checks on Travis CI
* Fix build error due to public include
* Add missing const keywords
* Change test names and corresponding analysis scripts
* Improve Python script for analysis
* Do not rename output files in old CI tests (without current correction)
* Fix output file name prefix for some tests
* Trigger Travis CI build after AMReX bug fix
* Void commit: trigger Travis CI build
* Fix some tests failing due to recent changes in master
* Use new diagnostics for particle output correctly
Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
* Print tolerance and error in Python analysis
Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
* Print tolerance and error in Python analysis
Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
* Improve documentation
Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
* Fix EOL white spaces
* Fix name of particle output variables
Co-authored-by: MaxThevenet <mthevenet@lbl.gov>
Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
|
|
- 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.
|
|
* 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>
|
|
|
|
|
|
|
|
|
|
|
|
|