1 | %============================================================= |
---|
2 | function [varargout] = BPMInit_Orb(varargin) |
---|
3 | %============================================================= |
---|
4 | %Initialize electron BPM data |
---|
5 | %BPM=BPMInit_Orb(BPM); |
---|
6 | |
---|
7 | BPM=varargin{1}; |
---|
8 | |
---|
9 | %horizontal plane *** |
---|
10 | BPM(1).AOFamily='BPMx'; |
---|
11 | ntbpm=size(BPM(1).name,1); |
---|
12 | BPM(1).mode=0; %display to show name, toggle for BPM.ifit |
---|
13 | BPM(1).ref=zeros(ntbpm,1); %...BPM.ref,des,abs all set in reference read |
---|
14 | BPM(1).des=zeros(ntbpm,1); %...initialize array |
---|
15 | BPM(1).act=zeros(ntbpm,1); %...initialize array |
---|
16 | BPM(1).rffit=zeros(ntbpm,1); %...initialize dispersion component |
---|
17 | BPM(1).avail=(1:ntbpm)'; %...initialize all BPMs available |
---|
18 | BPM(1).ifit=(1:ntbpm)'; %...initialize all BPMs on for fitting |
---|
19 | BPM(1).fit=zeros(ntbpm,1); %...initialize fitted solution zero |
---|
20 | BPM(1).wt=ones(ntbpm,1); %...SVD fitting weights |
---|
21 | BPM(1).drf=0; %...no dispersion component |
---|
22 | BPM(1).id=1; %...initialize BPM selection |
---|
23 | BPM(1).ATindex=family2atindex(BPM(1).AOFamily); %load AT indices |
---|
24 | |
---|
25 | |
---|
26 | %vertical |
---|
27 | BPM(2).AOFamily='BPMy'; |
---|
28 | ntbpm=size(BPM(2).name,1); |
---|
29 | BPM(2).mode=0; %display to show name, toggle for BPM.ifit |
---|
30 | BPM(2).ref=zeros(ntbpm,1); %...BPM.ref,des,abs all set in reference read |
---|
31 | BPM(2).des=zeros(ntbpm,1); %...initialize array |
---|
32 | BPM(2).act=zeros(ntbpm,1); %...initialize array |
---|
33 | BPM(2).rffit=zeros(ntbpm,1); %...initialize dispersion component |
---|
34 | BPM(2).avail=(1:ntbpm)'; %...initialize all BPMs available |
---|
35 | BPM(2).ifit=(1:ntbpm)'; %...initialize all BPMs on for fitting |
---|
36 | BPM(2).fit=zeros(ntbpm,1); %...initialize fitted solution zero |
---|
37 | BPM(2).wt =ones(ntbpm,1); %...SVD fitting weights |
---|
38 | BPM(2).drf=0; %...no dispersion component |
---|
39 | BPM(2).id=1; %...initialize BPM selection |
---|
40 | BPM(2).ATindex=family2atindex(BPM(2).AOFamily); %load AT indices |
---|
41 | |
---|
42 | varargout{1}=BPM; |
---|
43 | |
---|
44 | |
---|