#!/bin/sh
# \
exec tclsh "$0" "$@"

set TIME_start [clock seconds]





set particleID 71
set passes 21
set elename SingleParticleTrack
set latticename 20200630_myring.lte
set inputBeamData ${particleID}InitialBunch.sdds

exec elegant $elename.ele -macro=rootname=${particleID}$elename -macro=latticename=$latticename -macro=inputBeamData=$inputBeamData -macro=random_seed=960 -macro=passes=$passes > ${particleID}$elename.log

set twifilename "../allParticleTracking/AllParticleTrack.twi"
set circumference [exec sddsprocess $twifilename -pipe=out -process=s,max,%sMax | sdds2stream -pipe -parameter=sMax]

exec sddsprocess ${particleID}${elename}.cen -pipe=out \
     -filter=column,Particles,1,1 \
    "-define=column,turn,s $circumference / int,type=double" \
     | sddsbreak -pipe \
     -change=turn \
     | sddsprocess -pipe=in ${particleID}.traj \
     -process=turn,first,Turn \
    "-redefine=column,s,s Turn $circumference * -" \
    "-redefine=column,Cx,Cx 1000.0 *,units=mm" \
    "-redefine=column,Cxp,Cxp 1000.0 *,units=mrad" \
    "-redefine=column,Cy,Cy 1000.0 *,units=mm" \
    "-redefine=column,Cyp,Cyp 1000.0 *,units=mrad" \
    "-redefine=column,Cdelta,Cdelta 100.0 *,units=%"


set resultname ${particleID}trajectory.result

exec sdds2plaindata ${particleID}.traj $resultname \
     -par=Turn \
     -col=s -col=Cx -col=Cxp -col=Cy -col=Cyp \
     -col=Cs -col=Cdelta -col=pCentral -col=Particles \
     -noRowCount "-separator= " -labeled





set TIME_end [clock seconds]
set ComputingTime [expr $TIME_end - $TIME_start]
puts stderr "Total computing time is $ComputingTime seconds"
