MATCH,SEQUENCE=swissfel,range=#s/#e,betx=betax0,alfx=alphax0,bety=betay0,alfy=alphay0; VARY, NAME=satsy01.mqua020.k1, STEP=0.00001,LOWER=-4,UPPER=4; VARY, NAME=satsy01.mqua040.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; VARY, NAME=satsy01.mqua070.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; VARY, NAME=satsy01.mqua090.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01.mbnd200, DX = 0.082; ! CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01.mbnd200, DPX = 0.0084; !CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01.mbnd200, DPX = DPXM*1.2; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01.mbnd200, DY < 0.09; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01.mbnd200, DPY < 1; LMDIF, CALLS=1000, TOLERANCE=1.E-21; ENDMATCH; !------------------------------------- ! match second half of SATSY01 - closing dispersion if (initquads ==1){ satsy01.mqua210.k1=satsy01.mqua090.k1; satsy01.mqua230.k1=satsy01.mqua070.k1; satsy01.mqua260.k1=satsy01.mqua040.k1; satsy01.mqua280.k1=satsy01.mqua020.k1; satsy01.mqua300.k1 := 5.27400e-01; } DXS = -0.030; DPXS = -0.001; MATCH,SEQUENCE=swissfel,range=#s/#e,betx=betax0,alfx=alphax0,bety=betay0,alfy=alphay0; VARY, NAME=satsy01.mqua280.k1, STEP=0.00001,LOWER=-4,UPPER=4; VARY, NAME=satsy01.mqua300.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01$end, DX = DXS; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01$end, DPX =DPXS; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy01$end, X < 0.1; LMDIF, CALLS=1000, TOLERANCE=1.E-21; ENDMATCH; matching.xdispersion=TAR; !------------------------------------------ ! close vertical dispersion if (initquads==1){ satsy02.mqua010.k1 := - 1.71; satsy02.mqua110.k1 := 1.22622; satsy02.mqua120.k1 := 1.64073; satsy02.mqua230.k1 = -1.61620; } MATCH,SEQUENCE=swissfel,range=#s/#e,betx=betax0,alfx=alphax0,bety=betay0,alfy=alphay0; VARY, NAME=satsy02.mqua010.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; VARY, NAME=satsy02.mqua110.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; VARY, NAME=satsy02.mqua120.k1, STEP=0.00001,LOWER=Kmin,UPPER=Kmax; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy02$end, DY = 0.0; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy02$end, DPY = 0.0; CONSTRAINT, SEQUENCE=swissfel, RANGE=satsy02$end, X = 0.0; LMDIF, CALLS=1000, TOLERANCE=1.E-21; ENDMATCH; matching.ydispersion=TAR; !--------------------------------- ! match sextupoles if (initquads==1){ satsy01.msex050.k2 = 100; satsy01.msex080.k2 = -100; satsy01.msex220.k2 = -100; satsy01.msex250.k2 = 100; } MATCH,chrom, SEQUENCE=swissfel,range=#s/#e,betx=betax0,alfx=alphax0,bety=betay0,alfy=alphay0; VARY, NAME=satsy01.msex050.k2, STEP=0.00001; VARY, NAME=satsy01.msex080.k2, STEP=0.00001; VARY, NAME=satsy01.msex220.k2, STEP=0.00001; VARY, NAME=satsy01.msex250.k2, STEP=0.00001; CONSTRAINT, SEQUENCE=swissFEL, RANGE=satsy02$end, DDX = 0; CONSTRAINT, SEQUENCE=swissFEL, RANGE=satsy02$end, DDY = 0; CONSTRAINT, SEQUENCE=swissFEL, RANGE=satsy02$end, DDPX = 0; CONSTRAINT, SEQUENCE=swissFEL, RANGE=satsy02$end, DDPY = 0; LMDIF, CALLS=1000, TOLERANCE=1.E-21; ENDMATCH;