Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
290c774
Added Stage.length_num_beta_osc() to calculate the stage length that …
ben-c-2013 Nov 23, 2025
3535df0
Edited Stage.length_num_beta_osc() and added Stage.length2num_beta_os…
ben-c-2013 Nov 23, 2025
f02f154
Added Stage.calc_flattop_num_beta_osc() for calculating the number of…
ben-c-2013 Nov 24, 2025
6e86c7a
Edited the docstrings of Stage.calc_flattop_num_beta_osc(), and edite…
ben-c-2013 Nov 24, 2025
c72de2b
Added default parameters to Stage.match_length2num_beta_osc() and edi…
ben-c-2013 Nov 24, 2025
ed670be
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Nov 25, 2025
85b48c3
Added the function phase_advance() to abel/utilities/beam_physics.py.
ben-c-2013 Nov 25, 2025
5171f30
Added controls for stage parameters that may not be set in Stage.flat…
ben-c-2013 Nov 25, 2025
7120593
Added control to Stage.calc_flattop_num_beta_osc() to ensure that the…
ben-c-2013 Nov 26, 2025
618d342
Merge branch 'StageReducedModels_modify_ramp_time_step_mod' into num_…
ben-c-2013 Nov 26, 2025
e0fff13
Added Stage.phase_advance_beta_evolution() and in the process of modi…
ben-c-2013 Nov 27, 2025
938add4
Cleaned up in various betatron phase matching functions in abel/class…
ben-c-2013 Nov 27, 2025
e22e742
Reduced the number of time steps used in ramp tracking in StageReduce…
ben-c-2013 Nov 27, 2025
ee98ccb
Correction in Stage.match_length2num_beta_osc().
ben-c-2013 Nov 28, 2025
0d194cd
Changed the name of Stage.match_length2num_beta_osc() to Stage.calc_l…
ben-c-2013 Nov 28, 2025
138f90b
Added tests for checking the ramp phase advance and setting the stage…
ben-c-2013 Dec 1, 2025
aee6e2a
Merge remote-tracking branch 'mainline/main' into num_beta_osc_stage_…
ax3l Dec 3, 2025
37249a4
Added a class method to StageHipace for estimating the orbit that a d…
ben-c-2013 Dec 4, 2025
285df8b
Removed commented out code in abel/classes/stage/impl/stage_hipace.py.
ben-c-2013 Dec 4, 2025
d3718d5
Added another dimension to the driver orbit tracking in StageHipace.d…
ben-c-2013 Dec 4, 2025
7c42513
Minor edit in abel/classes/stage/impl/stage_hipace.py.
ben-c-2013 Dec 8, 2025
e854afb
Changed the name StageHipace.driver_guiding_orbit() to StageHipace.dr…
ben-c-2013 Dec 8, 2025
ee8dcb0
Edited a hyperlink in the docstring of StageHipace.driver_guiding_tra…
ben-c-2013 Dec 8, 2025
ca9d97a
Added arc_lengths() for calculating trajectory length to abel/utiliti…
ben-c-2013 Dec 8, 2025
f60e0e5
Edited StageHipace.driver_guiding_trajectory() to raise an error if t…
ben-c-2013 Dec 9, 2025
9f20dbe
Correction in StageHipace.driver_guiding_trajectory() for the cases w…
ben-c-2013 Dec 12, 2025
704e77a
Bugfix for setting a transverse gradient for the azimuthal magnetic f…
ben-c-2013 Dec 15, 2025
12c6291
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Dec 19, 2025
6a5adba
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Jan 28, 2026
adc578a
Added controls to Stage.calc_length_num_beta_osc() and Stage.length_f…
ben-c-2013 Feb 3, 2026
0e79de1
Added _external_focusing_gradient as a Stage class attribute and modi…
ben-c-2013 Feb 3, 2026
0941c88
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Feb 4, 2026
78ffa69
Edited Stage.calc_length_num_beta_osc() in such a way that a child cl…
ben-c-2013 Feb 5, 2026
da5644a
Edited StageHipace.calc_length_num_beta_osc() to include the contribu…
ben-c-2013 Feb 5, 2026
e2538f6
Decoupled Stage.calc_length_num_beta_osc() and StageHipace.calc_lengt…
ben-c-2013 Feb 5, 2026
d5663c8
Added more docstrings to StageHipace.calc_length_num_beta_osc() and e…
ben-c-2013 Feb 5, 2026
3cd19ff
Created the file tests/test_StageHipace.py and added tests for StageH…
ben-c-2013 Feb 5, 2026
3fc0d16
Added the tag StageHipace in pyproject.toml.
ben-c-2013 Feb 5, 2026
6273ede
Minor edit of Stage.length_flattop2num_beta_osc().
ben-c-2013 Feb 5, 2026
871b3c0
Corrected docstring in Stage.matched_beta_function().
ben-c-2013 Feb 11, 2026
c497708
Added StageHipace.Stage.matched_beta_function() to account for the co…
ben-c-2013 Feb 11, 2026
9ac14f1
Edited class methods of StageHipace to use the class attribute driver…
ben-c-2013 Feb 11, 2026
23d0d09
Minor docstring correction in tests/test_StageHipace.py.
ben-c-2013 Feb 12, 2026
2f8b1e3
Added Stage.get_ramp_length().
ben-c-2013 Feb 13, 2026
d92000c
Edited class methods in StageHipace for taking into account the lengt…
ben-c-2013 Feb 13, 2026
e98e361
Changed the class attribute StageHipace._external_focusing_gradient d…
ben-c-2013 Feb 15, 2026
74acd7c
Made corrections in tests/test_StageHipace.py::test_external_focusing…
ben-c-2013 Feb 16, 2026
f3d3f25
Edited StageHipace.driver_guiding_trajectory() to use the stage total…
ben-c-2013 Feb 16, 2026
92c5cc3
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Feb 17, 2026
4ef5b5e
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Feb 17, 2026
3e5eac0
Moved StageHipace.driver_guiding_trajectory() further down the file.
ben-c-2013 Feb 18, 2026
77e2592
Edited StageHipace.calc_length_num_beta_osc() to only use the nominal…
ben-c-2013 Feb 18, 2026
821f4b5
Edited tests/test_StageHipace.py::test_external_focusing to be compat…
ben-c-2013 Feb 18, 2026
754789b
Edited Stage.calc_length_num_beta_osc() to only use the nominal accel…
ben-c-2013 Feb 18, 2026
2d9d280
Added StageHipace.match_length_guiding_2_num_beta_osc().
ben-c-2013 Feb 18, 2026
d0e6b36
Changed the order of the input parameters in StageHipace.match_length…
ben-c-2013 Feb 18, 2026
d13968f
Made correction in StageHipace.match_length_guiding_2_num_beta_osc() …
ben-c-2013 Feb 18, 2026
578744b
Edited tests/test_StageHipace.py::test_external_focusing to be compat…
ben-c-2013 Feb 18, 2026
12f9269
Edited tests/test_StageReducedModels_beamline.py::test_ramped_linac()…
ben-c-2013 Feb 19, 2026
05301e8
Removed main source from setup_StageReducedModels() in tests/test_Sta…
ben-c-2013 Feb 19, 2026
03745f8
Renamed StageHipace.match_length_guiding_2_num_beta_osc() to StageHip…
ben-c-2013 Feb 19, 2026
d272cd4
Edited tests/test_StageHipace.py::test_match_length_2_num_beta_osc du…
ben-c-2013 Feb 19, 2026
dfafa9b
Renamed StageHipace.match_length_guiding_2_num_beta_osc() to StageHip…
ben-c-2013 Feb 19, 2026
051c61f
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Feb 19, 2026
1c06ad9
Correction in tests/test_StageReducedModels_beamline.py due to the re…
ben-c-2013 Feb 19, 2026
cfa0d1c
Patched StageHipace.external_focusing setter to only calculate StageH…
ben-c-2013 Feb 20, 2026
796303e
Added external_focusing_gradient as a property with setter and getter…
ben-c-2013 Feb 20, 2026
e1f0474
Adited tests/test_StageHipace.py to be compatible with the new StageH…
ben-c-2013 Feb 23, 2026
4846013
Edited docstrings in tests/test_StageHipace.py.
ben-c-2013 Feb 23, 2026
cc1c158
Edited docstrings in abel/classes/stage/impl/stage_hipace.py.
ben-c-2013 Feb 23, 2026
0ce4510
Edited abel/classes/stage/stage.py to return Stage.external_focusing_…
ben-c-2013 Feb 23, 2026
88a8d86
Correction in StageHipace.driver_guiding_trajectory().
ben-c-2013 Feb 27, 2026
da77605
Edited abel/wrappers/hipace/hipace_wrapper.py::hipace_write_inputs to…
ben-c-2013 Mar 2, 2026
ab725dd
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Mar 2, 2026
f57194c
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Mar 3, 2026
3e3dba0
Added StageHipace.estimate_beam_trajectory() for estimating main beam…
ben-c-2013 Mar 6, 2026
8a5658b
Simplified StageHipace.driver_guiding_trajectory().
ben-c-2013 Mar 6, 2026
fffe736
Corrected a bug in StageHipace.estimate_beam_trajectory().
ben-c-2013 Mar 7, 2026
6da1154
Made corrections in StageHipace.estimate_beam_trajectory() to get the…
ben-c-2013 Mar 9, 2026
240e2d7
Major changes in StageHipace.estimate_beam_trajectory() for adding su…
ben-c-2013 Mar 9, 2026
74d9f48
Correction in StageHipace._estimate_beam_trajectory for calculating t…
ben-c-2013 Mar 10, 2026
3317278
Deleted most of the printing diagnostics in StageHipace._estimate_bea…
ben-c-2013 Mar 10, 2026
17f30a6
Removed the rest of the printing diagnostics in StageHipace._estimate…
ben-c-2013 Mar 10, 2026
6a500f6
Edited Stage.phase_advance_beta_evolution() to take into the account …
ben-c-2013 Mar 10, 2026
56313e8
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Mar 10, 2026
c195ccd
Merge branch 'main' into num_beta_osc_stage_length
ben-c-2013 Mar 11, 2026
a6b41f7
Added class methods for calculating the external focusing gradient an…
ben-c-2013 Mar 11, 2026
951bc38
Added getter for external focusing gradient to Stage.
ben-c-2013 Mar 11, 2026
fe31038
Edited src/abel/wrappers/hipace/hipace_wrapper.py for setting the ext…
ben-c-2013 Mar 11, 2026
356f3d3
Merge branch 'StageHipace_beam_trajectory_estimate' into num_beta_osc…
ben-c-2013 Mar 11, 2026
0d8ee16
Removed extra entry of Stage.external_focusing_gradient after mergein…
ben-c-2013 Mar 11, 2026
2639c05
Correction in StageHipace._estimate_beam_trajectory() and StageHipace…
ben-c-2013 Mar 11, 2026
7b6b08c
Merge branch 'StageHipace_beam_trajectory_estimate' into num_beta_osc…
ben-c-2013 Mar 11, 2026
9b50bc7
Made a correction in Stage._calc_ramp_length() that takes into accoun…
ben-c-2013 Mar 17, 2026
a05098d
Correction for Stage._calc_ramp_length(), as the previous update invo…
ben-c-2013 Mar 18, 2026
f8ebfd7
Minor correction in StageHIpace.calc_length_num_beta_osc() and StageH…
ben-c-2013 Mar 18, 2026
d8b297d
Major corrections and expansions in StageHipace._estimate_beam_trajec…
ben-c-2013 Mar 18, 2026
b53e431
Added phase_advance_traj_data() to src/abel/utilities/beam_physics.py.
ben-c-2013 Mar 23, 2026
5bc8b01
Edited phase_advance_traj_data in src/abel/utilities/beam_physics.py …
ben-c-2013 Mar 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ markers = [
"StageBasic_linac: Integration tests for StageBasic linacs",
"StageQuasistatic2d: Tests for the StageQuasistatic2d class",
"StageWakeT: Tests for the StageWakeT class",
"StageHipace: Tets for the StageHipace class",
"presets: Tests for collider presets",
"impactx: Tests for ImpactX",
]
834 changes: 821 additions & 13 deletions src/abel/classes/stage/impl/stage_hipace.py

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions src/abel/classes/stage/impl/stage_reduced_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -682,9 +682,9 @@ def track_upramp(self, beam0, driver0, shot_path=None):
raise TypeError('upramp is not a StageReducedModels.')

# Set a new time step for the ramp
n_steps = 25 # Do n_steps time steps in the tracking of the ramp
n_steps = 15 # Do n_steps time steps in the tracking of the ramp
lambda_beta = upramp.matched_beta_function_flattop(beam0_energy) * 2*np.pi # [m], betatron wavelength
upramp.time_step_mod = min(upramp.length_flattop / (lambda_beta*n_steps), 0.02) # Step size in in units of betatron wavelength, equivalent to time step size in units of betatron wavelength/c.
upramp.time_step_mod = min(upramp.length_flattop / (lambda_beta*n_steps), 0.04) # Step size in in units of betatron wavelength, equivalent to time step size in units of betatron wavelength/c.

elif type(self.upramp) is Stage:
upramp = self.upramp # Allow for other types of ramps
Expand Down Expand Up @@ -782,9 +782,9 @@ def track_downramp(self, beam0, driver0, shot_path=None):
raise TypeError('downramp is not a StageReducedModels.')

# Set a new time step for the ramp
n_steps = 25 # Do n_steps time steps in the tracking of the ramp
n_steps = 15 # Do n_steps time steps in the tracking of the ramp
lambda_beta = downramp.matched_beta_function_flattop(beam0_energy) * 2*np.pi # [m], betatron wavelength
downramp.time_step_mod = min(downramp.length_flattop / (lambda_beta*n_steps), 0.02) # Step size in in units of betatron wavelength, equivalent to time step size in units of betatron wavelength/c.
downramp.time_step_mod = min(downramp.length_flattop / (lambda_beta*n_steps), 0.04) # Step size in in units of betatron wavelength, equivalent to time step size in units of betatron wavelength/c.

elif type(self.downramp) is Stage:
downramp = self.downramp # Allow for other types of ramps
Expand Down
Loading
Loading