aboutsummaryrefslogtreecommitdiff
path: root/Python/pywarpx/Geometry.py (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2022-04-06AMReX: Update to latest commit (#3021)Gravatar Axel Huebl 5-5/+5
2022-04-05Semicoarsening in electrostatic solvers (#3024)Gravatar Weiqun Zhang 6-12/+45
* Semicoarsening in electrostatic solvers Enable semicoarsening in electrostatic solvers if the problem is anisotropic due to relativistic beam and/or anisotropic cell spacing. * Update relativistic_space_charge_initialization benchmark
2022-04-05LoadBalanceCosts: Fix Unused Vars in ScriptGravatar Axel Huebl 1-4/+0
Leftover to #3019
2022-04-05LoadBalanceCosts: num_cells & num_macro_particles (#3019)Gravatar Axel Huebl 5-32/+82
* Examples: LBC in Laser-Ion Example * LoadBalanceCosts: num_cells & num_macro_particles * Fix Script: Wrong Header Counting Spliced out the first to columns twice. * Fix Script: Blocking Factor The script did not work if a direction only had one block * Fix Script: 2D/3D There is no generic way from the data we write to find this out, without breaking corner cases such as one-block in one direction.
2022-04-04Refactoring: More General Interfaces (#2991)Gravatar Edoardo Zoni 4-153/+256
* Refactoring: More General Interfaces (J, rho) * Refactoring: More General Interfaces (E, B) * Refactoring: More General Interfaces (rho) * Fix const Correctness * Fix const Correctness (continued) * Fix Bugs * Refactoring: More General Interfaces (averaged E, averaged B)
2022-04-04Moving Frame Field Probe Functionality (#2996)Gravatar Tiberius Rheaume 7-3/+91
* DRAFT for Moving Frame * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Adds m_last_compute_step * Generalized SetParticlePosition, semicolons and formatting * Update Source/Diagnostics/ReducedDiags/FieldProbe.H Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Moved particle push before calculations. Condensed stuff. * Fixed Velocity, added start and stop time functionality * Documentation * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * Empty-Commit * Fixed ParallelFor from review * FP moving window in laser_acceleration 1d, 2d, 3d test * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Line detector instead of point 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-04-02Allow process signals to trigger checkpoint or break behavior (#2896)Gravatar Phil Miller 9-2/+376
* Beginnings of signal handling machinery * Add tentative logic to make checkpoint call * Adapt formatting slightly * Add calls to read signals and set up signal handlers * Initialize signal flag array * Add parsing of signal names, and fix some whitespace issues * Skip signal setup on Windows * added checkpoint and break signal inputs to picmi.py * Address initial review requests * Correct comment to match changed code * Convert maximum signal number to a symbolic name * Always parse signal input, and error out on Windows or wherever it may be unsupported * Typo fix * Add missing reset of checkpoint signal flag * Add reset of break signal, in support of Python or library usage * Test for a configured checkpoint diag when asked to checkpoint on a signal * Fix typo in Linux code path * Clean up MPI support * Use symbolic name for maximum signal number * Fix unused variable in the no-MPI case * Add missing header inclusions * Switch signal parsing to an enumerated table * Test signal handling for Linux, not GNU C library * Avoid another magic number * Update MPI_Ibcast call to match symbolic array length * Update loop over signal flags to use symbolic limit * Match #includes to usage * Add omitted C++ std <atomic> header include * Guard entire set of signal definitions as *nix-only, not for Windows * Broaden Windows exclusion to avoid zero-length array that displeases MSVC++ * Check return value from sigaction() * Convert conditional calls to Abort() to assertions * Move check for platform support to input parsing * Shift signal handling code over toward ABLASTR to share with ImpactX and Hipace++ * Minor cleanup * A bit more cleanup * Fix formatting nits * Add AMReX error handling on MPI calls * Add ABLASTR signal handling code to GNU makefile too * Document new input parameters * Use ABLASTR assertion macros in ABLASTR code * Convert requests limit value to a requests array size * Generalize signal handling to an arbitrary set of potential actions * Rename class to match usage and file name * Stick stuff in ABLASTR namespace * Indent conditional includes as requested Co-authored-by: Roelof <roelof.groenewald@modernelectron.com>
2022-04-02Switch test to use common build with openPMD enabled (#2988)Gravatar Phil Miller 1-2/+2
* Switch test to use common build with OpenPMD enabled * Match GNU make to CMake change Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-04-01Release 22.04 (#3018)Gravatar Axel Huebl 11-13/+13
* AMReX: 22.04 * PICSAR: 22.04 * WarpX: 22.04
2022-04-01CI: Fix Small Issue w/ Langmuir Plots (#3010)Gravatar Edoardo Zoni 2-10/+14
2022-03-31CI: NVHPC New Apt Repo (#3014)Gravatar Axel Huebl 2-10/+10
Update the NVHPC install instructions to the latest and greatest. Fix failing CI (dependency install).
2022-03-31Add particle filter in ParticleReductionFunctor (#3001)Gravatar Hannah Klion 10-49/+137
* add filter function to particle reduction functor * copy class member to GPU * streamline reading in parser filter functions * streamline filter calculation * fix CI test * reset benchmark for particle_fields_diags(_single_precision) because added test for filter functionality * modify test * fix typos * update documentation * add map header * change particle filter condition to boolean check rather than >0.5 * Update Source/Diagnostics/ComputeDiagFunctors/ParticleReductionFunctor.cpp Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> Co-authored-by: Tools <warpx@lbl.gov> Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
2022-03-30AMReX/PICSAR: Weekly Update (#3003)Gravatar Axel Huebl 6-32/+32
* AMReX: Update to latest commit * Reset: reduced_diags_single_precision Reset the benchmark table due to a change in shift periodic.
2022-03-31BTD : Redistribute Particles in buffer to lab frame box array and copy with ↵Gravatar Revathi Jambunathan 8-6/+19
(local=true) (#2986) * when flushing data copyParticles with local=true * copyParticles with local = true for openPMD * update amrex dependencies to include PR 2673 in amrex * Particles in buffer redistributed to the lab frame box arrays * [Draft] Verbose Output of Dump Parameters offset increases without ever dumping a particle * Update Source/Diagnostics/WarpXOpenPMD.cpp * using at(i_buffer)
2022-03-29Doc: Plotfile Serialization Parameters (#3005)Gravatar Axel Huebl 1-0/+6
Document the parameters to control the concurrency on POSIX file operations with plotfiles.
2022-03-29Add `propagation_direction` to PICMI lasers (#2992)Gravatar David Grote 1-0/+2
2022-03-29Take into account the cost of `shiftMF` in load-balancing (#3008)Gravatar Remi Lehe 2-28/+42
* Take into account the cost of 'shiftMF' in load-balancing * Apply suggestions from code review Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com> Co-authored-by: Edoardo Zoni <59625522+EZoni@users.noreply.github.com>
2022-03-28Langmuir 3D Tests: Better Analysis Plots (#2999)Gravatar Edoardo Zoni 1-16/+26
2022-03-28Change particle filter parser to check it as a boolean instead of comparing ↵Gravatar Hannah Klion 2-5/+4
to 0.5 (#3007) * change particle filter functor to be a boolean check instead of comparing to 0.5 * update documentation * update doxygen
2022-03-28Docs: Fix syntax issues in parameters.rst (#3009)Gravatar Phil Miller 1-10/+11
2022-03-28Use Utils::TextMsg::Err in Message Logger (#3000)Gravatar Luca Fedeli 1-2/+3
2022-03-28Clean up handling of `v_galilean` (#2989)Gravatar David Grote 22-212/+152
* 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>
2022-03-28Docs: Fix Missing "s" in <digs>.adios2_engine.parameters (#3002)Gravatar Axel Huebl 1-1/+1
Fix a typo in the `<digs>.adios2_engine.parameters.NumAggregators` example.
2022-03-27Docs: Updates Profiling Perlmutter (#2993)Gravatar Axel Huebl 1-9/+46
Fix issues we encountered.
2022-03-25Add Field Probe to Laser Ion Test (#2998)Gravatar Tiberius Rheaume 1-1/+27
2022-03-25Synchronize all nodal points in sub-cycling loop (#2995)Gravatar Remi Lehe 1-0/+6
2022-03-22add openPMD test for particle_fields_diags to CI (#2975)Gravatar Hannah Klion 3-10/+50
* add openPMD test for particle_fields_diags to CI * Specify HDF5 for openpmd output in test * remove unnecessary variable redefinition * Increase tolerance for checksum check in single precision Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-03-22Perform mesh refinement taggin on GPU (#2990)Gravatar Weiqun Zhang 2-16/+18
2022-03-22openPMD RZ modes dumped in thetaMode (#2878)Gravatar Ryan Sandberg 14-107/+599
* [Draft] openPMD: RZ Modes * Change 'theta' to 't' and 'J' to 'j' * Docs: openPMD rz notes * editing docs openPMD RZ note * erase cartesian E,B,j from openPMD rz diags list * openpmd rz: theta->t, exclude xyz dumps * openpmd rz: axes r,z, save as comp[mode][r][z] * catch logic bugs tracking when in rz mode * change return type to c++17 tuple in helper fn * allow divB functor to store in theta mode * tuple bindings / account for theta mode variables * only r,t,z componets in RZ, separate rz field init * separate rz field init, arbitrary diags in RZ * docs: xyz comps in cartesian, rtz in rz geometry * docs : remove mention of dump_rz_modes * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * clarify documentation of InitializeFieldFunctorsRZ * n_rz_modes = 1 if not in RZ * style change for brackets * style, documentation, clarify magic constants * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add helper getVec * transpose RZ openPMD data for proper viewing * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * safe for 2d and rz * fix transpose order of limits, add tinyProfiler * document transpose function, lack of optimization * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Fix divB num components * keeping changes to openPMD+RZ, not general RZ * divB made more similar to divE * eliminate or document unused variables * fix openPMD+RZ documentation * change thetaMode parser to regex * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * replace n_rz_azimuthal_modes with warpx variable ncomps * Ignore Unused Var in Cartesian * add rz openpmd analysis * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Fix warnings: unused vars * clarify documentation of dump_rz_modes * cleaning up before sending to PR * remove divB, divE, test in a different PR * Update Source/Diagnostics/WarpXOpenPMD.cpp fix Dxygen strings Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja> * clean up doxygen, note issue in divB * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fixing rz_opmd test, still not passing * Fix: Unused <diag>.dump_rz_modes * updating openPMD+rz analysis * Regression Setup: set `outputFile` * Use HDF5 Backend This is most likely installed by all developers, so we use it for tests. * Code Style Updates * simplify test and reduce code redundancy * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * reduce redundancy 1 less line * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Keep HDF5 HDF5 is easier to install for developers and provided in CI. * Style fixes * Style fix 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-03-21openPMD: Handle Zero Particles Well (#2980)Gravatar Axel Huebl 4-215/+262
* openPMD: Handle Zero Particles Well When a time step for output encounters zero particles in a species, then we still want to dump them as "empty" species in openPMD. That simplifies post-processing a lot and we have the mechanisms in openPMD for it :) * openPMD: Emtpy Particle Writes Write empty records for iterations (steps or lab steps for BTD, respectively) without particles in a species. * Re-order: ED-PIC & Constant Particle Records - set attributes once - set constant records once - clean up into appropriate functions * Enable BTD for ADIOS :) Works now as well :tada: * Fix lingo in comments (Reva) Thank you!! :) Co-authored-by: Revathi Jambunathan <41089244+RevathiJambunathan@users.noreply.github.com> Co-authored-by: Revathi Jambunathan <41089244+RevathiJambunathan@users.noreply.github.com>
2022-03-22Vay Deposition: Separate Arrays, Correct Index Types w/ FFTs (#2965)Gravatar Edoardo Zoni 9-178/+168
* 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>
2022-03-21Hybrid Algorithms: Add FDTD Support for Centering (#2327)Gravatar Edoardo Zoni 8-228/+254
* 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
2022-03-21AMReX: Update latest commit (#2987)Gravatar Axel Huebl 5-5/+5
2022-03-21Measure time taken in the moving window (#2985)Gravatar Remi Lehe 1-0/+2
2022-03-21Add profile region for Evolve (#2983)Gravatar Remi Lehe 1-0/+1
2022-03-21Streamline profiling documentation (#2971)Gravatar Remi Lehe 3-49/+117
* Streamline profiling documentation * Add Updates: Full Profile, OLCF Links, Commas * Spelling of Section Titles * nsys: Add Environment Options Especially for unwritable /tmp, which happens often in HPC. * nsys: add mkdir for TMPDIR Co-authored-by: Remi Lehe <remi.lehe@normalesup.org> * Update documentation Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-03-18LaserAccelection_1d: Use same build as other 1D tests (#2982)Gravatar Phil Miller 1-2/+2
2022-03-18Doc: Major Cori Update (#2978)Gravatar Axel Huebl 4-38/+38
* Doc: Major Cori Update Update Cori instructions after the major upgrade yesterday. Before using the new modules, remove the old, pre-build software: ```bash rm -rf $HOME/sw/knl $HOME/sw/haswell $HOME/sw/gpu $HOME/sw/cori_gpu ``` * Cori: Work-Around ADIOS 2.7.1 ZeroMQ Disable due to https://github.com/ornladios/ADIOS2/issues/2709 * Fix haswell/knl mismatch
2022-03-18Minimum digits for plotfile cell and particle data is 5 (#2973)Gravatar Revathi Jambunathan 1-6/+15
* minimum digits for plotfile cell and particle data is 5 * Apply suggestions from code review * Update Source/Diagnostics/BTDiagnostics.cpp * Apply suggestions from code review Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-03-17Removed used of separate bc arguments (#2977)Gravatar David Grote 1-22/+18
2022-03-17Docs: Cori Python & Testing (#2969)Gravatar Axel Huebl 1-1/+55
- improve the `--force-reinstall` logic to not trigger a forced re-install of WarpX Python dependencies - install WarpX Python dependencies upfront - add a first "testing" section to show how to run `./run_tests.sh` on Cori
2022-03-17openPMD: Only Write up to Finest Level (#2970)Gravatar Axel Huebl 4-13/+31
Now that we support "dynamic" levels, we need to differentiate between the maximum allowed refinement level (maxLevel) and the currently maximum used level (finestLevel) of a simulation.
2022-03-16fix documentation with pml_has_particles instead of the old ↵Gravatar Revathi Jambunathan 1-1/+1
do_particles_in_pml (#2974)
2022-03-16RZ: Use WarpX::ncomps more consistently (#2951)Gravatar Axel Huebl 4-19/+20
* 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`
2022-03-16ABLASTR: Full Library (#2968)Gravatar Axel Huebl 3-12/+12
* CMake: ABLASTR as library previously only an object collection. * CMake: Fix `set_warpx_binary_name` Should only change WarpX library and app build, not the library name of ABLASTR. * Use ABLASTR_ALWAYS_ASSERT_WITH_MESSAGE Over AMReX and WarpX equivalent macros.
2022-03-15Initialize buffer data only for the required levels in the output (#2967)Gravatar Revathi Jambunathan 1-0/+8
2022-03-15[pre-commit.ci] pre-commit autoupdate (#2966)Gravatar pre-commit-ci[bot] 1-2/+2
updates: - [github.com/hadialqattan/pycln: v1.2.4 → v1.2.5](https://github.com/hadialqattan/pycln/compare/v1.2.4...v1.2.5) - [github.com/mgedmin/check-manifest: 0.47 → 0.48](https://github.com/mgedmin/check-manifest/compare/0.47...0.48) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-03-14FAQ: Forward Declarations (#2957)Gravatar Axel Huebl 2-10/+52
* FAQ: Forward Declarations * Fwd Declarations: Extend Example
2022-03-14Langmuir 2D Tests: Better Analysis Plots (#2960)Gravatar Edoardo Zoni 1-15/+24
* Langmuir 2D Tests: Better Analysis Plots * Remove Unused Import
2022-03-14FFT of J: Use Spectral Index of Correct MR Level (#2961)Gravatar Edoardo Zoni 1-8/+18