Hi Michael,
I hope you are doing well during this tough time.
I am trying to compare the EIC e-ring's 6D dynamic aperture (DA) obtained from some other codes. Here other codes mean LEGO (SLAC) and BMAD (Cornell).
We found a visible discrepancy at large off-momentum DAs. One possible reason is that the implementations of 6D tracking are different.
In these codes, one can turn on RF cavity but not dipole's synchrotron radiation, to get a dynamic aperture even for electron beam. Definitely it is not of physics, because one can't get RFC's phase correctly in a natural way. Nevertheless, one can manually set off-momentum delta is proportional to the phase shift (phi-phi0), phi0 is the syn. phase, to get the synchrotron tune correctly. I wonder if Elegant can do a 6D tracking like this. If yes, could you do me a favor to send me an example, please?
Did you compare this unrealistic but simplified 6D tracking with the existing implementation in Elegant before? If yes, is there any visible discrepancy?
Stay safe,
-Yongjun
6D tracking without turning on syn. rad.
Moderators: cyao, michael_borland
-
- Posts: 1933
- Joined: 19 May 2008, 09:33
- Location: Argonne National Laboratory
- Contact:
Re: 6D tracking without turning on syn. rad.
Yongjun,
You should be able to do this in elegant. Assuming you are using CSBEND, KQUAD, and KSEXT, just set SYNCH_RAD=0, then set the rf cavity phase to 180. As you mentioned, you can then change the rf voltage to get the right synchrotron tune. Elegant doesn't do this automatically but it is straightforward.
I haven't done such comparisons, since I consider damping a helpful effect and want to include it! I've heard that comparisons of 4D and 6D tracking can show large differences, but I don't bother with 4D tracking because it isn't physically correct.
--Michael
You should be able to do this in elegant. Assuming you are using CSBEND, KQUAD, and KSEXT, just set SYNCH_RAD=0, then set the rf cavity phase to 180. As you mentioned, you can then change the rf voltage to get the right synchrotron tune. Elegant doesn't do this automatically but it is straightforward.
I haven't done such comparisons, since I consider damping a helpful effect and want to include it! I've heard that comparisons of 4D and 6D tracking can show large differences, but I don't bother with 4D tracking because it isn't physically correct.
--Michael
Re: 6D tracking without turning on syn. rad.
Michael,
Thanks. Following your instruction. I specified the cavity in the lte file as:
RF0: rfca, L = 2.4, freq = 591149309.1910672, phase = 180, volt = 68.1e6
Then switched the syn. rad. off in the ele file:
&alter_elements name=*, type=CSBEN*, item=SYNCH_RAD, value=0 &end
&alter_elements name=*, type=KQUAD*, item=SYNCH_RAD, value=0 &end
&alter_elements name=*, type=KSEXT*, item=SYNCH_RAD, value=0 &end
After launched an off-momentum particle:
elegant -macro=dp=1e-6 esr_nus.ele
I didn't get the expected tune from the turn-by-turn data at the watch point.
Could you please to take a quick look at it? Your help is much appreciated.
Stay safe,
-Yongjun
Thanks. Following your instruction. I specified the cavity in the lte file as:
RF0: rfca, L = 2.4, freq = 591149309.1910672, phase = 180, volt = 68.1e6
Then switched the syn. rad. off in the ele file:
&alter_elements name=*, type=CSBEN*, item=SYNCH_RAD, value=0 &end
&alter_elements name=*, type=KQUAD*, item=SYNCH_RAD, value=0 &end
&alter_elements name=*, type=KSEXT*, item=SYNCH_RAD, value=0 &end
After launched an off-momentum particle:
elegant -macro=dp=1e-6 esr_nus.ele
I didn't get the expected tune from the turn-by-turn data at the watch point.
Could you please to take a quick look at it? Your help is much appreciated.
Stay safe,
-Yongjun
- Attachments
-
- eic_esr.zip
- (10.28 KiB) Downloaded 169 times
-
- Posts: 1933
- Joined: 19 May 2008, 09:33
- Location: Argonne National Laboratory
- Contact:
Re: 6D tracking without turning on syn. rad.
Yongjun,
I think the root of the problem is that you set p_central=18000, which means beta*gamma=18000. If you want 18 GeV, you need to set p_central = 3.522511372134423e+04 or (more easily) p_central_mev = 18000.
Also, your rf frequency is not quite right. It should be 5.911493641523178e+08, whereas you have 5.911493091910672e+08, which results in a momentum offset of 0.014% or so given the large alphac. rf_setup can set it for you (including synchrotron radiation); otherwise, you should calculate it as precisely as possible. Setting REFERENCE_CORRECTION=1 on the CSBENDs is also helpful here as it corrects path-length issues with the symplectic integetor.
Once I do that and use rf_setup to set the rf system parameters, I get the expected synchrotron tune including synchrotron radiation.
--Michael
I think the root of the problem is that you set p_central=18000, which means beta*gamma=18000. If you want 18 GeV, you need to set p_central = 3.522511372134423e+04 or (more easily) p_central_mev = 18000.
Also, your rf frequency is not quite right. It should be 5.911493641523178e+08, whereas you have 5.911493091910672e+08, which results in a momentum offset of 0.014% or so given the large alphac. rf_setup can set it for you (including synchrotron radiation); otherwise, you should calculate it as precisely as possible. Setting REFERENCE_CORRECTION=1 on the CSBENDs is also helpful here as it corrects path-length issues with the symplectic integetor.
Once I do that and use rf_setup to set the rf system parameters, I get the expected synchrotron tune including synchrotron radiation.
--Michael
- Attachments
-
- esr_nus.ele
- (2.57 KiB) Downloaded 150 times