beam, SEQUENCE=BDS ,PARTICLE=electron, energy=1500, RADIATE=false; beam, SEQUENCE=EFF1S ,PARTICLE=electron, energy=1500, RADIATE=false; beam, SEQUENCE=NEWBDS ,PARTICLE=electron, energy=1500, RADIATE=false; beam, SEQUENCE=diagcoll ,PARTICLE=electron, energy=1500, RADIATE=false; beam, SEQUENCE=testline ,PARTICLE=electron, energy=1500, RADIATE=false; option, -echo, -info; LSCA := 1.4; !condition nedded to get L*=6m observe that changing this variable later seems not affect the lattice it has to be changed here. call, file= "CLICx"; call, file="changeparameters.3sext.perfect"; call, file="changeparameters.OpSexStrWithOct"; call, file="changeparameters.AllAfterOpSSW"; call, file="changeparameters.Dec"; call, file="line4CLIC.madx"; call, file="fakematch.madx"; call, file="L6FFOptimEff1s.values"; NEWBDS: LINE:=(fakeline,DIAGNOSTICS,NOENTRBDS); DIAGCOLL: LINE:=(fakeline,DIAGNOSTICS,NOENTRCOLSYS); testline: LINE:=(fakeline,DIAGNOSTICS,NOENTRCOLSYS); DIAGCOLLFFM: LINE:=(fakeline,DIAGNOSTICS,NOENTRCOLSYS,FFM); select, flag=twiss,clear; select, flag=twiss,column=name,S,BETX,BETY,ALFX,ALFY,dx,k2l,L,K1L, mux,muy; !use, period=bds; use, period=newbds; !use, period=diagcollffm; !use, period=EFF1S; !twiss,BETX=64.9998842,BETY=17.99971386,ALFX=7.41685362e-07,ALFY=9.604936379e-06,deltap=0.0,file="Eff1s.twiss",save; twiss,BETX=beta_max,BETY=beta_min,ALFX=0,ALFY=0,deltap=0.0,file="newbds.twiss",save; !###PTC To procude fort.18 ptc_create_universe; ptc_create_layout,model=2,method=6,nst=10; ptc_normal,icase=5,no=10,deltap=0.00; ptc_end; system, "./getSigmasMixed25.py |grep sigma > sigmatemp.madx"; !================================================================================ ! bds.placet needed to run placet and calculate luminosity. !================================================================================ !### Output for PLACET select, flag=twiss, clear; !do not change the order of the select parameter in the folliwing line select, flag=twiss,column=name,keyword,s,l,angle,K1L,K2L,K3L,tilt,E1,E2,type,k4l,angle; twiss,BETX=beta_max,BETY=beta_min,ALFX=0,ALFY=0,deltap=0.0,file="ff4placet"; system, "./madXoptics.tcl ff4placet bds3T.placet"; !system, "rm ff4placet"; !================================================================================ stop; !#### MATCH, use Mixed macro counter =0; !tables to be able to see the optimization as it goes !create,table=mytab,column=counter,bsxec2,bsyec2,sigmax5,sigmay5; create,table=mytab,column=counter,kqd7,kqd6c,kqd6b,kqf5b,kqf5a,kqd4b,kqd4a,kqf3b,kqf3a,kqd2,kqf1,kqd0,sigmax5,sigmay5; !create,table=mytab,column=counter,ksf6,ksf5,ksd4,ksf1,ksd0,sext2,sigmax5,sigmay5; !create,table=mytab,column=counter,kod2,kod1,sigmax5,sigmay5; !create,table=mytab,column=counter,kod2,kod1,dec2,sigmax5,sigmay5; !create,table=mytab,column=counter,boctf,Koct0,boctd,dec1,sigmax5,sigmay5; MATCH,use_macro, betx=beta_max, bety=beta_min, alfx=0, alfy=0; !EFFS1 quadrupoles !============================================ !QUADS IN THE FFIN MATCHING SECTION !============================================ !VARY, NAME=bqmd11 , STEP=10; !VARY, NAME=bqmd12 , STEP=10; !VARY, NAME=bqmd13 , STEP=10; !VARY, NAME=bqmd14 , STEP=10; !VARY, NAME=kqf8 , STEP=10; !============================================= VARY, NAME=kqd7 , STEP=0.1; !2424 VARY, NAME=kqd6c , STEP=0.1; !2455 VARY, NAME=kqd6b , STEP=0.1; !2504 VARY, NAME=kqf5b , STEP=0.1; !2564 VARY, NAME=kqf5a , STEP=0.1; !2634 VARY, NAME=kqd4b , STEP=0.1; !2654 VARY, NAME=kqd4a,step=0.1; !2659 VARY, NAME=kqf3b,step=0.1; !2828 VARY, NAME=kqf3a, step=0.1; !2858 VARY, NAME=kqd2 , STEP=0.1; !2885 VARY, NAME=kqf1 , STEP=0.01; !3099 VARY, NAME=kqd0 , STEP=0.01; !3110 !FFS Sextupoles !VARY, NAME=KSf6, STEP=10; !2558 !VARY, NAME=sext2, STEP=10; !oct2 sextupole multipole 2610 !VARY, NAME=KSF5, STEP=10; !2636 !VARY, NAME=KSD4, STEP=10; !2656 !VARY, NAME=KSF1, STEP=10; !3093 !VARY, NAME=KSd0, step=10; !3105 !FFS Octupoles !VARY, NAME=KOD2, STEP=100; !oct2 octupole multipole 2610 !VARY, NAME=KOD1, STEP=100; !oct1 octupole multipole 2651 !FFS Decapoles !VARY, NAME=dec2, STEP=1e5; !oct2 decapole multipole 2610 !Collimation sextupoles !VARY, NAME=bsxec2, STEP=10; !VARY, NAME=bsyec2, STEP=10; M1: MACRO={ !assign, echo="scum"; !twiss,BETX=66.14532014,BETY=17.92472388,ALFX=0,ALFY=0,deltap=0.0,file="newbds.L6.opt.matched.twiss",save; !###PTC To procude fort.18 ptc_create_universe; ptc_create_layout,model=2,method=6,nst=10; ptc_normal,icase=5,no=5,deltap=0.00; ptc_end; counter=counter+1; system, "./getSigmasMixed25.py |grep sigma > sigmatemp.madx"; call, file="sigmatemp.madx"; !assign, echo="values.temp.madx"; !value,counter,bqmd11,bqmd12,kqf8,kqd7,kqd6c,kqd6b,Koct0,KOD1,sext2,kod2,dec2,boctf,boctd,dec1,sigmax5,sigmay5; !system, "./opop"; fill,table=mytab; write,table=mytab, file="playing"; assign, echo=terminal;twiss,BETX=66.14532014,BETY=17.92472388,ALFX=0,ALFY=0,deltap=0.0,file="newbds.twiss",save; !###PTC To procude fort.18 ptc_create_universe; ptc_create_layout,model=2,method=6,nst=10; ptc_normal,icase=5,no=10,deltap=0.00; ptc_end; system, "./getSigmasMixed25lang0.01.py |grep sigma > sigmatemp.madx"; system, "opop"; stop; }; !CONSTRAINT, EXPR= (table(twiss, SD0, MUY) -table(twiss, SD4, MUY))*1e4 = 0.5*1e4; !CONSTRAINT, EXPR= (table(twiss, SD0, MUX) -table(twiss, SD4, MUX))*1e3 = 0.5*1e3; !CONSTRAINT, EXPR= (table(twiss, Sf1, MUY) -table(twiss, Sf5, MUY))*1e3 = 0.5*1e3; !CONSTRAINT, EXPR= (table(twiss, Sf1, MUX) -table(twiss, Sf5, MUX))*1e4 = 0.5*1e4; !CONSTRAINT, EXPR= (table(twiss, Sf5, MUY) -table(twiss, Sf6, MUY))*1e3 = 0.5*1e3; !CONSTRAINT, EXPR= (table(twiss, Sf5, MUX) -table(twiss, Sf6, MUX))*1e4 = 0.5*1e4; !CONSTRAINT, EXPR= table(twiss, D8, BETX)*1e10=22.35090206*1e10; !CONSTRAINT, EXPR= table(twiss, D8, BETY)*1e10=97.9648486*1e10; !CONSTRAINT, EXPR= table(twiss, D8, ALFX)*1e10=1.632858294*1e10; !CONSTRAINT, EXPR= table(twiss, D8, ALFY)*1e10=-3.357353503*1e10; !CONSTRAINT, EXPR= sigmax5/40e-9*sigmay5/1e-9*1e5=0; CONSTRAINT, EXPR= sigmay5*1e11*40<1e-9*1e11*40; CONSTRAINT, EXPR= sigmax5*1e11<40e-9*1e11; !CONSTRAINT, EXPR= sigmapx5*1e5= 3.23517264947e-05* 1e5; !CONSTRAINT, EXPR= sigmapy5*1e5= 1.86899601988e-05* 1e5; !CONSTRAINT, EXPR= sigmay*3e9=2.53e-09 * 3e9; ! For bety 0.16 !CONSTRAINT, EXPR= table(twiss, IP, DX)*1e6=0; !CONSTRAINT, EXPR= table(twiss, IP, BETX)*1e4=4e-3*1e4; !CONSTRAINT, EXPR= table(twiss, IP, BETY)*1e5=0.1e-3*1e5; !CONSTRAINT, EXPR= table(twiss, IP, ALFY)*1e3=0.000 ; !CONSTRAINT, EXPR= table(twiss, IP, ALFX)*1e3=0.000 ; !CONSTRAINT, EXPR= sigmapx*1e10=0; simplex,tolerance=1e-10,calls=100000000; ENDMATCH; write,table=mytab, file="playing"; twiss,BETX=66.14532014,BETY=17.92472388,ALFX=0,ALFY=0,deltap=0.0,file="newbds.twiss",save; !###PTC To procude fort.18 ptc_create_universe; ptc_create_layout,model=2,method=6,nst=10; ptc_normal,icase=5,no=10,deltap=0.00; ptc_end; system, "./getSigmasMixed25lang0.01.py |grep sigma > sigmatemp.madx"; system, "opop"; stop; xx:=table(twiss, IP, BETX); yy:=table(twiss, IP, BETY); create,table=mytab,column=counter,kqf1,kqd0,xx,yy; n1=-200e-9; n2=-50e-9; counter=1; kqd0reset=kqd0; kqf1reset=kqf1; while (n1 < 50e-9) { kqf1 = kqf1reset+n1; while (n2 < 50e-9) { kqd0 = kqd0reset+n2; fill,table=mytab; n2 = n2 + 10e-9; write,table=mytab, file="table"; counter=counter+1; }; kqd0:=kqd0reset; n2=-50e-9; n1 = n1 + 20e-9; }; write,table=mytab, file="table"; stop; !================================================================================ ! bds.placet needed to run placet and calculate luminosity. !================================================================================ !### Output for PLACET select, flag=twiss, clear; select, flag=twiss,column=name,keyword,s,l,angle,K1L,K2L,K3L,tilt,E1,E2,type,k4l,angle; twiss,BETX=66.14532014,BETY=17.92472388,ALFX=0,ALFY=0,deltap=0.0,file="ff4placet"; !twiss,BETX=64.99994331*LSCA,BETY=17.99969318*LSCA,ALFX=1.745644804e-06,ALFY=4.45179019e-06,deltap=0.0,file="ff4placet"; conditions for eff1s line system, "./madXoptics.tcl ff4placet bds3T.placet"; !system, "rm ff4placet"; !================================================================================ !===================================================== !remove soon only to produce teslas call, file="Apertures4MAD.madx"; select, flag=twiss, clear; select, flag=twiss, column=NAME,S,keyword,k1l,l,APER_1; twiss,BETX=beta_max,BETY=beta_min,alfx=0,alfy=0,file="Gradients.twiss",save; !========================================================= stop; !================================================================================ !Produces apertures twiss file to Raphael M. !================================================================================ call, file="Apertures4MAD.madx"; select, flag=twiss, clear; select, flag=twiss, column=NAME,S,BETX,BETY,MUX,MUY,DX,ALFX,ALFY,APER_1,APER_2; show,a; twiss,BETX=beta_max,BETY=beta_min,alfx=0,alfy=0,file="500Gev.apertures.bds.twiss",save; !================================================================================ /* !================================================================================ ! bds.placet needed to run placet and calculate luminosity. !================================================================================ !### Output for PLACET select, flag=twiss, clear; select, flag=twiss,column=name,keyword,s,l,angle,K1L,K2L,K3L,tilt,E1,E2,type,k4l,angle; !twiss,BETX=66.14532014,BETY=17.92472388,ALFX=0,ALFY=0,deltap=0.0,file="ff4placet"; twiss,BETX=64.9998842,BETY=17.99971386,ALFX=7.416770395e-07,ALFY=9.605196434e-06,deltap=0.0,file="ff4placet"; !conditions for the eff1s line starts at lmd4 !system, "./madXoptics.tcl ff4placet bds3T.placet"; !system, "./madXoptics.tcl ff4placet ffs3TL6.placet"; system, "./madXoptics.tcl ff4placet bds3TL6.placet"; system, "rm ff4placet"; !================================================================================ stop; */ !================================================= !text here !================================================= select, flag=twiss,clear; select, flag=twiss,column=NAME,S,KEYWORD,BETX,BETY,ALFX,ALFY,MUX,MUY,DX,L; twiss,BETX=66.14532014,BETY=17.92472388,ALFX=0,ALFY=0,deltap=0.0,file="newbds.twiss"; !system, "./AwkScript" !takes the newbds.twiss and creates Apertures4MAD.madx but still the "" need to be replaced !================================================== !===================================================== !Gradients.quads.table producer calls Maker.Gradiet.. script !===================================================== call, file="Apertures4MAD.madx"; select, flag=twiss, clear; select, flag=twiss, column=NAME,S,keyword,k1l,l,APER_1; twiss,BETX=beta_max,BETY=beta_min,alfx=0,alfy=0,file="Gradients.twiss"; system, "./Maker.Grad.quads.table"; !system, "rm Gradients.twiss"; !========================================================= !================================================================================ !Produces apertures twiss file to Raphael M. !================================================================================ call, file="Apertures4MAD.madx"; select, flag=twiss, clear; select, flag=twiss, column=NAME,S,BETX,BETY,MUX,MUY,DX,ALFX,ALFY,APER_1,APER_2; show,a; twiss,BETX=beta_max,BETY=beta_min,alfx=0,alfy=0,file="1500Gev.apertures.bds.twiss",save; !================================================================================ stop;