
! *** OPTICS=AD_ACCEL-23OCT20 ***

! SXR XTES

! ==============================================================================
! Modification History
! ------------------------------------------------------------------------------
! 22-JAN-2020, M. Woodley
!  * from: XTES_BG_SXR_1-13-2020.xlsx per P. Stephens
! ------------------------------------------------------------------------------
! 20-JUN-2018, M. Woodley
!  * PCPM3B: keyw=ECOL, L=LPCPMW, XSIZE=0.0127, YSIZE=0.0127
! ------------------------------------------------------------------------------
! 09-JAN-2018, M. Woodley
!  * from: 2017-11-21__REF__XTES_BG_SXR__mo37504999_update2017-12-19.xlsx
! ------------------------------------------------------------------------------

! ==============================================================================
! mirrors
! ------------------------------------------------------------------------------

! NOTE: change mirrors from MULT to INST for Matlab model generator creation!

  a1y := -0.03662
  a2y := -0.101767726243 !calculated with atan2
  a3y :=  0.016246118946 !fitted
  a4x :=  0.019693602
  a5x :=  0.019693602
  a6x := -0.024

  MR1K1_BEND    : MULT, TYPE="MIRROR",        K0L=a1y, T0
  SP1K1_MONO    : MULT, TYPE="MONOCHROMATOR", K0L=a2y, T0
  MR3K1_GRATING : MULT, TYPE="GRATING",       K0L=a3y, T0
  MR1K3_TXI     : MULT, TYPE="MIRROR",        K0L=a4x
  MR2K3_TXI     : MULT, TYPE="MIRROR",        K0L=a5x
  MR1K4_SOMS    : MULT, TYPE="MIRROR",        K0L=a6x

 !MR1K1_BEND    : INST, TYPE="MIRROR"
 !SP1K1_MONO    : INST, TYPE="MONOCHROMATOR"
 !MR3K1_GRATING : INST, TYPE="GRATING"
 !MR1K3_TXI     : INST, TYPE="MIRROR"
 !MR2K3_TXI     : INST, TYPE="MIRROR"
 !MR1K4_SOMS    : INST, TYPE="MIRROR"

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

! common line

  DSXTES01 : DRIF, L=0.472
  DSXTES02 : DRIF, L=1.5
  DSXTES03 : DRIF, L=2.903755-LPCPMW/2
  DSXTES04 : DRIF, L=0.4141213
  DSXTES05 : DRIF, L=0.0760569
  DSXTES06 : DRIF, L=0.253741
  DSXTES07 : DRIF, L=7.8123258
  DSXTES08 : DRIF, L=0.0762
  DSXTES09 : DRIF, L=1.549568
  DSXTES10 : DRIF, L=3.954232
  DSXTES11 : DRIF, L=2.34
  DSXTES12 : DRIF, L=3.1593754
  DSXTES13 : DRIF, L=1.10555
  DSXTES14 : DRIF, L=1.1211476
  DSXTES15 : DRIF, L=2.422663
  DSXTES16 : DRIF, L=0.1423749
  DSXTES17 : DRIF, L=0.1348125
  DSXTES18 : DRIF, L=0.4494214
  DSXTES19 : DRIF, L=0.6894122
  DSXTES20 : DRIF, L=0.125603
  DSXTES21 : DRIF, L=0.04953
  DSXTES22 : DRIF, L=0.2718348
  DSXTES23 : DRIF, L=0.3749014
  DSXTES24 : DRIF, L=0.078
  DSXTES25 : DRIF, L=0.2957019
  DSXTES26 : DRIF, L=0.477647
  DSXTES27 : DRIF, L=0.3994505
  DSXTES28 : DRIF, L=0.5545744

! "2.2" line

  a12y := a1y+a2y
  a13y := a1y+a2y+a3y

  DSXTES29 : DRIF, L=0.6897237/cos(a1y)
  DSXTES30 : DRIF, L=0.0289889/cos(a1y)
  DSXTES31 : DRIF, L=3.5372036/cos(a1y)
  DSXTES32 : DRIF, L=0.3344515/cos(a1y)
  DSXTES33 : DRIF, L=1.2596323/cos(a1y)
  DSXTES34 : DRIF, L=0.138444 /cos(a12y)
  DSXTES35 : DRIF, L=0.4793516/cos(a13y)
  DSXTES36 : DRIF, L=0.0411908/cos(a13y)

! TXI line

  a45x := a4x+a5x

  DSXTES37 : DRIF, L=1.65
  DSXTES38 : DRIF, L=1.6      /cos(a4x)
  DSXTES39 : DRIF, L=0.6779536/cos(a45x)
  DSXTES40 : DRIF, L=2.600075 /cos(a45x)
  DSXTES41 : DRIF, L=0.0359746/cos(a45x)
  DSXTES42 : DRIF, L=0.1611878/cos(a45x)
  DSXTES43 : DRIF, L=0.3068738/cos(a45x)
  DSXTES44 : DRIF, L=0.5221997/cos(a45x)
  DSXTES45 : DRIF, L=2.2088562/cos(a45x)
  DSXTES46 : DRIF, L=0.4648793/cos(a45x)
  DSXTES47 : DRIF, L=0.1269015/cos(a45x)
  DSXTES48 : DRIF, L=0.0526591/cos(a45x)
  DSXTES49 : DRIF, L=0.3978243/cos(a45x)
  DSXTES50 : DRIF, L=0.1301076/cos(a45x)
  DSXTES51 : DRIF, L=5.671144 /cos(a45x)
  DSXTES52 : DRIF, L=0.1243635/cos(a45x)
  DSXTES53 : DRIF, L=0.0563443/cos(a45x)
  DSXTES54 : DRIF, L=3.0113111/cos(a45x)
  DSXTES55 : DRIF, L=1.1359052/cos(a45x)
  DSXTES56 : DRIF, L=1.2134394/cos(a45x)
  DSXTES57 : DRIF, L=0.1269015/cos(a45x)
  DSXTES58 : DRIF, L=0.0526591/cos(a45x)

! TMO line

  DSXTES59 : DRIF, L=3.9302483
  DSXTES60 : DRIF, L=2.7940192
  DSXTES61 : DRIF, L=1.1646045
  DSXTES62 : DRIF, L=1.8680321
  DSXTES63 : DRIF, L=1.0192086
  DSXTES64 : DRIF, L=1.1718873
  DSXTES65 : DRIF, L=0.9814383/cos(a6x)
  DSXTES66 : DRIF, L=0.3792905/cos(a6x)
  DSXTES67 : DRIF, L=0.0623195/cos(a6x)
  DSXTES68 : DRIF, L=0.1385356/cos(a6x)
  DSXTES69 : DRIF, L=0.1347981/cos(a6x)
  DSXTES70 : DRIF, L=0.0831388/cos(a6x)
  DSXTES71 : DRIF, L=0.5004792/cos(a6x)
  DSXTES72 : DRIF, L=0.6694969/cos(a6x)
  DSXTES73 : DRIF, L=1.2027371/cos(a6x)
  DSXTES74 : DRIF, L=0.125603 /cos(a6x)
  DSXTES75 : DRIF, L=0.04953  /cos(a6x)
  DSXTES76 : DRIF, L=0.2996354/cos(a6x)
  DSXTES77 : DRIF, L=0.4126311/cos(a6x)
  DSXTES78 : DRIF, L=0.8949946/cos(a6x)
  DSXTES79 : DRIF, L=0.1883719/cos(a6x)
  DSXTES80 : DRIF, L=1.0320948/cos(a6x)
  DSXTES81 : DRIF, L=0.4015629/cos(a6x)
  DSXTES82 : DRIF, L=0.7313423/cos(a6x)
  DSXTES83 : DRIF, L=0.460887 /cos(a6x)
  DSXTES84 : DRIF, L=0.4046217/cos(a6x)
  DSXTES85 : DRIF, L=0.2274913/cos(a6x)
  DSXTES86 : DRIF, L=0.2199633/cos(a6x)
  DSXTES87 : DRIF, L=0.2770367/cos(a6x)
  DSXTES88 : DRIF, L=0.3308656/cos(a6x)
  DSXTES89 : DRIF, L=0.122407 /cos(a6x)
  DSXTES90 : DRIF, L=0.0526898/cos(a6x)
  DSXTES91 : DRIF, L=0.2560376/cos(a6x)
  DSXTES92 : DRIF, L=1.93     /cos(a6x)

! ==============================================================================
! instruments
! ------------------------------------------------------------------------------

! common line

  MBXPM1B          : INST, TYPE="MAGNET"
  PCPM3B_PIP_1     : INST, TYPE="ION PUMP"
  PCPM3B_GFS_1     : INST, TYPE="FAST VALVE SENSO"
  PCPM3B           : ECOL, TYPE="ELECTRON COLL", L=LPCPMW, &
                           XSIZE=0.0127, YSIZE=0.0127
  BTM3B            : INST, TYPE="BTM" !Burn-Through-Monitor behind PCPM3b
  SL1K0_POWER      : INST, TYPE="ADJ APER (AA1)"
  SL1K0_PWR_VRM_1  : INST, TYPE="RIGHT ANGLE VALV"
  SL1K0_PWR_GCC_1  : INST, TYPE="COLD CATHODE GAU"
  SL1K0_PWR_GPI_1  : INST, TYPE="PIRANI GAUGE"
  AT1K0_GAS_VGC_1  : INST, TYPE="GATE VALVE"
  MSFTDMPB         : INST, TYPE="SAFETY DUMP"
  MBTMSFTB         : INST, TYPE="BTM"
  AT1K0_GAS        : INST, TYPE="GAS ATTEN"
  TP_WALL1SE       : INST, TYPE="EAST WALL"
  TP_WALL1SW       : INST, TYPE="WEST WALL"
  EM2K0_XGMD_VGC_1 : INST, TYPE="GATE VALVE"
  EM2K0_XGMD       : INST, TYPE="GAS MONITOR DECT"
  EM2K0_XGMD_VGC_2 : INST, TYPE="GATE VALVE"
  TV2K0_VGC_1      : INST, TYPE="GATE VALVE"
  TV2K0_VRM_1      : INST, TYPE="RIGHT ANGLE VALV"
  TV2K0_GCC_1      : INST, TYPE="COLD CATHODE GAU"
  TV2K0_GPI_1      : INST, TYPE="PIRANI GAUGE"
  TV2K0_VRM_2      : INST, TYPE="RIGHT ANGLE VALV"
  TV2K0_GCC_2      : INST, TYPE="COLD CATHODE GAU"
  TV2K0_GPI_2      : INST, TYPE="PIRANI GAUGE"
  TV2K0_VFS_1      : INST, TYPE="VALVE FAST SHUTT"
  SP1K0            : INST, TYPE="@0,SPECTROMETER"
  PC2K0_XTES       : INST, TYPE="PHOTON COLL"
  BT1K0_XTES       : INST, TYPE="BTM"
  BS1K0_XTES       : INST, TYPE="BREMSS COLL"
  PF1K0_WFS        : INST, TYPE="WAVEFRONT SENSOR"
  SL2K0_POWER      : INST, TYPE="ADJ APER"
  PA1K0_RGA_1      : INST, TYPE="RGA"
  PA1K0_VRM_1      : INST, TYPE="RIGHT ANGLE VALV"
  PA1K0_GCC_1      : INST, TYPE="COLD CATHODE GAU"
  PA1K0_GPI_1      : INST, TYPE="PIRANI GAUGE"
  PA1K0_PIP_1      : INST, TYPE="ION PUMP 150 L/S"
  IM2K0_XTES       : INST, TYPE="IMAGER"
  PA1K0            : INST, TYPE="DIFF PUMP"
  MR1K1_VGC_1      : INST, TYPE="GATE VALVE"

! "2.2" line

  MR1K3_VGC_1      : INST, TYPE="GATE VALVE"
  ND1S             : INST, TYPE="NEUTRON DETECTOR"
  IM1K1_PPM        : INST, TYPE="PPM"
  SP1K1_MONO_VGC_1 : INST, TYPE="GATE VALVE"
  SP1K1_MONO_VGC_2 : INST, TYPE="GATE VALVE"
  TP_2_X           : INST, TYPE="TREATY FLANGE FA"

! TXI line

  MR2K3_TXI_GBC_1  : INST, TYPE="BCS VAC SENSOR"
  BT2K0_PLEG_TXI   : INST, TYPE="BTM"
  IM1K2_PPM_VGC_1  : INST, TYPE="GATE VALVE"
  TP_1_2SXR        : INST, TYPE="TREATY FLANGE FA"
  IM1K3_PPM_PGT_1  : INST, TYPE="GETTER PUMP"
  IM1K3_PPM        : INST, TYPE="PPM"
  BT1K3_AIR        : INST, TYPE="BTM"
  PC1K3_L2SI_VRM_1 : INST, TYPE="RIGHT ANGLE VALV"
  PC1K3_L2SI_GCC_1 : INST, TYPE="COLD CATHODE GAU"
  PC1K3_L2SI_PIP_1 : INST, TYPE="ION PUMP 150 L/S"
  PC1K3_L2SI       : INST, TYPE="PHOTON COLL"
  BT2K3_XTES       : INST, TYPE="BTM"
  BS1K3_XTES       : INST, TYPE="BREMSS COLL"
  PC1K3_L2SI_VRM_2 : INST, TYPE="RIGHT ANGLE VALV"
  PC1K3_L2SI_GBC_1 : INST, TYPE="BCS VAC SENSOR"
  PC1K3_L2SI_GCC_2 : INST, TYPE="COLD CATHODE GAU"
  PC1K3_L2SI_PIP_2 : INST, TYPE="ION PUMP 150 L/S"
  PC1K3_L2SI_VGC_1 : INST, TYPE="GATE VALVE"
  TV1K3_VRM_1      : INST, TYPE="RIGHT ANGLE VALV"
  TV1K3_GCC_1      : INST, TYPE="COLD CATHODE GAU"
  TV1K3_GPI_1      : INST, TYPE="PIRANI GAUGE"
  TV1K3_PIP_1      : INST, TYPE="ION PUMP 200 L/S"
  PC2K3_L2SI       : INST, TYPE="PHOTON COLL"
  BT3K3_L2SI       : INST, TYPE="BTM"
  TV1K3_VGC_1      : INST, TYPE="GATE VALVE"
  ST1K3_PPS        : INST, TYPE="STOPPER"
  ST1K3_PPS_GBC_1  : INST, TYPE="BCS VAC SENSOR"
  PC3K3_L2SI       : INST, TYPE="PHOTON COLL"
  BT4K3_XTES       : INST, TYPE="BTM"
  BS2K3_XTES       : INST, TYPE="BREMSS COLL"

! TMO line

  BT2K0_PLEG_TMO   : INST, TYPE="BTM"
  TV3K0_VGC_1      : INST, TYPE="GATE VALVE"
  TV3K0_PGT_1      : INST, TYPE="GETTER PUMP"
  TV3K0_VRM_1      : INST, TYPE="RIGHT ANGLE VALV"
  TV3K0_GCC_1      : INST, TYPE="COLD CATHODE GAU"
  TV3K0_GPI_1      : INST, TYPE="PIRANI GAUGE"
  TV3K0_PIP_1      : INST, TYPE="ION PUMP 150 L/S"
  MR1K4_VGC_1      : INST, TYPE="GATE VALVE"
  MR1K4_SOMS_GBC_1 : INST, TYPE="BCS VAC SENSOR"
  PC1K4_SSA        : INST, TYPE="SINGLE SLIT ABSO"
  BT1K4_L2SI       : INST, TYPE="BTM"
  TV1K4_VGC_1      : INST, TYPE="GATE VALVE"
  TV1K4_VFS_1      : INST, TYPE="FAST VALVE SHUTT"
  TV1K4_VRM_1      : INST, TYPE="RIGHT ANGLE VALV"
  TV1K4_GCC_1      : INST, TYPE="COLD CATHODE GAU"
  TV1K4_GPI_1      : INST, TYPE="PIRANI GAUGE"
  ND2S             : INST, TYPE="NEUTRON DETECTOR"
  AT1K4_SOLID      : INST, TYPE="@0,PULSE SELECT/"
  TV1K4_VGC_2      : INST, TYPE="GATE VALVE"
  PC2K4_XTES       : INST, TYPE="PHOTON COLL"
  BT2K4_XTES       : INST, TYPE="BTM"
  BS1K4_XTES       : INST, TYPE="BREMSS COLL"
  IM1K4_XTES       : INST, TYPE="IMAGER"
  ST1K4_TEST       : INST, TYPE="STOPPER"
  SP1K4            : INST, TYPE="@0,MONOCHROMATOR"
  LUSI             : INST, TYPE="LUSI"
  PC3K4_XTES       : INST, TYPE="PHOTON COLL"
  ST2K4_BCS        : INST, TYPE="STOPPER"
  ST3K4_PPS        : INST, TYPE="STOPPER"
  ST3K4_PPS_GBC_1  : INST, TYPE="BCS VAC SENSOR"
  ST3K4_PPS_VGC_1  : INST, TYPE="GATE VALVE"
  AL1K4_L2SI       : INST, TYPE="LASER"
  SL1K4_SCATTER    : INST, TYPE="SLIT"
  IM2K4_PPM        : INST, TYPE="PPM"
  IM2K4_XTES_VRM_1 : INST, TYPE="RIGHT ANGLE VALV"
  PC4K4_XTES_GCC_1 : INST, TYPE="COLD CATHODE GAU"
  PC4K4_XTES_GPI_1 : INST, TYPE="PIRANI GAUGE"
  PC4K4_XTES_PIP_1 : INST, TYPE="ION PUMP 80 L/S"
  PC4K4_XTES       : INST, TYPE="PHOTON COLL"
  BT3K4_XTES       : INST, TYPE="BTM"
  BS2K4_XTES       : INST, TYPE="BREMSS COLL"
  TP_WALL2E        : INST, TYPE="EAST WALL"
  TP_WALL2W        : INST, TYPE="WEST WALL"

! ==============================================================================
! BEAMLINE
! ------------------------------------------------------------------------------
  
! common line

  SXTES1 : LINE=(BEGSXTES_1,DSXTES01,&
    MBXPM1B,DSXTES02,&
    PCPM3B_PIP_1,PCPM3B_GFS_1,DSXTES03,&
    PCPM3B,BTM3B,DSXTES04,&
    SL1K0_POWER,DSXTES05,&
    SL1K0_PWR_VRM_1,SL1K0_PWR_GCC_1,SL1K0_PWR_GPI_1,DSXTES06,&
    AT1K0_GAS_VGC_1,DSXTES07,&
    MSFTDMPB,DSXTES08,&
    MBTMSFTB,DSXTES09,&
    AT1K0_GAS,DSXTES10,&
    TP_WALL1SE,DSXTES11,&
    TP_WALL1SW,DSXTES12,&
    EM2K0_XGMD_VGC_1,DSXTES13,&
    EM2K0_XGMD,DSXTES14,&
    EM2K0_XGMD_VGC_2,DSXTES15,&
    TV2K0_VGC_1,TV2K0_VRM_1,TV2K0_GCC_1,TV2K0_GPI_1,DSXTES16,&
    TV2K0_VRM_2,TV2K0_GCC_2,TV2K0_GPI_2,DSXTES17,&
    TV2K0_VFS_1,DSXTES18,&
    SP1K0,DSXTES19,&
    PC2K0_XTES,DSXTES20,&
    BT1K0_XTES,DSXTES21,&
    BS1K0_XTES,DSXTES22,&
    PF1K0_WFS,DSXTES23,&
    SL2K0_POWER,DSXTES24,&
    PA1K0_RGA_1,PA1K0_VRM_1,PA1K0_GCC_1,PA1K0_GPI_1,PA1K0_PIP_1,DSXTES25,&
    IM2K0_XTES,DSXTES26,&
    PA1K0,DSXTES27,&
    MR1K1_VGC_1,DSXTES28,&
    ENDSXTES_1)

! "2.2" line

  SXTES2 : LINE=(BEGSXTES_2,&
    MR1K1_BEND,DSXTES29,&
    MR1K3_VGC_1,DSXTES30,&
    ND1S,DSXTES31,&
    IM1K1_PPM,DSXTES32,&
    SP1K1_MONO_VGC_1,DSXTES33,&
    SP1K1_MONO,DSXTES34,&
    MR3K1_GRATING,DSXTES35,&
    SP1K1_MONO_VGC_2,DSXTES36,&
    TP_2_X,&
    ENDSXTES_2)

! TXI line

  SXTES3 : LINE=(BEGSXTES_3,DSXTES37,&
    MR1K3_TXI,DSXTES38,&
    MR2K3_TXI,MR2K3_TXI_GBC_1,DSXTES39,&
    BT2K0_PLEG_TXI,DSXTES40,&
    IM1K2_PPM_VGC_1,DSXTES41,&
    TP_1_2SXR,DSXTES42,&
    IM1K3_PPM_PGT_1,DSXTES43,&
    IM1K3_PPM,DSXTES44,&
    BT1K3_AIR,DSXTES45,&
    PC1K3_L2SI_VRM_1,PC1K3_L2SI_GCC_1,PC1K3_L2SI_PIP_1,DSXTES46,&
    PC1K3_L2SI,DSXTES47,&
    BT2K3_XTES,DSXTES48,&
    BS1K3_XTES,DSXTES49,&
    PC1K3_L2SI_VRM_2,PC1K3_L2SI_GBC_1,PC1K3_L2SI_GCC_2,PC1K3_L2SI_PIP_2,&
      DSXTES50,&
    PC1K3_L2SI_VGC_1,DSXTES51,&
    TV1K3_VRM_1,TV1K3_GCC_1,TV1K3_GPI_1,TV1K3_PIP_1,DSXTES52,&
    PC2K3_L2SI,DSXTES53,&
    BT3K3_L2SI,DSXTES54,&
    TV1K3_VGC_1,DSXTES55,&
    ST1K3_PPS,ST1K3_PPS_GBC_1,DSXTES56,&
    PC3K3_L2SI,DSXTES57,&
    BT4K3_XTES,DSXTES58,&
    BS2K3_XTES,&
    ENDSXTES_3)

! TMO line

  SXTES4 : LINE=(BEGSXTES_4,DSXTES59,&
    BT2K0_PLEG_TMO,DSXTES60,&
    TV3K0_VGC_1,DSXTES61,&
    TV3K0_PGT_1,DSXTES62,&
    TV3K0_VRM_1,TV3K0_GCC_1,TV3K0_GPI_1,TV3K0_PIP_1,DSXTES63,&
    MR1K4_VGC_1,DSXTES64,&
    MR1K4_SOMS,MR1K4_SOMS_GBC_1,DSXTES65,&
    PC1K4_SSA,DSXTES66,&
    BT1K4_L2SI,DSXTES67,&
    TV1K4_VGC_1,DSXTES68,&
    TV1K4_VFS_1,DSXTES69,&
    TV1K4_VRM_1,TV1K4_GCC_1,TV1K4_GPI_1,DSXTES70,&
    ND2S,DSXTES71,&
    AT1K4_SOLID,DSXTES72,&
    TV1K4_VGC_2,DSXTES73,&
    PC2K4_XTES,DSXTES74,&
    BT2K4_XTES,DSXTES75,&
    BS1K4_XTES,DSXTES76,&
    IM1K4_XTES,DSXTES77,&
    ST1K4_TEST,DSXTES78,&
    SP1K4,DSXTES79,&
    LUSI,DSXTES80,&
    PC3K4_XTES,DSXTES81,&
    ST2K4_BCS,DSXTES82,&
    ST3K4_PPS,ST3K4_PPS_GBC_1,DSXTES83,&
    ST3K4_PPS_VGC_1,DSXTES84,&
    AL1K4_L2SI,DSXTES85,&
    SL1K4_SCATTER,DSXTES86,&
    IM2K4_PPM,DSXTES87,&
    IM2K4_XTES_VRM_1,PC4K4_XTES_GCC_1,PC4K4_XTES_GPI_1,PC4K4_XTES_PIP_1,&
      DSXTES88,&
    PC4K4_XTES,DSXTES89,&
    BT3K4_XTES,DSXTES90,&
    BS2K4_XTES,DSXTES91,&
    TP_WALL2E,DSXTES92,&
    TP_WALL2W,&
    ENDSXTES_4)

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

  RETURN
