source: MML/trunk/machine/SOLEIL/StorageRing/insertions/IDStarter/idGetGeomParamForUndSOLEIL.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: 4.4 KB
Line 
1function outStruct = idGetGeomParamForUndSOLEIL(idName)
2
3outStruct.sectLenBwBPMs = 2.*3.14155; %[m] straight section length between BPMs
4outStruct.idCenPos = 1.333; %[m] center longitudinal position of the ID with respect to the straight section center
5outStruct.idLen = 1.8; %[m] ID length
6outStruct.idKickOfst = 0.2; %[m] offset from ID edge to effective position of a "kick"
7outStruct.indUpstrBPM = 54; %absolute index of BPM at the upstream edge of the straight section where the ID is located
8outStruct.indRelBPMs = [8 1;8 2]; %relative indexes of upstream and downstream BPMs of the straight section where the ID is located
9
10if strncmp(idName, 'U20', 3)
11    %To be checked by Chams and Pascale B.
12        outStruct.sectLenBwBPMs = 2.4; %[m] straight section length between BPMs
13        outStruct.idCenPos = 0; %[m] center longitudinal position of the ID with respect to the straight section center
14        outStruct.idLen = 2; %[m] ID length
15        outStruct.idKickOfst = 0.1; %[m] offset from ID edge to effective position of a "kick"
16
17    if strcmp(idName, 'U20_PROXIMA1')
18        outStruct.indUpstrBPM = 72; %to check ! absolute index of BPM at the upstream edge of the straight section where the ID is located
19        outStruct.indRelBPMs = [10 5;10 6];
20    elseif strcmp(idName, 'U20_SWING')
21        outStruct.indUpstrBPM = 80; %to check ! absolute index of BPM at the upstream edge of the straight section where the ID is located
22        outStruct.indRelBPMs = [11 5;11 6];
23    elseif strcmp(idName, 'U20_CRISTAL')
24        outStruct.indUpstrBPM = 42; %to check ! absolute index of BPM at the upstream edge of the straight section where the ID is located
25        outStruct.indRelBPMs = [6 5;6 6];       
26    end
27elseif strncmp(idName, 'HU80', 4)
28    outStruct.sectLenBwBPMs = 2.*3.14155; %[m] straight section length between BPMs
29    outStruct.idCenPos = 1.333; %[m] center longitudinal position of the ID with respect to the straight section center
30    outStruct.idLen = 1.8; %[m] ID length
31    outStruct.idKickOfst = 0.2; %[m] offset from ID edge to effective position of a "kick"
32
33    if strcmp(idName, 'HU80_TEMPO')
34        outStruct.indUpstrBPM = 54; %absolute index of BPM at the upstream edge of the straight section where the ID is located
35        outStruct.idCenPos = 1.333; %[m] center longitudinal position of the ID with respect to the straight section center
36        outStruct.indRelBPMs = [8 1;8 2];
37    elseif strcmp(idName, 'HU80_PLEIADES')
38        outStruct.indUpstrBPM = 24; %to check ! absolute index of BPM at the upstream edge of the straight section where the ID is located
39        outStruct.idCenPos = -1.8; %[m] center longitudinal position of the ID with respect to the straight section center
40        outStruct.indRelBPMs = [4 1;4 2];
41    elseif strcmp(idName, 'HU80_CASSIOPEE')
42        outStruct.indUpstrBPM = 106; %to check ! absolute index of BPM at the upstream edge of the straight section where the ID is located
43        outStruct.idCenPos = -1.8; %[m] center longitudinal position of the ID with respect to the straight section center
44        outStruct.indRelBPMs = [15 1;15 2];
45    end
46elseif strncmp(idName, 'HU256', 5)
47    outStruct.sectLenBwBPMs = 2.*3.14155; %[m] straight section length between BPMs
48    outStruct.idCenPos = 0.8945; %[m] center longitudinal position of the ID with respect to the straight section center
49    outStruct.idLen = 3.392; %[m] ID length
50        outStruct.idKickOfst = 0; %[m] offset from ID edge to effective position of a "kick"
51    if strcmp(idName, 'HU256_CASSIOPEE')
52        outStruct.indUpstrBPM = 106; %absolute index of BPM at the upstream edge of the straight section where the ID is located
53        outStruct.indRelBPMs = [15 1;15 2];
54    elseif strcmp(idName, 'HU256_PLEIADES')
55        outStruct.indUpstrBPM = 24;
56        outStruct.indRelBPMs = [4 1;4 2];
57    elseif strcmp(idName, 'HU256_ANTARES')
58        outStruct.indUpstrBPM = 84;
59        outStruct.indRelBPMs = [12 1;12 2];
60    end
61elseif strcmp(idName, 'HU640_DESIRS')
62    %To be checked by Olivier and Pascale B.
63        outStruct.sectLenBwBPMs = 11.318; %to check ! [m] straight section length between BPMs
64    outStruct.idCenPos = 0; %[m] center longitudinal position of the ID with respect to the straight section center
65    outStruct.idLen = 10.4; %to check ! [m] ID length
66    outStruct.idKickOfst = 0.32; %[m] offset from ID edge to effective position of a "kick"
67        outStruct.indUpstrBPM = 30; %absolute index of BPM at the upstream edge of the straight section where the ID is located
68        outStruct.indRelBPMs = [5 1;5 2];
69end
Note: See TracBrowser for help on using the repository browser.