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

set auto_path [linsert $auto_path 0  /usr/local/oag/apps/lib/$env(HOST_ARCH)]
set auto_path [linsert $auto_path 0 /usr/local/oag/lib_patch/$env(HOST_ARCH)]
APSStandardSetup

set usage {usage: computeBeats -reference <filename> -input <filename>}
set reference ""
set input ""
set args $argv
if {[APSStrictParseArguments {input reference}] || ![string length $input] || ![string length $reference]} {
    return -code error "$usage"
}
if ![file exists $input] {
    return -code error "not found: $input"
}
if ![file exists $reference] {
    return -code error "not found: $reference"
}

exec sddsxref $input $reference -pipe=out -take=betax,betay,etax,s \
    -match=ElementName -edit=column,*,ei/0/ -nowarning  -reuse=page \
  | sddsprocess -pipe \
  "-define=column,deltas,s s0 -,units=m" \
  -filter=col,deltas,0,0 \
  "-define=column,deltaBetax,betax betax0 - betax0 / 100 *,units=%" \
  "-define=column,deltaBetay,betay betay0 - betay0 / 100 *,units=%" \
  -process=etax,largest,%sLargest \
  "-define=column,deltaEtax,etax etax0 - etaxLargest / 100 *,units=%" \
  | sddsprocess -pipe=in $input.beat \
    -process=delta*ta*,spread,%sSpread \
    -process=delta*ta*,stand,%sStDev \
    "-print=parameter,betaxLabel,%.2f%% pk-to-pk    %.2f%% rms,deltaBetaxSpread,deltaBetaxStDev" \
    "-print=parameter,etaxLabel,%.2f%% pk-to-pk    %.2f%% rms,deltaEtaxSpread,deltaEtaxStDev" \
    "-print=parameter,betayLabel,%.2f%% pk-to-pk    %.2f%% rms,deltaBetaySpread,deltaBetayStDev" \

exec sddsplot -layout=1,3 -split=page -groupby=page,names -separate=names $input.beat \
    -column=s,deltaBetax -title=@betaxLabel \
    -column=s,deltaBetay -title=@betayLabel \
    -column=s,deltaEtax -title=@etaxLabel  &
