option,debug; TITLE, s='Elettra - Sincrotrone Trieste'; fact:=1.0; q1:quadrupole, l=0.1, k1:=-1.58789*0.34*fact*10; q2:quadrupole, l=0.1,k1:=2.2453*0.5*fact; q3:multipole, l=0.2, knl:={0,-.896051*0.34*fact}; q4:quadrupole, l=0.1, k1:=1.80457*0.5*fact; q5:multipole, knl:={0,-1.11814*0.17*fact}; bd:multipole, knl:={.261799}; // bed:sbend, l:=0.1, k0:=10.0*0.261799; bed:sbend, l:=0.1, angle:=0.261799; qd:quadrupole, k1:=+1.58789*0.34*fact*10; sf: sextupole,l=0.1,k2=0.1500; of: octupole, l=0.1,k3=0.2000; s0:multipole, knl:={1.e-2}; s1:multipole, knl:={0,1.e-3}; s2:multipole, knl:={0,0,2.e-4}; s3:multipole, knl:={0,0,0,6.e-5}; s0t:multipole, ksl:={1.e-2}; s1t:multipole, ksl:={0,1.e-3}; s2t:multipole, ksl:={0,0,2.e-4}; s3t:multipole, ksl:={0,0,0,6.e-5}; rfc:rfcavity, type=aas, l:=0.0, volt:=.070833333333, harmon:=432, shunt:=26.166, tfill:=90.0; //rfc:marker Beam, particle=electron, energy:=10.0, exn:=6.88E-6*4, eyn:=3.75E-6*4, NPART:=1.05E11, sige:=4.5e-4; //<<<< show, beam; option,-debug,-echo; elseq:sequence, refer=centre,l=2.592e2; rfc__________1:rfc, at=0.0; of___________1:of, at=1.500; q1___________1:q1, at=3.246; s0___________1:s0, at=3.706; s1___________0:s1, at=3.706; s2___________0:s2, at=3.706; s3___________0:s3, at=3.706; s0__t:s0t, at=3.706; s1__t:s1t, at=3.706; s2__t:s2t, at=3.706; s3__t:s3t, at=3.706; q2___________1:q2, at=4.246; sf___________1:sf, at = 4.346; q3___________1:q3, at=4.876; bed__________1:bed, at=6.241; qd___________1:qd, at=6.341; q4___________1:q4, at=7.686; s2___________1:s2, at=8.226; s3___________1:s3, at=10.32; q5___________1:q5, at=10.715; q5___________2:q5, at=10.885; s3___________2:s3, at=11.28; s2___________2:s2, at=13.374; q4___________2:q4, at=13.914; bd___________2:bd, at=15.359; qd___________2:qd, at=15.359; q3___________2:q3, at=16.724; q2___________2:q2, at=17.354; s1___________2:s1, at=17.894; q1___________2:q1, at=18.354; rfc__________2:rfc, at=21.6; rfc__________3:rfc, at=21.6; of___________3:of, at=22.100; q1___________3:q1, at=24.846; s1___________3:s1, at=25.306; q2___________3:q2, at=25.846; sf___________2:sf, at = 25.946; q3___________3:q3, at=26.476; bd___________3:bd, at=27.841; qd___________3:qd, at=27.841; q4___________3:q4, at=29.286; s2___________3:s2, at=29.826; s3___________3:s3, at=31.92; q5___________3:q5, at=32.315; q5___________4:q5, at=32.485; s3___________4:s3, at=32.88; s2___________4:s2, at=34.974; q4___________4:q4, at=35.514; bd___________4:bd, at=36.959; qd___________4:qd, at=36.959; q3___________4:q3, at=38.324; q2___________4:q2, at=38.954; s1___________4:s1, at=39.494; q1___________4:q1, at=39.954; rfc__________4:rfc, at=43.2; rfc__________5:rfc, at=43.2; of___________5:of, at=44.70; q1___________5:q1, at=46.446; s1___________5:s1, at=46.906; q2___________5:q2, at=47.446; q3___________5:q3, at=48.076; bd___________5:bd, at=49.441; qd___________5:qd, at=49.441; q4___________5:q4, at=50.886; s2___________5:s2, at=51.426; sf___________3:sf, at = 51.526; s3___________5:s3, at=53.52; q5___________5:q5, at=53.915; q5___________6:q5, at=54.085; s3___________6:s3, at=54.48; s2___________6:s2, at=56.574; q4___________6:q4, at=57.114; bd___________6:bd, at=58.559; qd___________6:qd, at=58.559; q3___________6:q3, at=59.924; q2___________6:q2, at=60.554; s1___________6:s1, at=61.094; q1___________6:q1, at=61.554; rfc__________6:rfc, at=64.8; rfc__________7:rfc, at=64.8; of___________7:of, at=66.30; q1___________7:q1, at=68.046; s1___________7:s1, at=68.506; q2___________7:q2, at=69.046; q3___________7:q3, at=69.676; bd___________7:bd, at=71.041; qd___________7:qd, at=71.041; q4___________7:q4, at=72.486; s2___________7:s2, at=73.026; s3___________7:s3, at=75.12; q5___________7:q5, at=75.515; q5___________8:q5, at=75.685; s3___________8:s3, at=76.08; s2___________8:s2, at=78.174; q4___________8:q4, at=78.714; bd___________8:bd, at=80.159; qd___________8:qd, at=80.159; q3___________8:q3, at=81.524; q2___________8:q2, at=82.154; s1___________8:s1, at=82.694; q1___________8:q1, at=83.154; rfc__________8:rfc, at=86.4; rfc__________9:rfc, at=86.4; of___________9:of, at=87.90; q1___________9:q1, at=89.646; s1___________9:s1, at=90.106; q2___________9:q2, at=90.646; q3___________9:q3, at=91.276; bd___________9:bd, at=92.641; qd___________9:qd, at=92.641; q4___________9:q4, at=94.086; s2___________9:s2, at=94.626; s3___________9:s3, at=96.72; q5___________9:q5, at=97.115; q5__________10:q5, at=97.285; s3__________10:s3, at=97.68; s2__________10:s2, at=99.774; q4__________10:q4, at=1.00314e2; bd__________10:bd, at=1.01759e2; qd__________10:qd, at=1.01759e2; q3__________10:q3, at=1.03124e2; q2__________10:q2, at=1.03754e2; s1__________10:s1, at=1.04294e2; q1__________10:q1, at=1.04754e2; rfc_________10:rfc, at=1.08e2; rfc_________11:rfc, at=1.08e2; of__________11:of, at=1.095e2; q1__________11:q1, at=1.11246e2; s1__________11:s1, at=1.11706e2; q2__________11:q2, at=1.12246e2; q3__________11:q3, at=1.12876e2; bd__________11:bd, at=1.14241e2; qd__________11:qd, at=1.14241e2; q4__________11:q4, at=1.15686e2; s2__________11:s2, at=1.16226e2; s3__________11:s3, at=1.1832e2; q5__________11:q5, at=1.18715e2; q5__________12:q5, at=1.18885e2; s3__________12:s3, at=1.1928e2; s2__________12:s2, at=1.21374e2; q4__________12:q4, at=1.21914e2; bd__________12:bd, at=1.23359e2; qd__________12:qd, at=1.23359e2; q3__________12:q3, at=1.24724e2; q2__________12:q2, at=1.25354e2; s1__________12:s1, at=1.25894e2; q1__________12:q1, at=1.26354e2; rfc_________12:rfc, at=1.296e2; rfc_________13:rfc, at=1.296e2; of__________13:of, at=1.311e2; q1__________13:q1, at=1.32846e2; s1__________13:s1, at=1.33306e2; q2__________13:q2, at=1.33846e2; q3__________13:q3, at=1.34476e2; bd__________13:bd, at=1.35841e2; qd__________13:qd, at=1.35841e2; q4__________13:q4, at=1.37286e2; s2__________13:s2, at=1.37826e2; s3__________13:s3, at=1.3992e2; q5__________13:q5, at=1.40315e2; q5__________14:q5, at=1.40485e2; s3__________14:s3, at=1.4088e2; s2__________14:s2, at=1.42974e2; q4__________14:q4, at=1.43514e2; bd__________14:bd, at=1.44959e2; qd__________14:qd, at=1.44959e2; q3__________14:q3, at=1.46324e2; q2__________14:q2, at=1.46954e2; s1__________14:s1, at=1.47494e2; q1__________14:q1, at=1.47954e2; rfc_________14:rfc, at=1.512e2; rfc_________15:rfc, at=1.512e2; of__________15:of, at=1.527e2; q1__________15:q1, at=1.54446e2; s1__________15:s1, at=1.54906e2; q2__________15:q2, at=1.55446e2; q3__________15:q3, at=1.56076e2; bd__________15:bd, at=1.57441e2; qd__________15:qd, at=1.57441e2; q4__________15:q4, at=1.58886e2; s2__________15:s2, at=1.59426e2; s3__________15:s3, at=1.6152e2; q5__________15:q5, at=1.61915e2; q5__________16:q5, at=1.62085e2; s3__________16:s3, at=1.6248e2; s2__________16:s2, at=1.64574e2; q4__________16:q4, at=1.65114e2; bd__________16:bd, at=1.66559e2; qd__________16:qd, at=1.66559e2; q3__________16:q3, at=1.67924e2; q2__________16:q2, at=1.68554e2; s1__________16:s1, at=1.69094e2; q1__________16:q1, at=1.69554e2; rfc_________16:rfc, at=1.728e2; rfc_________17:rfc, at=1.728e2; of__________17:of, at=1.743e2; q1__________17:q1, at=1.76046e2; s1__________17:s1, at=1.76506e2; q2__________17:q2, at=1.77046e2; q3__________17:q3, at=1.77676e2; bd__________17:bd, at=1.79041e2; qd__________17:qd, at=1.79041e2; q4__________17:q4, at=1.80486e2; s2__________17:s2, at=1.81026e2; s3__________17:s3, at=1.8312e2; q5__________17:q5, at=1.83515e2; q5__________18:q5, at=1.83685e2; s3__________18:s3, at=1.8408e2; s2__________18:s2, at=1.86174e2; q4__________18:q4, at=1.86714e2; bd__________18:bd, at=1.88159e2; qd__________18:qd, at=1.88159e2; q3__________18:q3, at=1.89524e2; q2__________18:q2, at=1.90154e2; s1__________18:s1, at=1.90694e2; q1__________18:q1, at=1.91154e2; rfc_________18:rfc, at=1.944e2; rfc_________19:rfc, at=1.944e2; of__________19:of, at=1.959e2; q1__________19:q1, at=1.97646e2; s1__________19:s1, at=1.98106e2; q2__________19:q2, at=1.98646e2; q3__________19:q3, at=1.99276e2; bd__________19:bd, at=2.00641e2; qd__________19:qd, at=2.00641e2; q4__________19:q4, at=2.02086e2; s2__________19:s2, at=2.02626e2; s3__________19:s3, at=2.0472e2; q5__________19:q5, at=2.05115e2; q5__________20:q5, at=2.05285e2; s3__________20:s3, at=2.0568e2; s2__________20:s2, at=2.07774e2; q4__________20:q4, at=2.08314e2; bd__________20:bd, at=2.09759e2; qd__________20:qd, at=2.09759e2; q3__________20:q3, at=2.11124e2; q2__________20:q2, at=2.11754e2; s1__________20:s1, at=2.12294e2; q1__________20:q1, at=2.12754e2; rfc_________20:rfc, at=2.16e2; rfc_________21:rfc, at=2.16e2; of__________21:of, at=2.175e2; q1__________21:q1, at=2.19246e2; s1__________21:s1, at=2.19706e2; q2__________21:q2, at=2.20246e2; q3__________21:q3, at=2.20876e2; bd__________21:bd, at=2.22241e2; qd__________21:qd, at=2.22241e2; q4__________21:q4, at=2.23686e2; s2__________21:s2, at=2.24226e2; s3__________21:s3, at=2.2632e2; q5__________21:q5, at=2.26715e2; q5__________22:q5, at=2.26885e2; s3__________22:s3, at=2.2728e2; s2__________22:s2, at=2.29374e2; q4__________22:q4, at=2.29914e2; bd__________22:bd, at=2.31359e2; qd__________22:qd, at=2.31359e2; q3__________22:q3, at=2.32724e2; q2__________22:q2, at=2.33354e2; s1__________22:s1, at=2.33894e2; q1__________22:q1, at=2.34354e2; rfc_________22:rfc, at=2.376e2; rfc_________23:rfc, at=2.376e2; of__________23:of, at=2.391e2; q1__________23:q1, at=2.40846e2; s1__________23:s1, at=2.41306e2; q2__________23:q2, at=2.41846e2; q3__________23:q3, at=2.42476e2; bd__________23:bd, at=2.43841e2; qd__________23:qd, at=2.43841e2; q4__________23:q4, at=2.45286e2; s2__________23:s2, at=2.45826e2; s3__________23:s3, at=2.4792e2; q5__________23:q5, at=2.48315e2; q5__________24:q5, at=2.48485e2; s3__________24:s3, at=2.4888e2; s2__________24:s2, at=2.50974e2; q4__________24:q4, at=2.51514e2; bd__________24:bd, at=2.52959e2; qd__________24:qd, at=2.52959e2; q3__________24:q3, at=2.54324e2; q2__________24:q2, at=2.54954e2; s1__________24:s1, at=2.55494e2; q1__________24:q1, at=2.55954e2; rfc_________24:rfc, at=2.592e2; end:marker, at=2.592e2; endsequence; use, period=elseq; value bed__________1->k0; value bed->k0; value bed__________1->k0l; value bed->k0l; //twiss,file=twiss.out; // field errors gcutr=3.0; b1r=1.e-4; b2r=2.e-4; b3r=3.e-4; b4r=4.e-4; b5r=5.e-4; a1r=1.e-4; a2r=2.e-4; a3r=3.e-4; a4r=4.e-4; a5r=5.e-4; // Assign alignment errors to quadrupoles Q4 SELECT, flag=ERROR, CLEAR = true; select,flag=error,pattern="q4.*"; ealign dx:=0.001,dy:=-0.002,ds:=0.003,dphi:=0.004,dtheta:=0.005,dpsi:=0.006,mrex:=0.007,mrey:=0.008,mredx:=0.009,mredy:=0.010,arex:=0.011,arey:=tgauss(0.3)*0.1e-3,mscalx=0.0130,mscaly=0.9999; // Assign alignment errors to quadrupoles QD SELECT, flag=ERROR, CLEAR = true; select,flag=error,pattern="qd.*"; ealign dx:=0.001,dy:=-0.002,mrex:=0.2e-3,mrey:=tgauss(0.5)*0.2e-3,arex:=0.010101e-3,arey:=tgauss(0.3)*0.1e-3,mscalx=0.1111,mscaly=0.9999; // Assign RELATIVE field errors to multipole S0, normalised to dipole component Select, flag=error, clear = true; select, flag=error, pattern="s0.*"; efcomp, order:=0, radius:=0.010, dknr={0,3e-1*b2r,3e-1*b3r,3e-1*b4r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, dksr={0,3e-1*a2r,3e-1*a3r,3e-1*a4r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // Assign RELATIVE field errors to dipoles BED, normalised to dipole component Select, flag=error, clear = true; select, flag=error, pattern="bed.*"; efcomp, order:=0, radius:=0.010, dknr={0,5e-1*b2r,5e-1*b3r,5e-1*b4r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, dksr={0,5e-1*a2r,5e-1*a3r,5e-1*a4r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // Assign RELATIVE field errors to quadrupoles Q, normalised to quadrupole component Select, flag=error, clear = true; select, flag=error, pattern="q.*"; efcomp, order:=1, radius:=0.010, dknr={0,2e-1*b2r,2e-1*b3r,2e-1*b4r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, dksr={0,2e-1*a2r,2e-1*a3r,2e-1*a4r,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; // Assign ABSOLUTE field errors to quadrupoles Q, added to relative errors eoption,add=true; Select, flag=error, clear = true; select, flag=error, pattern="q.*"; efcomp, dkn={0,0,0,0,0,0,0,0.30,0,0,0,0,0,0,0,0,0}, dks={0,0,0,0,0,0,0,0,0,.45,0,0,0,0,0,0,0,0,0}; // Assign ABSOLUTE field errors to quadrupoles Q4, added to relative errors Select, flag=error, clear = true; select, flag=error, pattern="q4.*"; efcomp, dkn={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19}, dks={-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11,-12,-13,-14,-15,-16,-17,-18,-19}; // Write tables with field and alignment errors for different element types Select, flag=error, clear = true; select, flag=error, pattern="^q.*"; esave,file=efield.tab0; Select, flag=error, clear = true; select, flag=error, pattern="^q1.*"; esave,file=efield.tab1; Select, flag=error, clear = true; select, flag=error, pattern="^s0.*"; esave,file=efield.tab4; Select, flag=error, clear = true; select, flag=error, pattern="^bed.*"; esave,file=efield.tab5; stop;