- Online - r/w data from control system
- Simulator - r/w data from AT model
- Model - same as simulator (?)
- Manual - read data from user input (matlab prompts user for input)
- Special - when special functions, follows their format
- get = read
- set = write
- step = write incrementally
- pv (Process Variable): control system variable
- am (Analog Monitor): device read channel value
- sp (SetPoint): device write channel value
- anal... analize dataset
- calc... calculate or converts
- get... read from (analog) monitor
- meas... measures
- mon... monitor a group of channels
- ramp... ramp variables (magnets)
- set... absolute change in setpoint value
- step... incremented change in setpoint value
- Basic MML
- Database access
- Conversion
- Data retrieval
- Shortcut (aliases)
- Special
- Machine physics
- General
- Response matrix
- ID Compensation
- System Checkings
- Simulator Functions
- Miscellaneous
- getfamilydata returns the parameters of a family
- getphysdata returns physical data
- getdata enables to load data from a file
AO = Accelerator Object, despite the name is a struct variable, initialized in aoinit.m , must contain all of the families in the lattice and relative parameters
AO = getao;
AD = Accelerator Data, also a struct variable, initialized in setoperationalmode.m
AD = getad
% thisFam =
% AO.(thisFam).FamilyName = '';
% AO.(thisFam).MemberOf = {'PlotFamily'; ''; };
% AO.(thisFam).CommonNames = 'commonname';
% AO.(thisFam).Status = 1/0;
% AO.(thisFam).ElemList = n;
% AO.(thisFam).Position = 'position along the ring in m'
% AO.(thisFam).AT = optional structure for the AT simulator
% AO.(thisFam).Monitor.ChannelNames = '';
% AO.(thisFam).Monitor.DataType = 'Scalar'/'Vector';
% AO.(thisFam).Monitor.DataTypeIndex = only if vector;
% AO.(thisFam).Monitor.Mode = Mode;
% AO.(thisFam).Monitor.Units = 'Hardware'/'Physics';
% AO.(thisFam).Monitor.HWUnits = 'mm';
% AO.(thisFam).Monitor.PhysicsUnits = 'm';
% AO.(thisFam).Monitor.HW2PhysicsFcn = @;
% AO.(thisFam).Monitor.HW2PhysicsParams = 1e-3;
% AO.(thisFam).Monitor.SpecialFunctionGet
% AO.(thisFam).Monitor.Golden
% AO.(thisFam).Monitor.Offset
% AO.(thisFam).Monitor.Gain
% AO.(thisFam).Setpoint.ChannelNames = whatever;
% AO.(thisFam).Setpoint.DataType = 'Scalar'/'Vector';
% AO.(thisFam).Setpoint.DataTypeIndex = only if vector;
% AO.(thisFam).Setpoint.Mode = Mode;
% AO.(thisFam).Setpoint.Units = 'Hardware'/'Physics';
% AO.(thisFam).Setpoint.Physics2HWFcn = 'functionname';
% AO.(thisFam).Setpoint.Physics2HWParameters = whatever;
% AO.(thisFam).Setpoint.HWUnits = 'mm';
% AO.(thisFam).Setpoint.PhysicsUnits = 'm';
% AO.(thisFam).Setpoint.Range = [min max] in 2 columns in hardware units
% AO.(thisFam).Setpoint.SpecialFunctionSet
% AO.(thisFam).Setpoint.DeltaRespMat
% AO.(thisFam).Setpoint.RampRateFcn
% AO.(thisFam).Setpoint.RampRate
% AO.(thisFam).Setpoint.RunFlagFcn
% AO.(thisFam).Setpoint.Tolerance
% AO.(thisFam).Setpoint.Offset
% AO.(thisFam).Setpoint.Gain
AD.Machine = machine name e.g. 'ELINPGBS';
AD.Directory.DataRoot = root of the directories containing machine files;
AD.OpsData.RespFiles = where resp matrices are stored;
AD.ATModel = nome della maglia AT (?)
AD.BPMDelay = delay between 2 consecutive BPM measurements
Data:
Data Vector:
FamilyName:
Field:
DeviceList:
Mode:
Status:
t:
tout:
TimeStamp:
DataTime:
GeV:
Units:
UnitsString:
DataDescriptor:
CreatedBy:
Experimental files path retrieval command: DataRoot = getfamily('Directory','DataRoot')
Operational files path retrieval command: OpsRoot = getfamily('Directory','OpsRoot')
- aoinit
- setoperationalmode
- srinit
- srcycle
- getbpmaverages
- bend2gev/gev2bend
- setorbitdefault
- buildlocoinput/setlocogains
- setquad/getquad/quadplotall/quadcenterall
- updateatindex
8 data files:
- Machine save: getmachineconfig GoldenConfig_User
- Injection save: getmachineconfig InjectionConfig_User
- BPM Sigma: monbpm GoldenBPMSigma_User
- Dispersion Function: measdisp GoldenDisp_User
- Corrector-to-BPM response matrix: measbpmresp GoldenBPMResp_User
- Quad-to-TUNE response matrix: meastuneresp GoldenChroResp_User
- Sext-to-Chromaticity response matrix: measchroresp GoldenChroResp_User
- Corrector-to-Dispersion response matrix: measdispresp GoldenDispResp_User
Mode setup variables (mostly path and file names)
- AD.OperationalMode - String used in titles
- MachineName - string used to build directory structure off DataRoot
- ModeName - string used for mode directory name off DataRoot/MachineName
- OpsFileExtension - string add to default file names
* MACHINENAME
* Common/Applications
* Configurations/Lattices
* ...
* <MainMachineType>
* <MainMachineType>OpsData
* <NthSubmachineName>
* <NthSubmachineName>OpsData
* ...
Setup files for each machine go into: MACHINENAME/<MainMachineType/NthSubmachineName>