
! *** OPTICS=LCLS2sc07AUG14 ***

! LCLS2sc sector 10 vertical dogleg, plus BC3 and match to bypass line

! ==============================================================================
! Modification History
! ------------------------------------------------------------------------------
! 07-AUG-2014, M. Woodley
!  * diagnostics complement per "Electron Beam Diagnostics Systems" PRD
!    (LCLSII-2.7-PR-0170)
!  * replace some dogleg stripline BPMs with cavity BPMs
!  * remove BC3
!  * decorate device TYPE attributes to indicate non-baseline status
! 17-APR-2014, M. Woodley
!  * add "CNT" MARKERs after dispersive areas (ELEGANT CENTERing)
! ------------------------------------------------------------------------------
! 26-MAR-2014, M. Woodley
!  * element names changed to conform to nomenclature PRD
! ------------------------------------------------------------------------------
! 01-MAR-2014, M. Woodley
!  * change BC3 dipole type from 1.0D38.37 to 1D19.7 (BC2 dipole)
! 14-JAN-2014, M. Woodley
!  * add BC3
! ------------------------------------------------------------------------------

  dZdog := 77.99997504 !Z-extent of dogleg

! ==============================================================================
! SBEN
! ------------------------------------------------------------------------------

! dogleg

! XOFF  : x-offset of bypass line (old PEP-II 9-GeV) w.r.t. old linac axis
!         (<0 is south)
! YOFF  : y-offset of bypass line (old PEP-II 9-GeV) w.r.t. old linac axis
!         (>0 is up)
! ROLLA : roll angle of sec-10 bends to get XOFF and YOFF bypass offsets

  Brhof := Cb*Ef
  GBR   := 0.0254          !1.0D38.37 gap height (m)
  LBR   := 1.0             !1.0D38.37 gap height (m)
  ANGA  := 0.024477314713  !dogleg bend angle (rad)
  XOFF  := -25.610*IN2M
  YOFF  := 25.570*IN2M
  ROLLA := -1.054575132367

  BRB1a : SBEN, TYPE="1.0D38.37", HGAP=GBR/2, L=LBR/2, ANGLE= ANGA/2, &
                E1= ANGA/2, E2=0, FINT=0.5, FINTX=0, TILT=ROLLA
  BRB1b : SBEN, TYPE="1.0D38.37", HGAP=GBR/2, L=LBR/2, ANGLE= ANGA/2, &
                E1=0, E2= ANGA/2, FINT=0, FINTX=0.5, TILT=ROLLA
  BRB2a : SBEN, TYPE="1.0D38.37", HGAP=GBR/2, L=LBR/2, ANGLE=-ANGA/2, &
                E1=-ANGA/2, E2=0, FINT=0.5, FINTX=0, TILT=ROLLA
  BRB2b : SBEN, TYPE="1.0D38.37", HGAP=GBR/2, L=LBR/2, ANGLE=-ANGA/2, &
                E1=0, E2=-ANGA/2, FINT=0, FINTX=0.5, TILT=ROLLA

! ==============================================================================
! QUAD
! ------------------------------------------------------------------------------

! dogleg (6 quads; 3 power supplies)

  KQDOG := 0.210962514633

  QDOG1 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1= KQDOG, APER=rQK
  QDOG2 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1=-KQDOG, APER=rQK
  QDOG3 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1= KQDOG, APER=rQK
  QDOG4 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1=-KQDOG, APER=rQK
  QDOG5 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1= KQDOG, APER=rQK
  QDOG6 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1=-KQDOG, APER=rQK
  QDOG7 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1= KQDOG, APER=rQK
  QDOG8 : QUAD, TYPE="1.625Q27.3", L=LQK/2, K1=-KQDOG, APER=rQK

  KQL1P :=  0.174548821663
  KQL2P := -0.165054046769
  KQL3P :=  0.221962888673
  KQL4P := -0.112724967681

! match to bypass line

  QL1P : QUAD, TYPE="1.97Q20", L=LQN/2, K1= KQL1P, APER=rQN
  QL2P : QUAD, TYPE="1.97Q10", L=LQL/2, K1= KQL2P, APER=rQL
  QL3P : QUAD, TYPE="2Q4W",    L=LQM/2, K1= KQL3P, APER=rQM
  QL4P : QUAD, TYPE="2Q4W",    L=LQM/2, K1= KQL4P, APER=rQM

! bypass line FODO

  KQBYP :=  0.060580505638 !45 degree per cell

  QBPF : QUAD, TYPE="2Q4", L=LQM/2, K1= KQBYP, APER=rQM !"QB01"
  QBPD : QUAD, TYPE="2Q4", L=LQM/2, K1=-KQBYP, APER=rQM !"QB02"

! ==============================================================================
! ROLL
! ------------------------------------------------------------------------------

  AROBRB1 := -0.12862097586E-3
  AROBRB2 := -AROBRB1

  ROBRB1 : SROT, ANGLE=AROBRB1
  ROBRB2 : SROT, ANGLE=AROBRB2

! ==============================================================================
! DRIF
! ------------------------------------------------------------------------------

! dogleg

  NQBD  := 8                    !number of dogleg quads
  LTOTA := 76.02294776001       !path length from BRB1-exit to BRB2-entrance
  LDBD  := (LTOTA+LBR)/(NQBD/2) !FODO cell half length
  dLDBD := -0.124816871989E-4   !adjustment for dispersion correction
  LDBDh := LDBD/2+dLDBD         !FODO cell half length

  DBD  : DRIF, L=LTOTA
  DBD0 : DRIF, L=(LDBDh-LBR-LQK)/2-4*dLDBD
  DBD1 : DRIF, L=LDBDh-LQK
  DBD2 : DRIF, L=LDBDh-LQK
  DBD3 : DRIF, L=LDBDh-LQK
  DBD4 : DRIF, L=LDBDh-LQK
  DBD5 : DRIF, L=LDBDh-LQK
  DBD6 : DRIF, L=LDBDh-LQK
  DBD7 : DRIF, L=LDBDh-LQK
  DBD8 : DRIF, L=(LDBDh-LQK-LBR)/2-4*dLDBD

  COMMENT
    VALUE, LTOTA,(NQBD/2)*LDBD-LBR
    VALUE, DBD0[L]+DBD1[L]+DBD2[L]+DBD3[L]+DBD4[L]+&
           DBD5[L]+DBD6[L]+DBD7[L]+DBD8[L]+NQBD*LQK
  ENDCOMMENT

  DBD4h : DRIF, L=DBD4[L]/2

  DBD0a : DRIF, L=1.0
  DBD0b : DRIF, L=DBD0[L]-DBD0a[L]
  DBD1a : DRIF, L=1.0
  DBD1b : DRIF, L=DBD1[L]-DBD1a[L]
  DBD2a : DRIF, L=1.0
  DBD2c : DRIF, L=0.1
  DBD2d : DRIF, L=1.0
  DBD2b : DRIF, L=DBD2[L]-DBD2a[L]-DBD2c[L]-Lcoll-DBD2d[L]
  DBD3a : DRIF, L=1.0
  DBD3b : DRIF, L=DBD3[L]-DBD3a[L]
  DBD4a : DRIF, L=1.0
  DBD4b : DRIF, L=DBD4[L]-DBD4a[L]
  DBD5a : DRIF, L=1.0
  DBD5b : DRIF, L=DBD5[L]-DBD5a[L]
  DBD6a : DRIF, L=1.0
  DBD6c : DRIF, L=0.1
  DBD6d : DRIF, L=1.0
  DBD6b : DRIF, L=DBD6[L]-DBD6a[L]-DBD6c[L]-DBD6d[L]
  DBD7a : DRIF, L=1.0
  DBD7b : DRIF, L=DBD7[L]-DBD7a[L]
  DBD8a : DRIF, L=1.0
  DBD8b : DRIF, L=DBD8[L]-DBD8a[L]

! match to bypass line

  LL0 := 10.0
  LL1 := 22.0
  LL2 := 46.1
  LL3 := 43.0
  LL4 := 51.660514963935

  DL0P : DRIF, L=LL0
  DL1P : DRIF, L=LL1
  DL2P : DRIF, L=LL2
  DL3P : DRIF, L=LL3
  DL4P : DRIF, L=LL4

  DL0Pa : DRIF, L=0.3
  DL0Pc : DRIF, L=0.3
  DL0Pb : DRIF, L=LL0-DL0Pa[L]-DL0Pc[L]
  DL1Pa : DRIF, L=0.3
  DL1Pc : DRIF, L=0.3
  DL1Pb : DRIF, L=LL1-DL1Pa[L]-DL1Pc[L]
  DL2Pa : DRIF, L=0.3
  DL2Pc : DRIF, L=0.3
  DL2Pb : DRIF, L=LL2-DL2Pa[L]-DL2Pc[L]
  DL3Pa : DRIF, L=0.3
  DL3Pb : DRIF, L=LL3-DL3Pa[L]
  DL4Pa : DRIF, L=0.4598
  DL4Pb : DRIF, L=0.7433
  DL4Pc : DRIF, L=0.2794
  DL4Pd : DRIF, L=LL4-DL4Pa[L]-DL4Pb[L]-DL4Pc[L]

! bypass line FODO

  DBP : DRIF, L=(101.6-LQM)/2

! ==============================================================================
! BPMs
! ------------------------------------------------------------------------------

  BPMDOG1 : MONI, TYPE="05_um_res_R0"
  BPMDOG2 : MONI, TYPE="05_um_res_R0"
  BPMDOG4 : MONI, TYPE="05_um_res_R0"
  BPMDOG5 : MONI, TYPE="05_um_res_R0"
  BPMDOG6 : MONI, TYPE="05_um_res_R0"
  BPMDOG8 : MONI, TYPE="05_um_res_R0"
  BPML1P  : MONI, TYPE="05_um_res_R0"
  BPML2P  : MONI, TYPE="05_um_res_R0"
  BPML3P  : MONI, TYPE="05_um_res_R0"
  BPML4P  : MONI, TYPE="05_um_res_R0"

  RFBDOG3 : MONI, TYPE="01_um_res"
  RFBDOG7 : MONI, TYPE="01_um_res"

! ==============================================================================
! XCORs
! ------------------------------------------------------------------------------

  XCDOG1 : HKIC, TYPE="type-4"
  XCDOG3 : HKIC, TYPE="type-4"
  XCDOG5 : HKIC, TYPE="type-4"
  XCDOG7 : HKIC, TYPE="type-4"
  XCL1P  : HKIC, TYPE="type-4"
  XCL2P  : HKIC, TYPE="type-4"
  XCL3P  : HKIC, TYPE="type-4"
  XCL4P  : HKIC, TYPE="type-4"

! ==============================================================================
! YCORs
! ------------------------------------------------------------------------------

  YCDOG0 : VKIC, TYPE="type-4"
  YCDOG2 : VKIC, TYPE="type-4"
  YCDOG4 : VKIC, TYPE="type-4"
  YCDOG6 : VKIC, TYPE="type-4"
  YCDOG8 : VKIC, TYPE="type-4"
  YCL1P  : VKIC, TYPE="type-4"
  YCL2P  : VKIC, TYPE="type-4"
  YCL3P  : VKIC, TYPE="type-4"
  YCL4P  : VKIC, TYPE="type-4"

! ==============================================================================
! marker points, etc.
! ------------------------------------------------------------------------------

! collimator

! CEDOG : energy coll in bypass dog-leg (YSIZE is half-gap)

  CEDOG : RCOL, L=Lcoll, XSIZE=20E-3, YSIZE=4.0E-3

! beam profile measurement

  WSDOG : WIRE, TYPE="@1"
  OTR31 : PROF, TYPE="@3,OTR" !CSR-induced coupling from dogleg

! markers

  clBRB1  : MARK !BRB1 centerline
  MIDBD   : MARK
  clBRB2  : MARK !BRB2 centerline
  CNTDOG  : MARK, TYPE="CENTER"
  MQBP13  : MARK !QBP13 FODO quad center ... Z=1254.531303 (a.k.a. "QB01")

! ==============================================================================
! BEAMLINE
! ------------------------------------------------------------------------------

  DLBP0 : LINE=(&
    BRB1a,clBRB1,BRB1b,ROBRB1,DBD0,&
    QDOG1,QDOG1,DBD1,&
    QDOG2,QDOG2,DBD2,&
    QDOG3,QDOG3,DBD3,&
    QDOG4,QDOG4,DBD4h,MIDBD,DBD4h,&
    QDOG5,QDOG5,DBD5,&
    QDOG6,QDOG6,DBD6,&
    QDOG7,QDOG7,DBD7,&
    QDOG8,QDOG8,DBD8,&
    ROBRB2,BRB2a,clBRB2,BRB2b)

  DLBP : LINE=(&
    SEQ04BEG,&
    BEGDOG,&
    BRB1a,clBRB1,BRB1b,ROBRB1,DBD0a,YCDOG0,DBD0b,&
    QDOG1,BPMDOG1,QDOG1,DBD1a,XCDOG1,DBD1b,&
    QDOG2,BPMDOG2,QDOG2,DBD2a,YCDOG2,DBD2b,RFBDOG3,DBD2c,CEDOG,DBD2d,&
    QDOG3,QDOG3,DBD3a,XCDOG3,DBD3b,&
    QDOG4,BPMDOG4,QDOG4,DBD4a,YCDOG4,DBD4b,&
    QDOG5,BPMDOG5,QDOG5,DBD5a,XCDOG5,DBD5b,&
    QDOG6,BPMDOG6,QDOG6,DBD6a,YCDOG6,DBD6b,RFBDOG7,DBD6c,WSDOG,DBD6d,&
    QDOG7,QDOG7,DBD7a,XCDOG7,DBD7b,&
    QDOG8,BPMDOG8,QDOG8,DBD8a,YCDOG8,DBD8b,ROBRB2,&
    BRB2a,clBRB2,BRB2b,CNTDOG)

  MTCH1 : LINE=(&
    DL0Pa,OTR31,DL0Pb,XCL1P,DL0Pc,&
    QL1P,BPML1P,QL1P,DL1Pa,YCL1P,DL1Pb,XCL2P,DL1Pc,&
    QL2P,BPML2P,QL2P,DL2Pa,YCL2P,DL2Pb,XCL3P,DL2Pc,&
    QL3P,BPML3P,QL3P,DL3Pa,YCL3P,DL3Pb,&
    QL4P,QL4P,DL4Pa,BPML4P,DL4Pb,XCL4P,DL4Pc,YCL4P,DL4Pd,DBP,&
    ENDDOG,&
    SEQ04END,&
    SEQ05BEG,&
    BEGBYP,&
    QBPF,MQBP13)

  DLBM : LINE=(DLBP,MTCH1)

  Bfodo : LINE=(QBPF,DBP,DBP,QBPD,QBPD,DBP,DBP,QBPF)

! ------------------------------------------------------------------------------

  RETURN
