Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add dispersion to reduced diagnostics #682

Merged
merged 14 commits into from
Aug 19, 2024

Conversation

cemitch99
Copy link
Member

@cemitch99 cemitch99 commented Aug 16, 2024

Modified the reduced beam diagnostics to include beam-based dispersion values dispersion_x , dispersion_y and their derivatives dispersion_px, dispersion_py. Close #678.

The transverse Twiss functions beta_x, beta_y, alpha_x, alpha_y were modified to account for correlations with energy in a dispersive beamline.

  • Add horizontal dispersion and modify horizontal Twiss calculations
  • Add vertical dispersion and modify vertical Twiss calculations
  • Modify output of reduced diagnostics to include dispersion
  • Add benchmark test
  • Add read of reduced diagnostics to analysis script
  • Modify documentation

@cemitch99 cemitch99 requested review from n01r and ax3l August 16, 2024 01:08
@ax3l ax3l added the component: diagnostics all types of outputs label Aug 16, 2024
@ax3l ax3l self-assigned this Aug 16, 2024
@cemitch99
Copy link
Member Author

ImpactX_MADX_Twiss_Dogleg_Comparison.pdf

cemitch99 and others added 10 commits August 16, 2024 13:50
Correct number of particle to match analysis script.
Correct number of particles in the Python input.
Remove unused ParmParse values from input.
Remove unused ParmParse values from input.
Relaxing the tolerance of the reduced diagnostics slightly.
Relaxing tolerance again.  Some of the reduced Twiss values are rather sensitive to noise.
@cemitch99
Copy link
Member Author

All tests currently pass except Windows. Windows test fails because of trouble opening diags/reduced_beam_characteristics_final.0.0

Copy link
Member

@ax3l ax3l left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The non-MPI test fails because of the pattern matching of the CSV file (only one .N at the end).

We can avoid the CSV file altogether and read directly from the openPMD file we have open like this:

examples/dogleg/README.rst Outdated Show resolved Hide resolved
examples/dogleg/analysis_dogleg.py Outdated Show resolved Hide resolved
examples/dogleg/analysis_dogleg.py Outdated Show resolved Hide resolved
examples/dogleg/analysis_dogleg.py Outdated Show resolved Hide resolved
ax3l and others added 2 commits August 19, 2024 09:24
@ax3l

This comment was marked as outdated.

@ax3l ax3l merged commit ebf3e3b into ECP-WarpX:development Aug 19, 2024
16 checks passed
@ax3l
Copy link
Member

ax3l commented Aug 20, 2024

@ax3l
Copy link
Member

ax3l commented Sep 4, 2024

Added in #686

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: diagnostics all types of outputs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add beam-based dispersion to reduced diagnostics
2 participants