aboutsummaryrefslogtreecommitdiff
path: root/Source/FieldSolver/FiniteDifferenceSolver (follow)
AgeCommit message (Collapse)AuthorFilesLines
2020-07-22Cleaner calculation of the simulation timestep (#1031)Gravatar Remi Lehe 4-0/+82
* 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-06-12Add CMake Scripts (#759)Gravatar Axel Huebl 2-0/+18
* [skip travis] CMake: Add CMake Scripts This add CMake scripts for the CMake build system generator. * CUDA Support Achieved Fastest compile via: cmake .. -DENABLE_CUDA=ON -DCUDA_ARCH=6.0 * CMake: openPMD & QED * CMake: Dimension Support WarpX_DIMS=2,3,RZ * CCache & Out-of-Source Enable CCache when found and prevent in-root builds (in-source okay-ish). * CMake: CUDA C++ Language Minimum * Add new Files * CI: Migrate macOS to CMake * Fortran: Enable Because Transitive ... for now :) * CI: Migrate Linux ICC to CMake * CI: Verbose Make * CMake: Add Missing PSATD Sources * CMake: PSATD, Compute, Precision, Clean
2020-05-29Macroscopic EvolveE with constant properties (#991)Gravatar Revathi Jambunathan 6-0/+241
* Adding macro-E Push and new file * Add macroEvolveE, call it, and include algo selection in utils * fix eol * Fixing bug in macroE for sigma method 1 * changing MacroEvolveE to MacroscopicEvolveE * add class for macroscopicproperties and an object in WarpX class * fix eol * adding templated ckc call with comment that EvolveE is same for yee and ckc * add header file pointing to ckc algorithm * adding obejct m_macroscopic_properties to access sigma,eps,mu * some cleaning * Adding comments * adding documentation * spelling wandroff to wendroff * fixing eol * eol * const in the right place. Thanks bot! * profiler for macroscopic evolveE * re-introduced deleted line when fixing conflict to declare templated EvolveBPMLCartesian function * fixing if-else statement for RZ in MAcroscopicEvolveE.cpp * adding suggestions and corrections made in PR review. * fixing grammar in docs * fix eol whitespace * fix typo
2020-05-22Use C++ templates for the PML field pusher (#808)Gravatar Remi Lehe 5-0/+488
* Allow to pass component in stencil templates * Define and use enum to address PML components * Start implementing PML equations * Implement EvolveEPML * Implemented EvolveBPML * Added interface for pml_has_particles * Added interface for pml_has_particles * [skip ci] Add update expressions for E * [skip ci] Fix compilation * Call new PML pusher for B field * Fix compilation errors * Fix more typos * Abort code if `do_pml` is used in cylindrical geometry * Add contribution from F in EvolveEPML * Remove unused function for CKC coefficients * Remove unneeded ExchangeF * Add damping for J * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Revert "Apply suggestions from code review" This reverts commit 08f262a676ba5e5b44b9118b8daba1b03c08b64b. * Remove sanity checks for nodal * Implement dive cleaning in PML * Implement push F in the PML * Clean-up unused code Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2020-05-13Allow to pass component in stencil templates (#1012)Gravatar Remi Lehe 3-70/+70
2020-04-06replace ixType().ixType() with ixType().toIntVect() for clarity (#895)Gravatar MaxThevenet 4-16/+16
2020-04-02Includes: Only From `Source/` (#873)Gravatar Axel Huebl 3-5/+4
* Includes: Only From `Source/` Avoid adding all directories to include paths: - automatically structure includes more clearly, e.g. a util include with a short name is clearly seen as such - should have some small positive impact on compile time, since the compiler has to search less directories for an include file * Includes: Fix Non-Local Paths Add missing prefix relative to `Source/` for WarpX-local includes.
2020-03-31Make Build System: No Public Includes (#870)Gravatar Axel Huebl 1-1/+0
Remove the listing of all header-files from the Make-buildsystem. Listing public header files here tells the AMReX Makefile build system to install those in an install step after build. WarpX is currently not building a public library which can be consumed by users for their projects and only an executable.
2020-03-30Remove compiler warnings (#843)Gravatar Edoardo Zoni 2-2/+6
* Fix compiler warnings with DIM=2 * Fix compiler warnings with USE_RZ=TRUE * Fix compiler warnings with USE_PSATD=TRUE and DIM=2 * Fix compiler warnings with USE_PSATD=TRUE and DIM=3 * Fix bug: discard only return value when calling DefineAndReturnParticleTile * Remove unused variables not triggering warnings
2020-03-16Use C++ templates for the `EvolveF` and `ComputeDivE` function (#753)Gravatar Remi Lehe 4-0/+423
* 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-13Fixed FDTD coefficients of E push from F (#804)Gravatar David Grote 1-13/+13
2020-03-02EvolveE: Update Includes (#761)Gravatar Axel Huebl 1-2/+3
Generalize includes to base path.
2020-02-28fixing bug in ckc (#760)Gravatar Revathi Jambunathan 1-10/+10
2020-02-26Use C++ templates in `EvolveE` function (#676)Gravatar Remi Lehe 3-0/+369
* 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-25Includes: Clean Up (#743)Gravatar Axel Huebl 2-2/+2
- 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-06Add Doxygen commentsGravatar Remi Lehe 6-10/+28
2020-02-06Correct errors in CKCGravatar Remi Lehe 1-0/+5
2020-02-06Prepend class members with "m_"Gravatar Remi Lehe 3-19/+19
2020-02-06Explicitly use "Cartesian" in the name of algorithmsGravatar Remi Lehe 5-44/+36
2020-02-06Make calculation of CKC coefficients for const friendlyGravatar Remi Lehe 4-91/+73
2020-02-06Implement review commentsGravatar Remi Lehe 5-27/+27
2020-02-06Make on-axis condition more explicit in EvolveBGravatar Remi Lehe 2-35/+42
2020-01-31Correct alignment of pre-compiler directiveGravatar Remi Lehe 1-4/+4
2020-01-31Correct name of Downward derivativeGravatar Remi Lehe 3-9/+9
2020-01-31Left-align pre-compiler directivesGravatar Remi Lehe 3-42/+42
2020-01-31Add `const` anotationsGravatar Remi Lehe 4-32/+32
2020-01-29Add copyrightsGravatar Remi Lehe 7-0/+49
2020-01-28Add commentsGravatar Remi Lehe 7-65/+151
2020-01-28Remove unused functionsGravatar Remi Lehe 1-1/+2
2020-01-28Fix typo in cylindrical operatorGravatar Remi Lehe 1-2/+2
2020-01-28Fix compilation for GPUGravatar Remi Lehe 1-0/+4
2020-01-28Register missing parameterGravatar Remi Lehe 1-0/+1
2020-01-28Fix type of input parameter "do_nodal"Gravatar Remi Lehe 2-3/+3
2020-01-27Fix cylindrical solverGravatar Remi Lehe 1-1/+1
2020-01-27Implement nodal solverGravatar Remi Lehe 4-14/+129
2020-01-27Fix compilation errorsGravatar Remi Lehe 5-42/+80
2020-01-27Implement cylindrical Yee algorithmGravatar Remi Lehe 3-69/+73
2020-01-26Started cylindrical implementationGravatar Remi Lehe 3-8/+205
2020-01-24Bug fixes for CKCGravatar Remi Lehe 2-7/+8
2020-01-24Added CKC algorithmGravatar Remi Lehe 2-2/+213
2020-01-24Implement PR comments and fix compilation for PSATDGravatar Remi Lehe 2-23/+23
2020-01-13Correct compilation errorsGravatar Remi Lehe 2-28/+45
2020-01-10Start fixing compilation errorsGravatar Remi Lehe 4-55/+63
2020-01-10Update finite-difference solverGravatar Remi Lehe 2-18/+21
2020-01-10Update Evolve BGravatar Remi Lehe 4-30/+41
2020-01-10Started implementing finite difference solverGravatar Remi Lehe 4-0/+201
Added Yee algorithm