implement zero phase tdc for parameter beam tracking - #447
Draft
roussel-ryan wants to merge 2 commits into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements zero-phase, first order transverse deflecting cavity tracking for ParameterBeam class using thick lens transport matrix
Description
This pull request introduces functionality for tracking and transfer map computation in the
TransverseDeflectingCavityclass using the"cheetah"tracking method. It also adds a corresponding unit test to ensure consistency with the"bmadx"tracking method. Below are the most important changes grouped by theme:New functionality for
"cheetah"tracking:transfer_mapmethod to compute the transfer map for a thick lens transverse deflecting cavity using a drift-kick-drift approach. This method restricts usage to zero phase and calculates drift and kick matrices before combining them into the total transfer matrix. (cheetah/accelerator/transverse_deflecting_cavity.py, cheetah/accelerator/transverse_deflecting_cavity.pyR114-R152)trackmethod to support the"cheetah"tracking method by delegating to the parent class implementation. Previously, this raised aNotImplementedError. (cheetah/accelerator/transverse_deflecting_cavity.py, cheetah/accelerator/transverse_deflecting_cavity.pyL101-R102)Unit tests for
"cheetah"tracking:test_transverse_deflecting_cavity_cheetah_tracking, to verify that the results of the"cheetah"tracking method match those of the"bmadx"method. The test checks the transfer map and performs tracking on a sample beam. (tests/test_transverse_deflecting_cavity.py, tests/test_transverse_deflecting_cavity.pyR41-R91)Motivation and Context
Looking to do scalarized uncertainty quantification using RMS beam moments with transverse deflecting cavities.
Types of changes
Checklist
flake8(required).pytesttests pass (required).pyteston a machine with a CUDA GPU and made sure all tests pass (required).Note: We are using a maximum length of 88 characters per line.