source: MML/trunk/mml/setmmldirectories.m @ 4

Last change on this file since 4 was 4, checked in by zhangj, 10 years ago

Initial import--MML version from SOLEIL@2013

File size: 5.1 KB
Line 
1function MMLROOT = setmmldirectories(MachineName, SubMachineName, ModeName, OpsFileExtension,varargin)
2%SETMMLDIRECTORIES - Set the directory in the Matlab middle layer
3%  setmmldirectories(MachineName, SubMachineName, ModeName, OpsFileExtension)
4
5%
6%  Written by Greg Portmann
7%  Modifed by Laurent S. Nadolski
8%  DVPTFLAG added for work on hyperion
9
10%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11% Directories which define the data and opsdata tree %
12%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13
14OPSDIR = 'OpsData';
15if (nargin > 4 && strcmpi(varargin{1}, 'DVPT'))
16    OPSDIR = 'DvptData';
17end
18   
19AD = getad;
20
21% MML directories
22MMLROOT = getmmlroot;
23MMLDATAROOT = getmmldataroot;
24
25% DataRoot Location
26% Base on normal middle layer directory structure
27AD.Directory.DataRoot = fullfile(MMLDATAROOT, 'machine',  MachineName, SubMachineName, 'Data', ModeName, filesep);
28
29% Operational directory and physdata file
30AD.Directory.OpsData    = fullfile(MMLROOT, 'machine', MachineName, [SubMachineName, OPSDIR], ModeName, filesep);
31%AD.OpsData.PhysDataFile = [MMLROOT, 'machine', filesep, MachineName, filesep, SubMachineName, OPSDIR, filesep, 'physdata.mat'];
32AD.OpsData.PhysDataFile = fullfile(MMLROOT, 'machine', MachineName, [SubMachineName, OPSDIR], 'physdata.mat');
33
34% Setpoints files
35AD.Directory.ConfigData     = fullfile(MMLROOT, 'machine', MachineName, SubMachineName,'MachineConfig', filesep);
36
37%Data Archive Directories
38if ~strcmpi(SubMachineName, 'LT1') && ~strcmpi(SubMachineName, 'LT2')
39    AD.Directory.BPMData        = fullfile(AD.Directory.DataRoot, 'BPM', filesep);
40    AD.Directory.TuneData       = fullfile(AD.Directory.DataRoot, 'Tune', filesep);
41    AD.Directory.ChroData       = fullfile(AD.Directory.DataRoot, 'Chromaticity', filesep);
42    AD.Directory.DispData       = fullfile(AD.Directory.DataRoot, 'Dispersion', filesep);
43    %AD.Directory.QMS            = [AD.Directory.DataRoot, 'QMS',           filesep];
44
45    %Response Matrix Directories
46    AD.Directory.BPMResponse    = fullfile(AD.Directory.DataRoot, 'Response', 'BPM', filesep);
47    AD.Directory.TuneResponse   = fullfile(AD.Directory.DataRoot, 'Response', 'Tune', filesep);
48    AD.Directory.ChroResponse   = fullfile(AD.Directory.DataRoot, 'Response', 'Chromaticity', filesep);
49    AD.Directory.DispResponse   = fullfile(AD.Directory.DataRoot, 'Response', 'Dispersion', filesep);
50    AD.Directory.SkewResponse   = fullfile(AD.Directory.DataRoot, 'Response', 'Skew', filesep);
51
52    %Default Data File Prefix
53    AD.Default.BPMArchiveFile   = 'BPM';                % File in AD.Directory.BPM               orbit data
54    AD.Default.TuneArchiveFile  = 'Tune';               % File in AD.Directory.Tune              tune data
55    AD.Default.ChroArchiveFile  = 'Chro';               % File in AD.Directory.Chromaticity      chromaticity data
56    AD.Default.DispArchiveFile  = 'Disp';               % File in AD.Directory.Dispersion        dispersion data
57end
58
59AD.Default.CNFArchiveFile   = 'CNF';                % File in AD.Directory.CNF               configuration data
60
61if ~strcmpi(SubMachineName, 'LT1') && ~strcmpi(SubMachineName, 'LT2')
62    %Default Response Matrix File Prefix
63    AD.Default.BPMRespFile      = 'BPMRespMat';         % File in AD.Directory.BPMResponse       BPM response matrices
64    AD.Default.TuneRespFile     = 'TuneRespMat';        % File in AD.Directory.TuneResponse      tune response matrices
65    AD.Default.ChroRespFile     = 'ChroRespMat';        % File in AD.Directory.ChroResponse      chromaticity response matrices
66    AD.Default.DispRespFile     = 'DispRespMat';        % File in AD.Directory.DispResponse      dispersion response matrices
67    AD.Default.SkewRespFile     = 'SkewRespMat';        % File in AD.Directory.SkewResponse      skew quadrupole response matrices
68end
69
70%Operational Files
71AD.OpsData.LatticeFile   = ['GoldenLattice',    OpsFileExtension];
72
73if ~strcmpi(SubMachineName, 'LT1') && ~strcmpi(SubMachineName, 'LT2')
74    %Operational Files
75    AD.OpsData.InjectionFile = ['InjectionConfig', OpsFileExtension];
76    AD.OpsData.BPMSigmaFile  = ['GoldenBPMSigma',  OpsFileExtension];
77    AD.OpsData.DispFile      = ['GoldenDisp',      OpsFileExtension];
78    AD.OpsData.BPMGainAndCouplingFile = ['GoldenBPMGainCoupling', OpsFileExtension];
79
80    %Operational Response Files
81    AD.OpsData.BPMRespFile  = ['GoldenBPMResp',  OpsFileExtension];
82    AD.OpsData.BPMResp4FOFBFile  = ['GoldenBPM4FOFBResp',  OpsFileExtension];
83    AD.OpsData.TuneRespFile = ['GoldenTuneResp', OpsFileExtension];
84    AD.OpsData.ChroRespFile = ['GoldenChroResp', OpsFileExtension];
85    AD.OpsData.DispRespFile = ['GoldenDispResp', OpsFileExtension];
86    AD.OpsData.SkewRespFile = ['GoldenSkewResp', OpsFileExtension];
87    AD.OpsData.RespFiles     = {...
88        fullfile(AD.Directory.OpsData, AD.OpsData.BPMRespFile), ...
89        fullfile(AD.Directory.OpsData, AD.OpsData.BPMResp4FOFBFile), ...
90        fullfile(AD.Directory.OpsData, AD.OpsData.TuneRespFile), ...
91        fullfile(AD.Directory.OpsData, AD.OpsData.ChroRespFile), ...
92        fullfile(AD.Directory.OpsData, AD.OpsData.DispRespFile), ...
93        fullfile(AD.Directory.OpsData, AD.OpsData.SkewRespFile)};
94end
95% Save AD
96setad(AD);
Note: See TracBrowser for help on using the repository browser.