source: MML/trunk/machine/SOLEIL/StorageRing/bpm/analyse_reconst.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: 9.1 KB
Line 
1function analyse_reconst
2
3load('BPMData_30tours.mat');
4
5% to be set in startup file
6set(0,'DefaultAxesColorOrder',(colordg(1:15)));
7
8%%
9Sum  = AM.Data.Va + AM.Data.Vd + AM.Data.Va + AM.Data.Vd;
10Quad  = (AM.Data.Va + AM.Data.Vc - AM.Data.Vb - AM.Data.Vd)./Sum;
11Kx = 11.4; Kz = 11.4;
12XPos = Kx*(AM.Data.Va - AM.Data.Vb + AM.Data.Vd - AM.Data.Vc)./Sum;
13ZPos = Kz*(AM.Data.Va + AM.Data.Vb - AM.Data.Vc - AM.Data.Vd)./Sum;
14
15AM.DataR.Sum = Sum;
16AM.DataR.Q = Quad;
17AM.DataR.X = XPos;
18AM.DataR.Z = ZPos;
19
20% figure;
21% plot(repmat((1:8),3),'.-')
22% legend('1','2','3','4','5','6','7','8')
23 
24%% Superperiod 1
25figure
26
27isup = 4;
28ishift = 30;
29
30
31local_plot(isup,ishift)
32
33function local_plot(isup,ishift)
34
35bpmnum = (1:8)  + ishift;
36turnnum = 4:40;
37
38h1=subplot(2,2,1);
39plot(AM.DataR.Sum(bpmnum ,turnnum)','.-')
40ylabel('Sum (a.u.)')
41suptitle('Cell 1')
42
43h2=subplot(2,2,2);
44plot(AM.DataR.Q(bpmnum ,turnnum)','.-')
45ylabel('Quad (a.u.)')
46
47h3=subplot(2,2,3);
48plot(AM.DataR.X(bpmnum,turnnum)','.-')
49ylabel('X(mm)')
50xlabel('BPM number')
51
52h4=subplot(2,2,4);
53plot(AM.DataR.Z(bpmnum,turnnum)','.-')
54ylabel('Z(mm)')
55xlabel('BPM number')
56
57linkaxes([h1 h2 h3 h4],'x');
58set([h1 h2 h3 h4],'XGrid','On','YGrid','On');
59legendstr = eval(['{', sprintf('''BPM[%2d %d]'',',AM.DeviceList(bpmnum,:)'), '}']);
60legend1 = legend(...
61  legendstr,...
62  'LineWidth',1,...
63  'Position',[0.3202 0.4961 0.4257 0.02956],...
64  'Orientation','horizontal');
65
66figure
67
68h1=subplot(2,2,1);
69plot(AM.DataR.Sum(9:16,turnnum)','.-')
70grid on
71ylabel('Sum (a.u.)')
72suptitle('Cell 2')
73
74h2=subplot(2,2,2);
75plot(AM.DataR.Q(9:16 ,turnnum)','.-')
76grid on
77ylabel('Quad (a.u.)')
78
79h3=subplot(2,2,3);
80plot(AM.DataR.X(9:16,turnnum)','.-')
81grid on
82ylabel('X(mm)')
83xlabel('BPM number')
84
85h4=subplot(2,2,4);
86plot(AM.DataR.Z(9:16,turnnum)','.-')
87grid on
88ylabel('Z(mm)')
89xlabel('BPM number')
90
91linkaxes([h1 h2 h3 h4],'x');
92
93figure
94
95h1=subplot(2,2,1);
96plot(AM.DataR.Sum(17:24,turnnum)','.-')
97grid on
98ylabel('Sum (a.u.)')
99suptitle('Cell 3')
100
101h2=subplot(2,2,2);
102plot(AM.DataR.Q(17:24 ,turnnum)','.-')
103grid on
104ylabel('Quad (a.u.)')
105
106h3=subplot(2,2,3);
107plot(AM.DataR.X(17:24,turnnum)','.-')
108grid on
109ylabel('X(mm)')
110xlabel('BPM number')
111
112h4=subplot(2,2,4);
113plot(AM.DataR.Z(17:24,turnnum)','.-')
114grid on
115ylabel('Z(mm)')
116xlabel('BPM number')
117
118linkaxes([h1 h2 h3 h4],'x');
119
120figure
121
122h1=subplot(2,2,1);
123plot(AM.DataR.Sum(25:31,turnnum)','.-')
124grid on
125ylabel('Sum (a.u.)')
126suptitle('Cell 4')
127
128h2=subplot(2,2,2);
129plot(AM.DataR.Q(25:31 ,turnnum)','.-')
130grid on
131ylabel('Quad (a.u.)')
132
133h3=subplot(2,2,3);
134plot(AM.DataR.X(25:31,turnnum)','.-')
135grid on
136ylabel('X(mm)')
137xlabel('BPM number')
138
139h4=subplot(2,2,4);
140plot(AM.DataR.Z(25:31,turnnum)','.-')
141grid on
142ylabel('Z(mm)')
143xlabel('BPM number')
144
145linkaxes([h1 h2 h3 h4],'x');
146
147%% Superperiod 2
148isup = 4;
149ishift = 30;
150figure
151
152h1=subplot(2,2,1);
153plot(AM.DataR.Sum((1:8)+ishift ,turnnum)','.-')
154grid on
155ylabel('Sum (a.u.)')
156suptitle(sprintf('Cell %d',1+isup))
157
158h2=subplot(2,2,2);
159plot(AM.DataR.Q((1:8)+ishift ,turnnum)','.-')
160grid on
161ylabel('Quad (a.u.)')
162
163h3=subplot(2,2,3);
164plot(AM.DataR.X((1:8)+ishift,turnnum)','.-')
165grid on
166ylabel('X(mm)')
167xlabel('BPM number')
168
169h4=subplot(2,2,4);
170plot(AM.DataR.Z((1:8)+ishift,turnnum)','.-')
171grid on
172ylabel('Z(mm)')
173xlabel('BPM number')
174
175linkaxes([h1 h2 h3 h4],'x');
176
177figure
178
179h1=subplot(2,2,1);
180plot(AM.DataR.Sum((9:16)+ishift,turnnum)','.-')
181grid on
182ylabel('Sum (a.u.)')
183suptitle(sprintf('Cell %d',2+isup))
184
185h2=subplot(2,2,2);
186plot(AM.DataR.Q((9:16)+ishift,turnnum)','.-')
187grid on
188ylabel('Quad (a.u.)')
189
190h3=subplot(2,2,3);
191plot(AM.DataR.X((9:16)+ishift,turnnum)','.-')
192grid on
193ylabel('X(mm)')
194xlabel('BPM number')
195
196h4=subplot(2,2,4);
197plot(AM.DataR.Z((9:16)+ishift,turnnum)','.-')
198grid on
199ylabel('Z(mm)')
200xlabel('BPM number')
201
202linkaxes([h1 h2 h3 h4],'x');
203
204figure
205
206h1=subplot(2,2,1);
207plot(AM.DataR.Sum((17:24)+ishift,turnnum)','.-')
208grid on
209ylabel('Sum (a.u.)')
210suptitle(sprintf('Cell %d',3+isup))
211
212h2=subplot(2,2,2);
213plot(AM.DataR.Q((17:24)+ishift,turnnum)','.-')
214grid on
215ylabel('Quad (a.u.)')
216
217h3=subplot(2,2,3);
218plot(AM.DataR.X((17:24)+ishift,turnnum)','.-')
219grid on
220ylabel('X(mm)')
221xlabel('BPM number')
222
223h4=subplot(2,2,4);
224plot(AM.DataR.Z((17:24)+ishift,turnnum)','.-')
225grid on
226ylabel('Z(mm)')
227xlabel('BPM number')
228
229linkaxes([h1 h2 h3 h4],'x');
230
231figure
232
233h1=subplot(2,2,1);
234plot(AM.DataR.Sum((25:31)+ishift,turnnum)','.-')
235grid on
236ylabel('Sum (a.u.)')
237suptitle(sprintf('Cell %d',4+isup))
238
239h2=subplot(2,2,2);
240plot(AM.DataR.Q((25:31)+ishift,turnnum)','.-')
241grid on
242ylabel('Quad (a.u.)')
243
244h3=subplot(2,2,3);
245plot(AM.DataR.X((25:31)+ishift,turnnum)','.-')
246grid on
247ylabel('X(mm)')
248xlabel('BPM number')
249
250h4=subplot(2,2,4);
251plot(AM.DataR.Z((25:31)+ishift,turnnum)','.-')
252grid on
253ylabel('Z(mm)')
254xlabel('BPM number')
255
256linkaxes([h1 h2 h3 h4],'x');
257
258%% superperiod 3
259isup = 4*2;
260ishift = 30*2;
261figure
262
263h1=subplot(2,2,1);
264plot(AM.DataR.Sum((1:8)+ishift ,turnnum)','.-')
265grid on
266ylabel('Sum (a.u.)')
267suptitle(sprintf('Cell %d',1+isup))
268
269h2=subplot(2,2,2);
270plot(AM.DataR.Q((1:8)+ishift ,turnnum)','.-')
271grid on
272ylabel('Quad (a.u.)')
273
274h3=subplot(2,2,3);
275plot(AM.DataR.X((1:8)+ishift,turnnum)','.-')
276grid on
277ylabel('X(mm)')
278xlabel('BPM number')
279
280h4=subplot(2,2,4);
281plot(AM.DataR.Z((1:8)+ishift,turnnum)','.-')
282grid on
283ylabel('Z(mm)')
284xlabel('BPM number')
285
286linkaxes([h1 h2 h3 h4],'x');
287
288figure
289
290h1=subplot(2,2,1);
291plot(AM.DataR.Sum((9:16)+ishift,turnnum)','.-')
292grid on
293ylabel('Sum (a.u.)')
294suptitle(sprintf('Cell %d',2+isup))
295
296h2=subplot(2,2,2);
297plot(AM.DataR.Q((9:16)+ishift,turnnum)','.-')
298grid on
299ylabel('Quad (a.u.)')
300
301h3=subplot(2,2,3);
302plot(AM.DataR.X((9:16)+ishift,turnnum)','.-')
303grid on
304ylabel('X(mm)')
305xlabel('BPM number')
306
307h4=subplot(2,2,4);
308plot(AM.DataR.Z((9:16)+ishift,turnnum)','.-')
309grid on
310ylabel('Z(mm)')
311xlabel('BPM number')
312
313linkaxes([h1 h2 h3 h4],'x');
314
315figure
316
317h1=subplot(2,2,1);
318plot(AM.DataR.Sum((17:24)+ishift,turnnum)','.-')
319grid on
320ylabel('Sum (a.u.)')
321suptitle(sprintf('Cell %d',3+isup))
322
323h2=subplot(2,2,2);
324plot(AM.DataR.Q((17:24)+ishift,turnnum)','.-')
325grid on
326ylabel('Quad (a.u.)')
327
328h3=subplot(2,2,3);
329plot(AM.DataR.X((17:24)+ishift,turnnum)','.-')
330grid on
331ylabel('X(mm)')
332xlabel('BPM number')
333
334h4=subplot(2,2,4);
335plot(AM.DataR.Z((17:24)+ishift,turnnum)','.-')
336grid on
337ylabel('Z(mm)')
338xlabel('BPM number')
339
340linkaxes([h1 h2 h3 h4],'x');
341
342figure
343
344h1=subplot(2,2,1);
345plot(AM.DataR.Sum((25:31)+ishift,turnnum)','.-')
346grid on
347ylabel('Sum (a.u.)')
348suptitle(sprintf('Cell %d',4+isup))
349
350h2=subplot(2,2,2);
351plot(AM.DataR.Q((25:31)+ishift,turnnum)','.-')
352grid on
353ylabel('Quad (a.u.)')
354
355h3=subplot(2,2,3);
356plot(AM.DataR.X((25:31)+ishift,turnnum)','.-')
357grid on
358ylabel('X(mm)')
359xlabel('BPM number')
360
361h4=subplot(2,2,4);
362plot(AM.DataR.Z((25:31)+ishift,turnnum)','.-')
363grid on
364ylabel('Z(mm)')
365xlabel('BPM number')
366
367linkaxes([h1 h2 h3 h4],'x');
368
369
370%% Superperiod 4
371isup = 4*3;
372ishift = 30*3;
373figure
374
375h1=subplot(2,2,1);
376plot(AM.DataR.Sum((1:8)+ishift ,turnnum)','.-')
377grid on
378ylabel('Sum (a.u.)')
379suptitle(sprintf('Cell %d',1+isup))
380
381h2=subplot(2,2,2);
382plot(AM.DataR.Q((1:8)+ishift ,turnnum)','.-')
383grid on
384ylabel('Quad (a.u.)')
385
386h3=subplot(2,2,3);
387plot(AM.DataR.X((1:8)+ishift,turnnum)','.-')
388grid on
389ylabel('X(mm)')
390xlabel('BPM number')
391
392h4=subplot(2,2,4);
393plot(AM.DataR.Z((1:8)+ishift,turnnum)','.-')
394grid on
395ylabel('Z(mm)')
396xlabel('BPM number')
397
398linkaxes([h1 h2 h3 h4],'x');
399
400figure
401
402h1=subplot(2,2,1);
403plot(AM.DataR.Sum((9:16)+ishift,turnnum)','.-')
404grid on
405ylabel('Sum (a.u.)')
406suptitle(sprintf('Cell %d',2+isup))
407
408h2=subplot(2,2,2);
409plot(AM.DataR.Q((9:16)+ishift,turnnum)','.-')
410grid on
411ylabel('Quad (a.u.)')
412
413h3=subplot(2,2,3);
414plot(AM.DataR.X((9:16)+ishift,turnnum)','.-')
415grid on
416ylabel('X(mm)')
417xlabel('BPM number')
418
419h4=subplot(2,2,4);
420plot(AM.DataR.Z((9:16)+ishift,turnnum)','.-')
421grid on
422ylabel('Z(mm)')
423xlabel('BPM number')
424
425linkaxes([h1 h2 h3 h4],'x');
426
427figure
428
429h1=subplot(2,2,1);
430plot(AM.DataR.Sum((17:24)+ishift,turnnum)','.-')
431grid on
432ylabel('Sum (a.u.)')
433suptitle(sprintf('Cell %d',3+isup))
434
435h2=subplot(2,2,2);
436plot(AM.DataR.Q((17:24)+ishift,turnnum)','.-')
437grid on
438ylabel('Quad (a.u.)')
439
440h3=subplot(2,2,3);
441plot(AM.DataR.X((17:24)+ishift,turnnum)','.-')
442grid on
443ylabel('X(mm)')
444xlabel('BPM number')
445
446h4=subplot(2,2,4);
447plot(AM.DataR.Z((17:24)+ishift,turnnum)','.-')
448grid on
449ylabel('Z(mm)')
450xlabel('BPM number')
451
452linkaxes([h1 h2 h3 h4],'x');
453
454figure
455
456h1=subplot(2,2,1);
457plot(AM.DataR.Sum(114:end,turnnum)','.-')
458grid on
459ylabel('Sum (a.u.)')
460suptitle(sprintf('Cell %d',4+isup))
461
462h2=subplot(2,2,2);
463plot(AM.DataR.Q(114:end,turnnum)','.-')
464grid on
465ylabel('Quad (a.u.)')
466
467h3=subplot(2,2,3);
468plot(AM.DataR.X(114:end,turnnum)','.-')
469grid on
470ylabel('X(mm)')
471xlabel('BPM number')
472
473h4=subplot(2,2,4);
474plot(AM.DataR.Z(114:end,turnnum)','.-')
475grid on
476ylabel('Z(mm)')
477xlabel('BPM number')
478
479linkaxes([h1 h2 h3 h4],'x');
480
481%%
482
483
484figure
485
486h1=subplot(2,2,1);
487plot(AM.DataR.Va(114:end,turnnum)','.-')
488grid on
489ylabel('Va (a.u.)')
490suptitle(sprintf('Cell %d',4+isup))
491
492h2=subplot(2,2,2);
493plot(AM.DataR.Vb(114:end,turnnum)','.-')
494grid on
495ylabel('Vb (a.u.)')
496
497h3=subplot(2,2,3);
498plot(AM.DataR.Vc(114:end,turnnum)','.-')
499grid on
500ylabel('Vc (a.u.)')
501xlabel('BPM number')
502
503h4=subplot(2,2,4);
504plot(AM.DataR.Vd(114:end,turnnum)','.-')
505grid on
506ylabel('Vd (a.u.)')
507xlabel('BPM number')
508
509linkaxes([h1 h2 h3 h4],'x');
510
511
512%%
513etax = modeldisp('BPMx');
514
515%%
516ZFFT = fft(AM.DataR.Z(1,:));
517figure
518zlin = (1:length(ZFFT))/length(ZFFT);
519plot(zlin,abs(ZFFT))
520%%
521mesh(abs(fft(AM.DataR.Z(:,:))))
522
Note: See TracBrowser for help on using the repository browser.