Skip to content

Commit d60c475

Browse files
author
elwaagaa
committed
Oxygen parameters as in measurements, with scans
1 parent 85851a4 commit d60c475

File tree

3 files changed

+11
-20
lines changed

3 files changed

+11
-20
lines changed

fma_ions/beam_parameters/sps_beam_parameters.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,12 @@ class BeamParameters_SPS_Binomial_2016_before_RF_capture:
6767
@dataclass
6868
class BeamParameters_SPS_Oxygen:
6969
"""Data Container for SPS oxygen beam parameters"""
70-
Nb: float = 25e8 # half of (John, Bartosik 2021) for oxygen, assuming bunch splitting
71-
sigma_z: float = 0.213 # assume same as Pb
72-
q : float = 0.59 # q-Gaussian parameter after RF spill --> assume same as Pb
73-
exn: float = 1.3e-6
70+
Nb: float = 23.625e8 # measured on 2025-07-03 half of (John, Bartosik 2021) used 50 for oxygen,
71+
sigma_z: float = 0.26 # use 2025-07-03 WCM measurement with q-Gaussian fit
72+
q : float = 0.37 # q-Gaussian parameter after RF spill --> use 2025-07-03 WCM measurement
73+
exn: float = 0.9e-6
7474
eyn: float = 0.9e-6
75+
m : float = 9 # dummy value, not needed if q-Gaussian is used
7576

7677
@dataclass
7778
class BeamParameters_SPS_Proton:

htcondor_submission/2024_SPS_Pb_flat_bottom_cases/qy_scan/oxygen/launch_gpu_qy_scan_oxygen_ibs_50_150_300_600_Hz_ripple_with_comp_TRANSFER_FUNCTION.py

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
dir_path = pathlib.Path(__file__).parent.absolute()
1212

1313
# Define run files and which parameters to change
14-
master_name = 'Qy_scan_oxygen_ibs_50_150_300_600_Hz_ripple_adaptive_sc_WITH_TRANSFER_FUNCTION_130k_turns'
14+
master_name = 'Qy_scan_oxygen_ibs_50_150_300_600_Hz_ripple_adaptive_sc_WITH_TRANSFER_FUNCTION_130k_turns_as_03_07_2025_MD'
1515
num_turns = 130_000 # corresponds to 3s for SPS ions at flat bottom
1616
Qx = 26.31
17-
Qy_range = np.arange(26.12, 26.27, 0.01)
17+
Qy_range = np.arange(26.10, 26.28, 0.01)
1818
run_files = ['sps_oxygen_run_{}_tbt_qx_26dot31.py'.format(i+1) for i in range(len(Qy_range))]
1919

2020
# Define script and folder names
@@ -37,11 +37,6 @@
3737
n_turns = {}
3838
num_part = 20_000
3939
40-
beamParams=fma_ions.BeamParameters_SPS()
41-
beamParams.Nb = 75.2e8
42-
beamParams.exn = 1.74e-6
43-
beamParams.eyn = 2.11e-6
44-
4540
# Transfer function factors
4641
a_50 = 1.0 #1.7170
4742
a_150 = 0.5098
@@ -58,7 +53,7 @@
5853
5954
# Tracking on GPU context
6055
sps = fma_ions.SPS_Flat_Bottom_Tracker(qx0={:.3f}, qy0={:.3f}, num_turns=n_turns, num_part=num_part)
61-
tbt = sps.track_SPS(ion_type='O', beamParams=beamParams, which_context='gpu', distribution_type='qgaussian', install_SC_on_line=True, add_beta_beat=True,
56+
tbt = sps.track_SPS(ion_type='O', which_context='gpu', distribution_type='qgaussian', install_SC_on_line=True, add_beta_beat=True,
6257
add_non_linear_magnet_errors=True, apply_kinetic_IBS_kicks=True, ibs_step = 2000,
6358
add_tune_ripple=True, ripple_freqs = ripple_freqs, kqf_amplitudes = kqf_amplitudes,
6459
kqd_amplitudes = kqd_amplitudes, kqf_phases=kqf_phases, kqd_phases=kqd_phases,

htcondor_submission/2024_SPS_Pb_flat_bottom_cases/qy_scan/oxygen/launch_gpu_qy_scan_oxygen_ibs_50_150_300_600_Hz_ripple_with_comp_TRANSFER_FUNCTION_long.py

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
dir_path = pathlib.Path(__file__).parent.absolute()
1212

1313
# Define run files and which parameters to change
14-
master_name = 'Qy_scan_oxygen_ibs_50_150_300_600_Hz_ripple_adaptive_sc_WITH_TRANSFER_FUNCTION_300k_turns_long'
14+
master_name = 'Qy_scan_oxygen_ibs_50_150_300_600_Hz_ripple_adaptive_sc_WITH_TRANSFER_FUNCTION_300k_turns_as_03_07_2025_MD_long'
1515
num_turns = 300_000 # corresponds to 9s for SPS ions at flat bottom
1616
Qx = 26.31
17-
Qy_range = np.arange(26.12, 26.27, 0.01)
17+
Qy_range = np.arange(26.10, 26.28, 0.01)
1818
run_files = ['sps_oxygen_run_{}_tbt_qx_26dot31_long.py'.format(i+1) for i in range(len(Qy_range))]
1919

2020
# Define script and folder names
@@ -37,11 +37,6 @@
3737
n_turns = {}
3838
num_part = 20_000
3939
40-
beamParams=fma_ions.BeamParameters_SPS()
41-
beamParams.Nb = 75.2e8
42-
beamParams.exn = 1.74e-6
43-
beamParams.eyn = 2.11e-6
44-
4540
# Transfer function factors
4641
a_50 = 1.0 #1.7170
4742
a_150 = 0.5098
@@ -58,7 +53,7 @@
5853
5954
# Tracking on GPU context
6055
sps = fma_ions.SPS_Flat_Bottom_Tracker(qx0={:.3f}, qy0={:.3f}, num_turns=n_turns, num_part=num_part)
61-
tbt = sps.track_SPS(ion_type='O', beamParams=beamParams, which_context='gpu', distribution_type='qgaussian', install_SC_on_line=True, add_beta_beat=True,
56+
tbt = sps.track_SPS(ion_type='O', which_context='gpu', distribution_type='qgaussian', install_SC_on_line=True, add_beta_beat=True,
6257
add_non_linear_magnet_errors=True, apply_kinetic_IBS_kicks=True, ibs_step = 2000,
6358
add_tune_ripple=True, ripple_freqs = ripple_freqs, kqf_amplitudes = kqf_amplitudes,
6459
kqd_amplitudes = kqd_amplitudes, kqf_phases=kqf_phases, kqd_phases=kqd_phases,

0 commit comments

Comments
 (0)