examples: The first-turn horizontal trajectory of the APS ring is minimized with this command:
squishPVs xTrajCorr.sdds
where correction groups are defined in the file xTrajCorr.sdds. Part of the first correction group in the file
xTrajCorr.sdds is shown below:
SDDS1
&description
text = "Input file for first turn correction", &end
¶meter
name = "CorrectorPV", type = "string", &end
¶meter
name = "Gain", type = "double", &end
! LowerLimit and UpperLimit parameters are optional
¶meter
name = "LowerLimit", type = "double", &end
¶meter
name = "UpperLimit", type = "double", &end
&column
name = "BpmPV", type = "string", &end
! Offset PVs are optional
&column
name = "OffsetPV", type = "string", &end
! Fixed offsets are optional and default to 0
&column
name = "OffsetValue", type = "double" &end
! Weights are optional and default to 1
&column
name = "Weight", type = "double", &end
&data
mode = "ascii", &end
! table number 1
! CorrectorPV:
S1A:H1:CurrentAO
1.000000000000000e+00 ! Gain
-150 ! LowerLimit
150 ! UpperLimit
360 ! number of rows
S1A:P1:ms:x S1A:P1:ms:x:SetpointAO 0.1 1
S1A:P2:ms:x S1A:P2:ms:x:SetpointAO 0.2 2
S1A:P3:ms:x S1A:P3:ms:x:SetpointAO 0.3 1
S1A:P4:ms:x S1A:P4:ms:x:SetpointAO 0.4 1
S1B:P5:ms:x S1B:P5:ms:x:SetpointAO 0.5 2
S1B:P4:ms:x S1B:P4:ms:x:SetpointAO 0.4 1
...
synopsis:
usage: squishPVs <inputfile>
[-count=<pvName>,<lower>,<upper>,<number>]
[-averages=<number>,<seconds-between-readings>] [-stepSize=<value>]
[-subdivisions=<number>,<factor>]
[-upstep=count=<number>,factor=<value>]
[-repeat={number=<integer> | forever}[,pause=<seconds>]]
[-pendIOtime=<seconds>]
[-settlingTime=<seconds>] [-verbose]
[-criterion={mav|rms|min|max|average}] [-maximize]
[-threshold=<value>] [-actionLevel=<value>]
[-testValues=<file>,[limit=<number>]]
[-runControlPV={string=<string>|parameter=<string>},pingTimeout=<value>]
[-runControlDescription={string=<string>|parameter=<string>}]