aboutsummaryrefslogtreecommitdiff
path: root/Python/pywarpx/fields.py (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2021-11-05PICMI: Add max_grid_size, blocking_factor in (x,y,z) (#2524)Gravatar Edoardo Zoni 1-0/+28
* PICMI: Add amr.max_grid_size_<x,y,z> * Set All Flags in Python * PICMI: Add amr.blocking_factor_<x,y,z>
2021-11-05Add Python Wrappers for F,G in PML (#2481)Gravatar Edoardo Zoni 3-0/+303
* Add Python Wrappers for F,G in PML * Add Getters for F,G Nodal Flags * Fix Bug in <F,G>FPPMLWrapper (Default Level) * Fix Bug in F,G Nodal Flags * Use GetPML Method for F,G Nodal Flags
2021-11-03ADIOS SST: Update libfabric wordingGravatar Axel Huebl 1-1/+2
2021-11-03Documentation: write default laser CEP (#2521)Gravatar Neïl Zaim 1-1/+1
2021-11-03README: Remove "beta" badge (#2520)Gravatar Axel Huebl 1-1/+0
We are pretty much production stage by now. Removing the badge also saves some space to avoid a line-break :)
2021-11-03Replace AmrMesh bridge for AmrMeshParticle bridge (#2243)Gravatar Corey Wetterer-Nelson 2-9/+13
* swap out AmrMesh bridge for AmrMeshParticle bridge * make bridge class void if sensei not available
2021-11-02Change regex string to raw string (#2519)Gravatar Kevin Z. Zhu 1-1/+1
2021-11-03Change the way in which the laser particle weight is calculated. (#2417)Gravatar Remi Lehe 24-257/+256
* Minor fixes to the laser particles * Update calculation of the weights for laser antenna particles * Correct name of the constant epsilon_0 * Correct unused variables * Update 2D benchmarks * Update 3D benchmarks * Update RZ tests * Update benchmark for pml_x_psatd * Update energy value
2021-11-02Diagnostics Interval: Non-Optional Input (#2507)Gravatar Axel Huebl 3-5/+4
The defaults were `0` (diags) and `1` (reduced diags). These defaults can lead to user-mistakes (forgetting the parameter) and neither `0` nor every step `1` are sensible defaults. Thus, require the user to set this parameter in all cases.
2021-11-02Release 21.11 (#2518)Gravatar Axel Huebl 9-11/+11
* Update: AMReX/PICSAR to 21.11 AMReX is a post 21.11 release, due to a needed bugfix in compGrad with EB that landed 4hrs after release. * WarpX: 21.11
2021-11-02Close BTD Snapshot when last slice is filled in. (#2516)Gravatar Revathi Jambunathan 5-27/+80
* Add logic to close snapshot when the last slice, with index 0, is filled * fix eol * call flush as soon as last valid Zslice is full * clean up unwanted print statements * add comments in code and doxygen comments * remove commented line * fix eol * add doxygen comments and describe the new parameter introduced in the function * fix typo from Axel Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/BTDiagnostics.cpp * Update Source/Diagnostics/BTDiagnostics.cpp * snake_style * fix eol * modified code so we dont use level info when setting snapshot full info Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2021-11-02Introduce AMReX change of stencil for Poisson solver (#2496)Gravatar Remi Lehe 13-67/+67
* AMReX/PICSAR: Weekly Update (#2478) Weekly update to latest AMReX. Weekly update to latest PICSAR (no changes). ``` ./Tools/Release/updatePICSAR.py ./Tools/Release/updateAMReX.py ``` * Update benchmarks * Update benchmarks for 3D tests * Update benchmarks * Update benchmark * Update benchmark Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2021-11-01libfabric 1.6+: Document SST Work-Arounds (#2515)Gravatar Axel Huebl 3-0/+30
Document work-arounds for libfabric 1.6+ on Cray systems when using data staging / streaming with ADIOS2 SST.
2021-11-01Update Summit Performance Tests (#2479)Gravatar Axel Huebl 1-14/+23
Update modules and software env used.
2021-11-01Revert "Update benchmark"Gravatar Remi Lehe 3-11/+11
This reverts commit 7d74d4416df3c8ee2bec37d1d3173409cc9ca42e.
2021-11-01Update benchmarkGravatar Remi Lehe 3-11/+11
2021-10-29Add option to specificy absolute tolerance for the MLMG solver (#2410)Gravatar Roelof Groenewald 8-26/+103
* added option to specify absolute tolerance for the MLMG solver used in the electrostatic field solve * added absolute tolerance argument to the documentation * fixed bug introduced during copy and paste * expanded documentation for MLMG solver absolute tolerance (added unit) and added a link to the AMReX documentation describing the MLMG solver parameters * possibly more robust handling of the MLMG convergence * switched from std::max to amrex::max to hopefully fix compiler complaints * updated checksum values for MCC test (background_mcc); the values changed only slightly, presumably due to a difference in the initial field solve which would now have the absolute tolerance value included, but since the Python version of this same test (which uses the direct solver) still passes the change is assumed to be inconsequential * another try to fix the compile issues * print a message to notify user if the max norm of rho is zero * Apply suggestions from code review Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> * switched print statements to the new warning logger Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
2021-10-29FieldProbe using Particle (#2430)Gravatar Tiberius Rheaume 14-144/+601
* FieldProbe using Particle Update FieldProbe.cpp Update FieldProbeParticleContainer.H Updates FieldProbe and FieldProbeParticleContainer * Make <diag>.integrate optional The param parser query keeps te default value if no entry is found. * Fixed number particle needed for AddNParticles * Removing unnecessary type definition * Added Doxygen-style comments to FieldProbe.cpp Corrected Poynting calculation by implementing vacuum permeability * Added Doxygen comments * Implement virtual function ReducedDiags::AllocData() + comments * InitData implemented * Fixed Doxygen commenting. * Now uses WarpX physics constant for vaccuum permeability * forgotton comments to MultiReducedDiags * Update Source/Diagnostics/ReducedDiags/FieldProbe.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update FieldProbe.H * Update FieldProbe.cpp * Update Source/Diagnostics/ReducedDiags/ReducedDiags.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/MultiReducedDiags.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/MultiReducedDiags.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update FieldProbeParticleContainer.H * Update Source/Diagnostics/ReducedDiags/FieldProbeParticleContainer.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update FieldProbeParticleContainer.cpp * Update FieldProbe.cpp * Update FieldProbe.H * Update Source/Diagnostics/ReducedDiags/FieldProbeParticleContainer.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbeParticleContainer.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update FieldProbeParticleContainer.cpp * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/ReducedDiags.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Changed enumerated class to struct w/ enumeration. Can remove "static_cast<int>" * FieldProbeParticleContainer::iterator implemented * Cleaned up output += operator, fixed output comments * style fix * Replaces Tabs with 4 spaces * Defined modes and interp order to avoid GPU compilation errors * 1 more tab fix * EoL white spaces * fixed a typoX * Explicitly capturing "this" in parallel for to combat error saying "error #3223-D: Implicit capture of 'this' in extended lambda expression" * removed unncessacesy double define * moved output out of ParallelFor. temp variable for integrate * Parse integrate, integrate all time steps, output setup for integrate and regular * Fixed integrate bug. * ammend header. integreate variable name change. * Integrate values in input file * updates to timing for integrate * Update Source/Diagnostics/ReducedDiags/FieldProbeParticleContainer.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * whitespace * Update Source/Diagnostics/ReducedDiags/FieldProbeParticleContainer.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update Source/Diagnostics/ReducedDiags/FieldProbeParticleContainer.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Apply suggestions from code review - Style Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update reduce_diag_names * field_probe_integrate change * review amends * Apply suggestions from code review - Style Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Vectors + AddNParticles Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update FieldProbe.cpp * Update FieldProbe.H * bug fix and inputs * reintroduce raw_fields functionality * docs update and correction * whitespaces * Fix GPU Compile (raw_fields) * changed f_probe to m_probe apropriately * Typos Co-authored-by: David Grote <dpgrote@lbl.gov> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Better name for ParticleVal * used map for observables and units * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Simplified output. Fixed double integration error * Update FieldProbe.H Removed unneeded variable * comments and fixed rawFields * white spaces * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Update FieldProbe.H * Guard on write * Update Source/Diagnostics/ReducedDiags/FieldProbe.cpp Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Fix Syntax Error in Write * Fix Init: Only 1 Particle (MPI) Only one MPI rank adds a particle, which we done distribute into the right rank. * Fix MPI Deadlock: No Early Return We just want to skip the write to `m_data`, not the rest of the logic. * Fix Probe in Domain Logic General global check, not only on a single rank. * Container: Add `const_iterator` * Fix MPI Comms * Cleaning * Remove PrintAll Leftover * Reduced Diags: Support LoadBalance * Cleaning of "Definitions ()" Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> Co-authored-by: David Grote <dpgrote@lbl.gov>
2021-10-28ROCm 4.5: Dev Packages (#2511)Gravatar Axel Huebl 1-3/+3
* ROCm 4.5: Devel Packages In ROCm 4.5, libraries were split into binary and `-devel` packages, as often done in Debian/Ubuntu packaging. We need the `-devel` packages for headers. Release notes: https://rocmdocs.amd.com/en/latest/Current_Release_Notes/Current-Release-Notes.html * Robust: Try while ROCm 4.5 rollout is ongoing * Clean Up Package is `-dev`
2021-10-28Cori Haswell/KNL: Update PSATD+RZ Instructions (#2499)Gravatar Remi Lehe 1-8/+43
* Add install instructions for blaspp and lapackpp * Cori ADIOS2 Build: Distinct Build Dirs Avoid collisions if someone has existing dirs. * Cori KNL/Haswell: BLAS++/LAPACK++ w/ libSci Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2021-10-28RZ: Allow initialization of only 1 particle per cell in theta, when using ↵Gravatar Remi Lehe 1-0/+6
only `m=0` (#2505) * Allow the initialization of only 1 particle per cell in theta direction * Update syntax
2021-10-27Spatially vary velocity (#2491)Gravatar Hannah Klion 13-103/+504
* initial add of GetVelocity and VelocityProperties * bug fixes and first test implementation * add documentation to parameters.rst * Add error if |beta|>=1 * Check for |beta|>=1 in Juttner as well * update comment on initial_distribution python script * Doxygenization and floats in python Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Address comments in review - Add units to analysis_distribution.py constants - Move a comment on VelocityProperties constructor from implementation to header file Co-authored-by: Hannah Klion <hannah.klion@gmail.com> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2021-10-27Fix Doxygen: Particles (#2486)Gravatar Axel Huebl 15-152/+146
* Fix Doxygen: Particles Fix doxygen errors & warnings. * Apply suggestions from code review Co-authored-by: Luca Fedeli <luca.fedeli@for.unipi.it> Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com> * Apply suggestions from code review * Document ForwardIterator * Fix tparam and comma Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com> Co-authored-by: Luca Fedeli <luca.fedeli@for.unipi.it> Co-authored-by: Neïl Zaim <49716072+NeilZaim@users.noreply.github.com>
2021-10-27Fix Doxygen: Utilities (#2485)Gravatar Axel Huebl 2-13/+37
* Fix Doxygen: Utilities Fix doxygen errors & warnings. * Review: Add doxygen title & brief body
2021-10-27Doxygen: Add Landing (Main) Page (#2509)Gravatar Axel Huebl 2-1/+61
Add a main page for Doxygen, to guide users/developers that land there. Heavily inspired by AMReX' landing page.
2021-10-27Apply damping BC to any direction (#2503)Gravatar David Grote 2-91/+96
* Apply damping to all directions * Fixed error when damped BC is not used on both sides * Bug fix - forget a brace
2021-10-27Doxygen: Tagfile on RTD (#2497)Gravatar Axel Huebl 2-3/+7
Publish the doxygen tagfile on readthedocs. Clean temporary tagfiles in `make clean`.
2021-10-27CI: Draft Do Not Skip Source (#2500)Gravatar Axel Huebl 1-2/+0
Source tests are fast and check that documentation builds successfully.
2021-10-27Python Module for Analysis of Restart Tests (#2493)Gravatar Edoardo Zoni 4-92/+64
* Python Module for Analysis of Restart Tests * Remove Unused Import
2021-10-27Fix BinaryCollision on GPU (#2504)Gravatar Neïl Zaim 1-4/+6
2021-10-27More fixes for the Python fields module (#2502)Gravatar David Grote 1-60/+64
Fixed indexing for PML fields. Add all of the fixes to the setitems routines.
2021-10-26Fix Doxygen: BTD (#2487)Gravatar Axel Huebl 3-48/+56
* Fix Doxygen: BTD Fix doxygen errors & warnings. * Add Reva's Parameter Updates :) * Document leftover params Co-authored-by: Revathi Jambunathan <41089244+RevathiJambunathan@users.noreply.github.com>
2021-10-26Revert latest amrex updates in order to fix CI (#2494)Gravatar Remi Lehe 4-4/+4
* Revert "Update AMReX to include EB solver fix (#2484)" This reverts commit 105e127b95db5707d17cadc77fe68f1d68453d06. * Revert "AMReX/PICSAR: Weekly Update (#2478)" This reverts commit 7341fa0eda39368b1c6f2cf6d6dc20462fd6c3fc.
2021-10-26gitignore: add WarpX tagfile (#2490)Gravatar Axel Huebl 1-0/+1
Temporarily created during documentation build
2021-10-26Fix Doxygen: Embedded Boundaries (#2489)Gravatar Axel Huebl 1-1/+1
Fix doxygen errors & warnings.
2021-10-25Fix Doxygen: FieldSolver/QED (#2488)Gravatar Axel Huebl 2-8/+15
Fix doxygen errors & warnings.
2021-10-25PICMI: Add PML div(E),div(B) Cleaning Options (#2480)Gravatar Edoardo Zoni 3-2/+5
2021-10-25Raise an exception if an MultiFab was not intialized (#2476)Gravatar David Grote 2-75/+97
2021-10-25Update AMReX to include EB solver fix (#2484)Gravatar Kevin Z. Zhu 4-4/+4
2021-10-25Bugfixes for ref_ratio = 4 in the moving window direction. (#2452)Gravatar Andrew Myers 5-14/+31
* Bugfixes for ref_ratio = 4 in the moving window direction. * == should be <= * only adjust guard cells for moving window by ref_ratio if nlevs > 1 * restore logic to always have at least 2 grow cells if moving window is on * remove comment about this not being needed on level 0 - it does.
2021-10-25Modernize field access in yt scripts (#2455)Gravatar Luca Fedeli 10-36/+36
* increase tolerance for single precision test * reset checksum * change ad['field'] into ad[('mesh','field')] or ad['boxlib','field'] in yt script * update field access in several files * Update Examples/Tests/Langmuir/analysis_langmuir_multi_rz.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi_2d.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi_rz.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi_2d.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi_rz.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi_2d.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi.py * Update Examples/Tests/Langmuir/analysis_langmuir_multi.py * Update Examples/Modules/boosted_diags/analysis_3Dbacktransformed_diag.py * Update Examples/Modules/boosted_diags/analysis_3Dbacktransformed_diag.py Co-authored-by: Tools <warpx@lbl.gov>
2021-10-25Spatially vary temperature in momentum initialization (#2357)Gravatar Hannah Klion 13-69/+394
* Add GetTemperature class - Object that can be called with signature GetTemperature(x,y,z) to get temperature at coordinates x,y,z - Can take either a constant temperature or a parser, to be passed in from the input param file * Further develop GetTemperature - Rename GetTemperature to TemperatureInit - TemperatureInit is a union of TemperatureInitParser and TemperatureInitConstant, modeled after the InjectorMomentum class - InjectorMomentum will take a TemperatureInit object where it needs a temperature, rather than a constant value. It will be able to call TemperatureInit->getTemperature(x,y,z), regardless of the temperature type * finish renaming GetTemperature to TemperatureInit * InjectorMomentum now takes TemperatureInit object - For Maxwell-Boltzmann and Maxwell-Juttner distributions, InjectorMomentum takes a pointer to TemperatureInit rather than a single amrex::Real * Pass TemperatureInit to InjectorMomentum by reference - Pass TemperatureInit to InjectorMomentum by reference - Removed copy constructor deletion - Fixed some other compilation errors * Prevent copy constructors for TemperatureInit * Add PlastmaInjector::parseTemperature - parseTemperature reads temperature parameters and creates a TemperatureInit object that contains the information - parseTemperature returns a unique pointer to the TemperatureInit object, which is then passed directly to the InjectorMomentum constructor * InjectorMomentum takes unique pointer to TemperatureInit - Boltzmann and Juttner InjectorMomentum types take a unique pointer to Temperature Init - Adjusted initializers to move instead of copy, where required - Added a blank destructor for Object, which may not actually be necessary, but currently needed for compilation. * Fix bug and pass TemperatureInit by reference - Fixed bug where the parser in TemperatureInit was going out of scope before we were done using the executor. This has been fixed by making the parser a member of the PlasmaInjector class so it won't be prematurely garbage collected. This should be temporary until the refactor of TemperatureInit - TemperatureInit is no longer a union, and is instead just a struct whose first member indicates the type - The PlasmaInjector method that reads the temperature parameters is now void. It takes a TemperatureInit object by reference and does the real initialization. * Restructure how temperature data are stored - TemperatureInit renamed to TemperatureProperties - Temperature data is stored in an instance of TemperatureProperties, a smart pointer to which is owned by PlasmaInjector. - TemperatureProperties is initialized with a reference to parameters, and owns the temperature function parser, if used. - GetTemperature is a functor that takes three doubles (x, y, and z coordinates) and returns the initial temperature at that location. This is either a constant or a parser evaluated at (x,y,z), depending on input parameters. - InjectorMomentum takes a const reference to GetTemperature in its constructor when needed and stores a copy. The compiled parser will remain in scope because it is owned by TemperatureProperties, which is in turn owned by PlasmaInjector. * Fix compilation bugs - Fix some include file names - Add TemperatureProperties.cpp to CMake - Fix some class names * update list of .cpp files in Make.package * Split GetTemperature implementations implementations into .cpp * update include statements * fix default constant temperature * add documentation for new runtime params * add further documentation * added test for spatially varying temeperature * update comments on tests * remove empty destructor for Object in InjectorMomentum * reset benchmark for initial_distribution because added check for spatially-varying temp * Moved GetTemperature::operator() to header file since that seems to help GPU compilation on my local machine * make position arguments to GetTemperature const * LaTeXify new documentation Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Add const where applicable Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * renamed TemperatureInitType members to avoid collisions with MacroparameterInitType * Update Examples/Tests/initial_distribution/analysis_distribution.py Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Add comment to document why h_mom_temp is a PlasmaInjector member * Add warning/abort messages if temperature is out of MJ or MB range * Theta is now mandatory * update documentation * negative theta values not allowed * Remove theta>0.01 warning in getMomentum and fix GPU compile issues Co-authored-by: Hannah Klion <hannah.klion@gmail.com> Co-authored-by: Tools <warpx@lbl.gov> Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2021-10-25AMReX/PICSAR: Weekly Update (#2478)Gravatar Axel Huebl 4-4/+4
Weekly update to latest AMReX. Weekly update to latest PICSAR (no changes). ``` ./Tools/Release/updatePICSAR.py ./Tools/Release/updateAMReX.py ```
2021-10-25Make tests `pml_x_psatd` and `pml_x_yee` also restart tests. (#2444)Gravatar Yinjian Zhao 5-6/+75
* Test will crash for some reasons. * Modify more. * Debuging. * Fix a bug. * Change interval back to 50. * Apply suggestions from code review * Add more careful restart tests. Co-authored-by: Remi Lehe <remi.lehe@normalesup.org>
2021-10-25Increase EB coarsening level for linear solvers (#2457)Gravatar Weiqun Zhang 1-2/+9
* Increase EB coarsening level for linear solvers * Apply suggestions from code review Add comments.
2021-10-25Fix Bug with Python Wrappers for F,G (#2474)Gravatar Edoardo Zoni 2-8/+8
2021-10-23Add automated test of refined injection feature. (#2473)Gravatar Andrew Myers 3-0/+116
* Add automated test of refined injection feature. * revert accidental changes * missing import * fix typo in analysis script * add checksum stuff to analysis script * add benchmark file
2021-10-23PICMI: Add div(E),div(B) Cleaning Options (#2477)Gravatar Edoardo Zoni 3-2/+4
* PICMI: Add div(E),div(B) Cleaning Options * Update PICMI Version: 0.0.15
2021-10-22Fix average wall time per step (#2475)Gravatar Weiqun Zhang 1-1/+2
It should be computed using the number of steps in this run, otherwise the number is incorrect for restart runs.
2021-10-22Fix damped BC when running with a single box (#2407)Gravatar David Grote 2-63/+79
* Fix damped BC when running with a single box * Cleanup of comments and code