1 | ! Macros from Javier Barranco |
---|
2 | |
---|
3 | crab_make_cc(NNN,SIDE,IRN,BIM,FFF): macro { |
---|
4 | crabrf:=HRF400/LHCLENGTH*clight; |
---|
5 | sigmas=0.075; |
---|
6 | ahcrabref_SIDEIRNBIM:=ahcrab_SIDEIRNBIM/FFF*cosiIRN; |
---|
7 | avcrabref_SIDEIRNBIM:=avcrab_SIDEIRNBIM/FFF*sinuIRN; |
---|
8 | acrabref_SIDEIRNBIM:=sqrt(ahcrabref_SIDEIRNBIM^2+avcrabref_SIDEIRNBIM^2); |
---|
9 | ! vcrabref_SIDEIRNBIM:=acrabref_SIDEIRNBIM/sigmas*nrj*1e9*clight/(2*pi*crabrf); |
---|
10 | vcrabref_SIDEIRNBIM:=acrabref_SIDEIRNBIM*7e12; |
---|
11 | acrabccNNN.SIDEIRNBIM: crabcavity, l=0, volt:=on_crabIRN*vcrabref_SIDEIRNBIM/1e6, |
---|
12 | lag=0.0,freq=crabrf/1e6,tilt:=phi_irIRN/180*pi; |
---|
13 | }; |
---|
14 | |
---|
15 | crab_install_cc(NNN,PFFF,PBBB): macro ={ |
---|
16 | seqedit, sequence=lhcb1; |
---|
17 | install,element=acrabccNNN.l5b1,at=-PBBB,from=IP5; |
---|
18 | install,element=acrabccNNN.r5b1,at= PFFF,from=IP5; |
---|
19 | install,element=acrabccNNN.l1b1,at=-PBBB,from=IP1.L1; |
---|
20 | install,element=acrabccNNN.r1b1,at= PFFF,from=IP1; |
---|
21 | endedit; |
---|
22 | }; |
---|
23 | |
---|
24 | crab_remove_cc(NNN): macro ={ |
---|
25 | seqedit, sequence=lhcb1; |
---|
26 | remove,element=acrabccNNN.l5b1; |
---|
27 | remove,element=acrabccNNN.r5b1; |
---|
28 | remove,element=acrabccNNN.l1b1; |
---|
29 | remove,element=acrabccNNN.r1b1; |
---|
30 | endedit; |
---|
31 | }; |
---|
32 | |
---|
33 | |
---|
34 | crab_make(NNN,FFF): macro { |
---|
35 | exec,crab_make_cc(NNN,l,5,b1,FFF); |
---|
36 | exec,crab_make_cc(NNN,l,5,b2,FFF); |
---|
37 | exec,crab_make_cc(NNN,r,5,b1,FFF); |
---|
38 | exec,crab_make_cc(NNN,r,5,b2,FFF); |
---|
39 | exec,crab_make_cc(NNN,l,1,b1,FFF); |
---|
40 | exec,crab_make_cc(NNN,l,1,b2,FFF); |
---|
41 | exec,crab_make_cc(NNN,r,1,b1,FFF); |
---|
42 | exec,crab_make_cc(NNN,r,1,b2,FFF); |
---|
43 | }; |
---|
44 | |
---|
45 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
46 | ! EXECUTE THE MACROS |
---|
47 | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
---|
48 | |
---|
49 | exec,crab_make(A,3); exec,crab_make(B,3); exec,crab_make(C,3); |
---|
50 | |
---|
51 | exec,crab_remove(A); exec,crab_remove(B); exec,crab_remove(C); |
---|
52 | exec,crab_remove_cc(A); exec,crab_remove_cc(B); exec,crab_remove_cc(C); |
---|
53 | |
---|
54 | exec,crab_install_cc(A,posCRABA1,posCRABA2); |
---|
55 | exec,crab_install_cc(B,posCRABB1,posCRABB2); |
---|
56 | exec,crab_install_cc(C,posCRABC1,posCRABC2); |
---|