1 | function outStructElecBeam = idMeasElecBeam(inStructElecBeam, inclPerturbMeas, fileNameCore) |
---|
2 | |
---|
3 | % Pause duration between eventual measurements of the dispersion functions and |
---|
4 | % chromatisities: |
---|
5 | pauseTime_s = 5; |
---|
6 | |
---|
7 | % H orbit |
---|
8 | inStructElecBeam.X = getx; |
---|
9 | % V orbit |
---|
10 | inStructElecBeam.Z = getz; |
---|
11 | % Stored electron beam current |
---|
12 | inStructElecBeam.current = getdcct; |
---|
13 | % Tunes |
---|
14 | inStructElecBeam.tune = gettune; |
---|
15 | |
---|
16 | if inclPerturbMeas ~= 0 |
---|
17 | % Measure dispersion functions. ATTENTION, it perturbes e-beam ! |
---|
18 | [dx dz] = measdisp('Physics'); |
---|
19 | inStructElecBeam.dx = dx; |
---|
20 | inStructElecBeam.dz = dz; |
---|
21 | inStructElecBeam, |
---|
22 | pause(pauseTime_s); |
---|
23 | |
---|
24 | % Measure chromaticities. ATTENTION, it perturbes e-beam ! |
---|
25 | inStructElecBeam.ksi = measchro('Physics'); |
---|
26 | end |
---|
27 | |
---|
28 | inStructElecBeam.date = datestr(now); % convert date to string |
---|
29 | |
---|
30 | outStructElecBeam = inStructElecBeam; |
---|
31 | |
---|
32 | % Save the structure into a file, if necessary |
---|
33 | %if saveRes ~= 0 |
---|
34 | if strcmp(fileNameCore, '') == 0 |
---|
35 | %idSaveStruct(structNameToSave, fileNameCore, idName) |
---|
36 | %idSaveStruct(structNameToSave, 'HU80_TEMPO', 'HU80') |
---|
37 | |
---|
38 | FileName = appendtimestamp(fileNameCore); |
---|
39 | DirectoryName = getfamilydata('Directory','HU640/SESSION_01_10_06'); |
---|
40 | DirStart = pwd; |
---|
41 | [DirectoryName, ErrorFlag] = gotodirectory(DirectoryName); |
---|
42 | save(FileName,'-struct', 'outStructElecBeam'); |
---|
43 | %save(FileName, inStructElecBeam); |
---|
44 | cd(DirStart); |
---|
45 | end |
---|
46 | |
---|
47 | %temp=tango_read_attribute2('ANS-C08/EI/M-HU80.2','gap'); |
---|
48 | %gap=temp.value(1)/1.e4; |
---|
49 | IPS1=0;IPS2=0;IPS3=0; |
---|
50 | |
---|
51 | %temp=tango_read_attribute2('TDL-I08-M/VI/JBA.1','pressure'); |
---|
52 | pres=temp.value(1); |
---|
53 | temp=tango_read_attribute2('ANS/DG/PUB-LifeTime','double_scalar'); |
---|
54 | tau=temp.value(1); |
---|
55 | fprintf('Courant PS1=%f\n','A %s\n') |
---|
56 | fprintf('Courant PS2=%f\n','A %s\n') |
---|
57 | fprintf('Courant PS3=%f\n','A %s\n') |
---|
58 | fprintf('I=%f\n',inStructElecBeam.current) |
---|
59 | fprintf('Tau=%f\n',tau) |
---|
60 | fprintf('P=%d\n',pres) |
---|
61 | fprintf('nux= %f\n',inStructElecBeam.tune(1)) |
---|
62 | fprintf('nuz= %f\n',inStructElecBeam.tune(2)) |
---|
63 | fprintf('ksix= %f\n',inStructElecBeam.ksi(1)) |
---|
64 | fprintf('ksiz= %f\n',inStructElecBeam.ksi(2)) |
---|
65 | fprintf('Sauvegarde %s\n',FileName) |
---|
66 | |
---|
67 | |
---|
68 | % Encoder #1 |
---|
69 | %inElecBeamStruct.encoder2= readattribute([devM, '/encoder2Position']); |
---|