Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding EPAC2004 space charge benchmarks (#422)
* Examples for 3D space charge benchmarking - Modified the initial beam size in the IOTA lens benchmark example. - Added 2 benchmarks of 3D space charge for initial testing. - Add documentation for 2 benchmarks with space charge. - Add a benchmark example with space charge and periodic s-dependent focusing. - Added an s-dependent example using a Kurth beam without space charge. - Modified tolerance for IOTA lens benchmark example. Reduced tolerance to account for smaller initial beam size and improved preservation of invariants of motion. - Modified tolerances of space charge examples to allow CI tests to pass when space charge is not active. - Modified tolerance for space charge examples. These should fail unless space charge is turned on. * Update input_kurth_10nC.in Selected numerical values for amr.n_cell, lattice.nslice, and geometry.prob_relative. * Add FODO + RF example w SC * Delete input_kurth_10nC.in Not part of this PR. * Correct RF coefficients and add analysis. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Added analysis script for FODO+RF SC benchmark. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update CMakeLists.txt * Add FODO+RF+SC Python input. * Remove EOL white spaces. * Update run_fodo_rf_SC.py Added missing commas in Python input. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update CMakeLists.txt Lowercase sc -> uppercase SC * Update run_fodo_rf_SC.py * Update run_fodo_rf_SC.py * Update run_fodo_rf_SC.py Correct name of drift. * Update analysis_fodo_rf_SC.py Relax tolerance. * Try again. * Preliminary draft of thermal distribution. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Added radial sampling. * Modify radial sampling to use AMReX libs. * Initializing Rprofile data. * Add CDF arrays, fixed shadowed declaration. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Resolve conflicts. * Remove comments. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Fixed call to generate_radial_dist. * Added exchange of radial profile data. * Fix shadowed variables in integrator. * Support random selection of core or halo based on w. * Finalize data exchange with rprofile. * Allow unused input parameters. * Add thermal beam example. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Modify to use normalization instead of phi0. * Add thermal and bithermal beam examples. * Update openPMD_to_ASCII.py * Finalize bithermal beam example. * Finalize thermal beam example. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Add Python equivs for thermal tests. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Add tests to CI. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Reduce resolution for CI. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update analysis scripts. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update Thermal.H Avoid unused variable errors for private members. * Update Thermal.H Add maybe_unused to avoid warnings. * Update CMakeLists.txt Temporarily turn off Python input in ctest. * Eliminate unused variable warnings. * Update CMakeLists.txt Remove Python tests from ctest temporarily. * Update input_thermal.in Reduce number of SC kicks to avoid timeout * Update input_bithermal.in Reduce number SC kicks to avoid timeout. * Update input_thermal.in Comment duplicate nslice line. * Update input_thermal.in Reduce thermal resolution again. * Update input_bithermal.in Reduce bithermal resolution again. * Add tolerance to ToFixedT to avoid pz<=0. * Update input_thermal.in Update to use kin_energy. * Update input_bithermal.in Update to use kinetic energy. * Update input_fodo_rf_SC.in Update to use kin_energy. * Update run_thermal.py Update to use kin_energy * Update run_bithermal.py Update to use kin_energy * Update run_fodo_rf_SC.py Update to use kin_energy * Update Thermal.H Add Doxygen for "data" in Thermal.H * Update CMakeLists.txt Replace missing ). * Update input_thermal.in Increase the number of SC kicks in the thermal example to improve convergence. * Add README example documentation. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Add documentation of thermal distribution type. * Apply suggestions from code review Co-authored-by: Axel Huebl <[email protected]> * Apply suggestions from code review * Update src/particles/distribution/Thermal.H * Update src/initialization/InitDistribution.cpp * Update src/particles/distribution/Thermal.H * Comment out PrintToFile Debugging * Constexpr for length in kernel * Thermal: Unused Variable * Python Thermal Test: `prob_relative` is a list now * Bithermal Plot Script: Matplotlib Avoid GnuPlot dependency. * Apply suggestions from code review * Thermal Distribution: Python * Update docs/source/usage/parameters.rst Co-authored-by: Chad Mitchell <[email protected]> * Bithermal: slice_step_diagnostics off * Python Files: Executable Make executable with `chmod a+rx` * Bithermal: Update Figure Full resolution run results. * README: New Formatting --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Axel Huebl <[email protected]>
- Loading branch information