new flexible nonlinear correction with feeddown of rdts
play

New flexible nonlinear correction with feeddown of RDTs for IR - PowerPoint PPT Presentation

New flexible nonlinear correction with feeddown of RDTs for IR correctors OMC Meeting Joschua Dilly O MC 28.07.2020 IRNL correction w/ feeddown 1 Theory Feeddown RDTs Nonlinear Correction Implementation Tests & Outlook O MC


  1. New flexible nonlinear correction with feeddown of RDTs for IR correctors OMC Meeting Joschua Dilly O MC 28.07.2020 IRNL correction w/ feeddown 1

  2. Theory Feeddown RDTs Nonlinear Correction Implementation Tests & Outlook O MC 28.07.2020 IRNL correction w/ feeddown 2

  3. Theory O MC 28.07.2020 IRNL correction w/ feeddown 3

  4. Feeddown If the beam does not go through magnet center, the field looks different: Taylor expansionf or x , y → x , y + ∆ x , y � ∞ � ( K n + iJ n )( x + iy ) n � H = −ℜ n ! n =2     ∞ ∞ ( K n + q + iJ n + q )(∆ x + i ∆ y ) q ( x + iy ) n T � �     = −ℜ     q ! n !     n =1 q =0, if n ≥ 2 q =1, if n =1 which means: Q ( K n + q + iJ n + q )(∆ x + i ∆ y ) q w/ feeddown � K n + iJ n → q ! . q =0 O MC 28.07.2020 IRNL correction w/ feeddown 4

  5. Nonlinear Correction LHC HL-LHC IP IP Quadrupole Quadrupole Dipole Dipole 10 10 X [mm] B 1 X X [mm] B 1 X 0 0 B 2 X B 2 X 10 10 10 10 B 1 Y B 1 Y Y [mm] Y [mm] 0 0 B 2 Y B 2 Y 10 10 200 150 100 50 0 50 100 150 200 200 150 100 50 0 50 100 150 200 Distance from IP5 [m] Distance from IP5 [m] • in the triplets orbit can be 5 − 10 mm due to the crossing scheme (In misalignment study it was only ± 0 . 4 mm). ⇒ higher order terms should be corrected in the IRs! ⇒ I developed and implemented a correction scheme , based on the previous correction scheme of specfic sextupole and octupole RDTs 1 , for any RDT if correctors of that order are present. • including feed-down contributions as derived earlier . • only for simulations as all magnetic fields need to be known 1 Br¨ uning et al. , Dynamic aperture studies for the LHC separation dipoles., LHC Project Note 349 , (2004) O MC 28.07.2020 IRNL correction w/ feeddown 5

  6. Nonlinear Correction Outline Idea: Minimize RDT locally in IR with the corrector. • a simulation based local correction • minimize two RDTs, as ther are two correctors (L/R) • shown only numerator of RDT f IR = jklm �  ∞ (∆ x ( s ) + i ∆ y ( s )) q � j + k � l + m  i l + m β x ( s ) e i π n θ ( s − sIP ) � ( K n + q ( s ) + iJ n + q ( s )) β y ( s ) ℜ 2 2 ds  q ! q =0 IR thin lens = �  ∞ (∆ x ( s w ) + i ∆ y ( s w )) q � j + k l + m � �  i l + m β x ( s w ) e i π n θ ( sw − sIP ) ℜ ( K n + q L ( s w ) + iJ n + q L ( s w )) 2 β y ( s w ) 2  q ! q =0 w ∈W correction = 0 ⇒ extract terms of the ”optimization variable” corrector-strength O MC 28.07.2020 IRNL correction w/ feeddown 6

  7. Nonlinear Correction Outline ⇒ simple linear equation system: � � K n L ( s cl ) � � B ( cl ) B ( cr ) = − I jklm , for even l + m jklm jklm K n L ( s cr ) � � � J n L ( s cl ) � B ( cl ) B ( cr ) = i I jklm , for odd l + m jklm jklm J n L ( s cr ) For multiple rdt/beams:     B ( cl , B 1) B ( cr , B 1) I ( B 1) jklm jklm jklm B ( cl , B 1) B ( cr , B 1) I ( B 1)   � �   K n L ( s cl )  j ′ k ′ l ′ m ′ j ′ k ′ l ′ m ′   j ′ k ′ l ′ m ′  = −  B ( cl , B 2) B ( R , B 2)   I ( B 2)  K n L ( s cr )     jklm jklm jklm     B ( cl , B 2) B ( cr , B 2) I ( B 2) j ′ k ′ l ′ m ′ j ′ k ′ l ′ m ′ j ′ k ′ l ′ m ′ Status: Correction script ready and working. Simulation tests missing. O MC 28.07.2020 IRNL correction w/ feeddown 7

  8. Implementation O MC 28.07.2020 IRNL correction w/ feeddown 8

  9. Input Parameters • accel: defines accelerator ⇒ same script for all, easily extendable (only corrector names hardcoded) • optics, errors: optics and error files ⇒ no predifined names, can take two files each for correcting both beams • rdts, rdts2: RDTs in the format ’F####’, ’J####’ or ’K####’ ⇒ can correct for any RDTs, recognizes order and orientaion automatically, can have different RDTs for second optics • solver: which solver to use ’lstsq’, ’inv’ or ’linear’ ⇒ can optimize overdetermined equation systems (e.g. both beams, more RDTs) O MC 28.07.2020 IRNL correction w/ feeddown 9

  10. Input Parameters • feeddown: feeddown up to which order to include • update optics: update optics with new corrector strength ⇒ takes new strength into account for feeddown (always corrects high orders first) • ips: define IPs to correct • ignore missing columns: Missing KL-columns assumed 0 Other advantages: • written in python, can handle pandas-dataframes, returns madx-code and dataframes • can be called from python and commandline O MC 28.07.2020 IRNL correction w/ feeddown 10

  11. Example (python) correction_cmd , correction_df = irnl_correct ( accel=’LHC ’, optics=( df_twiss_nominal_for_correction ,), errors=( df_errors_for_correction ,), rdts=(’J3000 ’, ’J0003 ’, # correct a3 ’K2001 ’, ’K1002 ’, # correct b3 ’J1003 ’, ’J3001 ’, # correct a4 ’K4000 ’, ’K0004 ’, # correct b4 ’K6000 ’, ’K0006 ’, # correct b6 ), feeddown=2, ips=[1, 2, 5, 8], solver=’lstsq ’, update_optics =False , ignore_missing_columns =False , output=’correction_mcx .madx ’, ) # Apply correction madx.input( correction_cmd ) O MC 28.07.2020 IRNL correction w/ feeddown 11

  12. Example (python) orrection_cmd , correction_df = irnl_correct ( accel=’HLLHC ’, optics=( df_twiss_nominal_correct ,), errors=(df_errors_correct ,), rdts=(’J0003 ’, ’J3000 ’, # correct a3 ’K1002 ’, ’K2001 ’, # correct b3 ’J1003 ’, ’J3001 ’, # correct a4 ’K0004 ’, ’K4000 ’, # correct b4 ’J0005 ’, ’J5000 ’, # correct a5 ’K5000 ’, ’K0005 ’, # correct b5 ’J5001 ’, ’J1005 ’, # correct a6 ’K6000 ’, ’K0006 ’, # correct b6 ), feeddown=2, ips=[1, 2, 5, 8], # in which IPs to correct solver=’lstsq ’, update_optics =False , output=’correction_mcx .madx ’, ) O MC 28.07.2020 IRNL correction w/ feeddown 12

  13. Example (Mad-X) system, ’python3 irnl_rdt_correction.py --accel HLLHC --optics temp/optics0_inser.mad --errors temp/tripD1D2.errors --output MCX_setting.mad --ignore_missing_columns --rdts J0003 J3000 K1002 K2001 J1003 J3001 K0004 K4000 J0005 J5000 K5000 K0005 J5001 J1005 K6000 K0006’ O MC 28.07.2020 IRNL correction w/ feeddown 13

  14. Tests & Outlook O MC 28.07.2020 IRNL correction w/ feeddown 14

  15. Tests & Outlook • Tested vs. fortran and Ewens python code (with feeddown = 0 ) ⇒ up to tfs-precision the same results • rewritten masks in cpymad ⇒ No need to write any files for running corrections → Test inlfuence of feeddown correction → Influence on amplitude detuning (PTC) and DA (Sixtrack) ⇒ Have some talks about SixTrack(Lib)/(py)SixDesk O MC 28.07.2020 IRNL correction w/ feeddown 15

Recommend


More recommend