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

set TIME_start [clock seconds]





catch {cd allParticleTracking} log_cd_allParticleTracking
## The default value of tracking turn in mpi.sh is 200.
#exec qsub mpi.sh
#set done 0
#while {$done < 1} {
#       set done [file exists AllParticleTrack.done]
#       after 60000
#}
exec sddssort AllParticleTrack.lost -pipe=out \
     -col=Pass \
     | sddsprocess -pipe=in temp.sdds \
     -process=particleID,first,ID \
     -process=Pass,first,pass \
     -process=s,first,s_lost
set particleID [exec sdds2stream temp.sdds -par=ID]
set passes [exec sdds2stream temp.sdds -par=pass]
set s_lost [exec sdds2stream temp.sdds -par=s_lost]
set particleID [expr int($particleID)]
set passes [expr int($passes)]
puts "lost particle ID = $particleID, passes=$passes, s_lost=$s_lost"
set passes [expr int($passes) + 2]
catch {cd ../combine} log_cd_combine
#for {set i 0} {$i<$passes} {incr i} {
#     catch {exec tclsh run_combine $particleID $i} log_combine
#}
catch {cd ../singleParticleTracking} log_cd_singleParticleTracking
#catch {exec tclsh run_initial_single $particleID} log_initial_sigle
#catch {exec tclsh run_track_single $particleID $passes} log_track_sigle
#for {set i 0} {$i<$passes} {incr i} {
#     catch {exec tclsh run_breakByTurn $particleID $i} log_breakByTurn
#}
exec sddscollapse ${particleID}.traj -pipe=out \
     | sddsprocess -pipe=in temp.sdds \
     -process=Turn,last,turn
set turn [exec sdds2stream temp.sdds -par=turn]
set turn [expr int($turn)]
catch {cd ../plot} log_cd_plot
set passes [expr int($passes) - 2]
catch {exec tclsh run_plot $particleID $passes $turn} log_plot





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