source: MML/trunk/mml/at/getharmonicnumber.m @ 4

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

Initial import--MML version from SOLEIL@2013

File size: 2.8 KB
Line 
1function HarmNumber = getharmonicnumber
2%GETHARMONICNUMBER - Returns the harmonic number from the AT model
3%  HarmonicNumber = getharmonicnumber
4%
5%  If there is not a cavity in the model, getharmonicnumber returns
6%  HarmonicNumber = getfamilydata('HarmonicNumber');
7%
8%  Written by Greg Portmann
9
10
11[CavityState, PassMethod, ATCavityIndex, RF, HarmNumber] = getcavity;
12
13if isempty(HarmNumber)
14    HarmNumber = getfamilydata('HarmonicNumber');
15
16    if isempty(HarmNumber)
17        % Machine   Energy   HarmonicNumber  RF Freq [MHz]
18        % ALS        1.9        328          499.6403489
19        % ALBA       3.0        448          499.65
20        % ASP        3.0        360          499.666694585
21        % CAMD       3.0         92          499.6541
22        % CLS        3.0        285          500.004977352
23        % Diamond    3.0        936          499.6540967
24        % DSR        0.274       64          178.55
25        % NSRRC      1.5        200          499.65
26        % PLS        2.5        468          500.0008
27        % Spear3     3.0        372          476.300005749
28        % Soleil     2.7391     416          352.2
29        % SPS        1.2         32          118.0006
30        % SSRF       3.5        720          499.650966666
31        % VUV        0.808        9           52.88
32        % X-Ray      2.8         30           52.88
33
34        if isempty(HarmNumber)
35            MachineName = getfamilydata('Machine');
36            if strcmpi(MachineName, 'ALS')
37                HarmNumber = 328;
38           elseif strcmpi(MachineName, 'ALBA')
39                HarmNumber = 448;
40            elseif strcmpi(MachineName, 'ASP')
41                HarmNumber = 360;
42            elseif strcmpi(MachineName, 'CAMD')
43                HarmNumber = 92;
44            elseif strcmpi(MachineName, 'CLS')
45                HarmNumber = 285;
46            elseif strcmpi(MachineName, 'Diamond')
47                HarmNumber = 936;
48            elseif strcmpi(MachineName, 'DSR')
49                HarmNumber = 72;
50            elseif strcmpi(MachineName, 'NSRRC')
51                HarmNumber = 200;
52            elseif strcmpi(MachineName, 'PLS')
53                HarmNumber = 468;
54            elseif strcmpi(MachineName, 'Spear3')
55                HarmNumber = 372;
56            elseif strcmpi(MachineName, 'Soleil')
57                HarmNumber = 416;
58            elseif strcmpi(MachineName, 'SPS')
59                HarmNumber = 32;
60            elseif strcmpi(MachineName, 'SSRF')
61                HarmNumber = 720;
62            elseif strcmpi(MachineName, 'VUV')
63                HarmNumber = 9;
64            elseif strcmpi(MachineName, 'XRAY')
65                HarmNumber = 30;
66            else
67                error('Harmonic number unknown.  Either add an RF cavity to the AT model or add AD.HarmonicNumber to the Middle Layer.');
68            end
69        end
70    end
71end
72
Note: See TracBrowser for help on using the repository browser.