1\contentsline {section}{\numberline {1}libbpm}{1}
2\contentsline {subsection}{\numberline {1.1}Introduction}{1}
3\contentsline {subsection}{\numberline {1.2}Documentation structure}{1}
4\contentsline {subsection}{\numberline {1.3}Compilation}{2}
5\contentsline {subsubsection}{\numberline {1.3.1}Compilation under Linux/Unix/MacOS}{2}
6\contentsline {subsubsection}{\numberline {1.3.2}Note on Compilation under Windows}{2}
7\contentsline {subsection}{\numberline {1.4}Using libbpm in your programs}{2}
8\contentsline {section}{\numberline {2}GNU General Public License, v2}{3}
9\contentsline {section}{\numberline {3}Module Index}{7}
10\contentsline {subsection}{\numberline {3.1}Modules}{7}
11\contentsline {section}{\numberline {4}Data Structure Index}{7}
12\contentsline {subsection}{\numberline {4.1}Data Structures}{7}
13\contentsline {section}{\numberline {5}File Index}{8}
14\contentsline {subsection}{\numberline {5.1}File List}{8}
15\contentsline {section}{\numberline {6}Module Documentation}{12}
16\contentsline {subsection}{\numberline {6.1}Analysis routines}{12}
17\contentsline {subsubsection}{\numberline {6.1.1}Detailed Description}{12}
18\contentsline {subsubsection}{\numberline {6.1.2}Define Documentation}{13}
19\contentsline {paragraph}{\numberline {6.1.2.1}BPM\_\discretionary {-}{}{}GOOD\_\discretionary {-}{}{}EVENT}{13}
20\contentsline {paragraph}{\numberline {6.1.2.2}BPM\_\discretionary {-}{}{}BAD\_\discretionary {-}{}{}EVENT}{13}
21\contentsline {paragraph}{\numberline {6.1.2.3}ANA\_\discretionary {-}{}{}SVD\_\discretionary {-}{}{}TILT}{13}
22\contentsline {paragraph}{\numberline {6.1.2.4}ANA\_\discretionary {-}{}{}SVD\_\discretionary {-}{}{}NOTILT}{13}
23\contentsline {subsubsection}{\numberline {6.1.3}Function Documentation}{13}
24\contentsline {paragraph}{\numberline {6.1.3.1}ana\_\discretionary {-}{}{}set\_\discretionary {-}{}{}cutfn}{13}
25\contentsline {paragraph}{\numberline {6.1.3.2}ana\_\discretionary {-}{}{}get\_\discretionary {-}{}{}svd\_\discretionary {-}{}{}coeffs}{14}
26\contentsline {paragraph}{\numberline {6.1.3.3}ana\_\discretionary {-}{}{}compute\_\discretionary {-}{}{}residual}{14}
27\contentsline {paragraph}{\numberline {6.1.3.4}ana\_\discretionary {-}{}{}def\_\discretionary {-}{}{}cutfn}{15}
28\contentsline {subsubsection}{\numberline {6.1.4}Variable Documentation}{15}
29\contentsline {paragraph}{\numberline {6.1.4.1}ana\_\discretionary {-}{}{}cutfn}{15}
30\contentsline {subsection}{\numberline {6.2}Calibration routines}{15}
31\contentsline {subsubsection}{\numberline {6.2.1}Detailed Description}{15}
32\contentsline {subsubsection}{\numberline {6.2.2}Function Documentation}{15}
33\contentsline {paragraph}{\numberline {6.2.2.1}setup\_\discretionary {-}{}{}calibration}{15}
34\contentsline {paragraph}{\numberline {6.2.2.2}calibrate}{16}
35\contentsline {subsection}{\numberline {6.3}Beam orbit generation}{17}
36\contentsline {subsubsection}{\numberline {6.3.1}Detailed Description}{17}
37\contentsline {subsubsection}{\numberline {6.3.2}Function Documentation}{17}
38\contentsline {paragraph}{\numberline {6.3.2.1}get\_\discretionary {-}{}{}rbend}{17}
39\contentsline {paragraph}{\numberline {6.3.2.2}get\_\discretionary {-}{}{}sbend}{18}
40\contentsline {paragraph}{\numberline {6.3.2.3}get\_\discretionary {-}{}{}bpmhit}{18}
41\contentsline {paragraph}{\numberline {6.3.2.4}get\_\discretionary {-}{}{}bpmhits}{18}
42\contentsline {paragraph}{\numberline {6.3.2.5}v\_\discretionary {-}{}{}copy}{19}
43\contentsline {paragraph}{\numberline {6.3.2.6}v\_\discretionary {-}{}{}mag}{19}
44\contentsline {paragraph}{\numberline {6.3.2.7}v\_\discretionary {-}{}{}scale}{19}
45\contentsline {paragraph}{\numberline {6.3.2.8}v\_\discretionary {-}{}{}norm}{19}
46\contentsline {paragraph}{\numberline {6.3.2.9}v\_\discretionary {-}{}{}matmult}{19}
47\contentsline {paragraph}{\numberline {6.3.2.10}v\_\discretionary {-}{}{}add}{19}
48\contentsline {paragraph}{\numberline {6.3.2.11}v\_\discretionary {-}{}{}sub}{19}
49\contentsline {paragraph}{\numberline {6.3.2.12}v\_\discretionary {-}{}{}dot}{20}
50\contentsline {paragraph}{\numberline {6.3.2.13}v\_\discretionary {-}{}{}cross}{20}
51\contentsline {paragraph}{\numberline {6.3.2.14}v\_\discretionary {-}{}{}print}{20}
52\contentsline {paragraph}{\numberline {6.3.2.15}m\_\discretionary {-}{}{}rotmat}{20}
53\contentsline {paragraph}{\numberline {6.3.2.16}m\_\discretionary {-}{}{}matmult}{20}
54\contentsline {paragraph}{\numberline {6.3.2.17}m\_\discretionary {-}{}{}matadd}{20}
55\contentsline {paragraph}{\numberline {6.3.2.18}m\_\discretionary {-}{}{}print}{21}
56\contentsline {subsection}{\numberline {6.4}Front-end interface}{21}
57\contentsline {subsubsection}{\numberline {6.4.1}Detailed Description}{21}
58\contentsline {subsubsection}{\numberline {6.4.2}Typedef Documentation}{22}
59\contentsline {paragraph}{\numberline {6.4.2.1}bpmconf\_\discretionary {-}{}{}t}{22}
60\contentsline {paragraph}{\numberline {6.4.2.2}bpmcalib\_\discretionary {-}{}{}t}{22}
61\contentsline {paragraph}{\numberline {6.4.2.3}bpmproc\_\discretionary {-}{}{}t}{22}
62\contentsline {paragraph}{\numberline {6.4.2.4}beamconf\_\discretionary {-}{}{}t}{22}
63\contentsline {paragraph}{\numberline {6.4.2.5}bunchconf\_\discretionary {-}{}{}t}{22}
64\contentsline {subsubsection}{\numberline {6.4.3}Enumeration Type Documentation}{22}
65\contentsline {paragraph}{\numberline {6.4.3.1}bpmtype\_\discretionary {-}{}{}t}{22}
66\contentsline {paragraph}{\numberline {6.4.3.2}triggertype}{22}
67\contentsline {paragraph}{\numberline {6.4.3.3}bpmpol\_\discretionary {-}{}{}t}{23}
68\contentsline {paragraph}{\numberline {6.4.3.4}bpmphase\_\discretionary {-}{}{}t}{23}
69\contentsline {subsubsection}{\numberline {6.4.4}Variable Documentation}{23}
70\contentsline {paragraph}{\numberline {6.4.4.1}bpm\_\discretionary {-}{}{}verbose}{23}
71\contentsline {paragraph}{\numberline {6.4.4.2}libbpm\_\discretionary {-}{}{}evtnum}{23}
72\contentsline {subsection}{\numberline {6.5}Error/warning messages}{23}
73\contentsline {subsubsection}{\numberline {6.5.1}Detailed Description}{23}
74\contentsline {subsubsection}{\numberline {6.5.2}Function Documentation}{24}
75\contentsline {paragraph}{\numberline {6.5.2.1}bpm\_\discretionary {-}{}{}error}{24}
76\contentsline {paragraph}{\numberline {6.5.2.2}bpm\_\discretionary {-}{}{}warning}{24}
77\contentsline {subsection}{\numberline {6.6}Numerical routines}{25}
78\contentsline {subsubsection}{\numberline {6.6.1}Detailed Description}{25}
79\contentsline {subsubsection}{\numberline {6.6.2}Define Documentation}{29}
80\contentsline {paragraph}{\numberline {6.6.2.1}GCF\_\discretionary {-}{}{}ITMAX}{29}
81\contentsline {paragraph}{\numberline {6.6.2.2}\_\discretionary {-}{}{}\_\discretionary {-}{}{}LM\_\discretionary {-}{}{}BLOCKSZ\_\discretionary {-}{}{}\_\discretionary {-}{}{}}{29}
82\contentsline {paragraph}{\numberline {6.6.2.3}LM\_\discretionary {-}{}{}DER\_\discretionary {-}{}{}WORKSZ}{29}
83\contentsline {paragraph}{\numberline {6.6.2.4}LM\_\discretionary {-}{}{}DIF\_\discretionary {-}{}{}WORKSZ}{30}
84\contentsline {paragraph}{\numberline {6.6.2.5}NR\_\discretionary {-}{}{}FFTFORWARD}{30}
85\contentsline {paragraph}{\numberline {6.6.2.6}NR\_\discretionary {-}{}{}FFTBACKWARD}{30}
86\contentsline {paragraph}{\numberline {6.6.2.7}\_\discretionary {-}{}{}\_\discretionary {-}{}{}LM\_\discretionary {-}{}{}MEDIAN3}{30}
87\contentsline {subsubsection}{\numberline {6.6.3}Function Documentation}{30}
88\contentsline {paragraph}{\numberline {6.6.3.1}nr\_\discretionary {-}{}{}gammln}{30}
89\contentsline {paragraph}{\numberline {6.6.3.2}nr\_\discretionary {-}{}{}gammq}{30}
90\contentsline {paragraph}{\numberline {6.6.3.3}nr\_\discretionary {-}{}{}gcf}{31}
91\contentsline {paragraph}{\numberline {6.6.3.4}nr\_\discretionary {-}{}{}gser}{31}
92\contentsline {paragraph}{\numberline {6.6.3.5}nr\_\discretionary {-}{}{}fit}{31}
93\contentsline {paragraph}{\numberline {6.6.3.6}nr\_\discretionary {-}{}{}is\_\discretionary {-}{}{}pow2}{31}
94\contentsline {paragraph}{\numberline {6.6.3.7}nr\_\discretionary {-}{}{}four1}{32}
95\contentsline {paragraph}{\numberline {6.6.3.8}nr\_\discretionary {-}{}{}realft}{32}
96\contentsline {paragraph}{\numberline {6.6.3.9}nr\_\discretionary {-}{}{}ran1}{33}
97\contentsline {paragraph}{\numberline {6.6.3.10}nr\_\discretionary {-}{}{}seed}{33}
98\contentsline {paragraph}{\numberline {6.6.3.11}nr\_\discretionary {-}{}{}ranuniform}{33}
99\contentsline {paragraph}{\numberline {6.6.3.12}nr\_\discretionary {-}{}{}rangauss}{33}
100\contentsline {paragraph}{\numberline {6.6.3.13}nr\_\discretionary {-}{}{}median}{34}
101\contentsline {paragraph}{\numberline {6.6.3.14}nr\_\discretionary {-}{}{}select}{34}
102\contentsline {paragraph}{\numberline {6.6.3.15}gsl\_\discretionary {-}{}{}matrix\_\discretionary {-}{}{}column}{34}
103\contentsline {paragraph}{\numberline {6.6.3.16}gsl\_\discretionary {-}{}{}matrix\_\discretionary {-}{}{}submatrix}{35}
104\contentsline {paragraph}{\numberline {6.6.3.17}gsl\_\discretionary {-}{}{}matrix\_\discretionary {-}{}{}get}{35}
105\contentsline {paragraph}{\numberline {6.6.3.18}gsl\_\discretionary {-}{}{}matrix\_\discretionary {-}{}{}set}{35}
106\contentsline {paragraph}{\numberline {6.6.3.19}gsl\_\discretionary {-}{}{}matrix\_\discretionary {-}{}{}swap\_\discretionary {-}{}{}columns}{35}
107\contentsline {paragraph}{\numberline {6.6.3.20}gsl\_\discretionary {-}{}{}vector\_\discretionary {-}{}{}subvector}{36}
108\contentsline {paragraph}{\numberline {6.6.3.21}gsl\_\discretionary {-}{}{}vector\_\discretionary {-}{}{}get}{36}
109\contentsline {paragraph}{\numberline {6.6.3.22}gsl\_\discretionary {-}{}{}vector\_\discretionary {-}{}{}set}{36}
110\contentsline {paragraph}{\numberline {6.6.3.23}gsl\_\discretionary {-}{}{}linalg\_\discretionary {-}{}{}householder\_\discretionary {-}{}{}hm}{37}
111\contentsline {paragraph}{\numberline {6.6.3.24}gsl\_\discretionary {-}{}{}linalg\_\discretionary {-}{}{}householder\_\discretionary {-}{}{}hm1}{37}
112\contentsline {paragraph}{\numberline {6.6.3.25}gsl\_\discretionary {-}{}{}linalg\_\discretionary {-}{}{}householder\_\discretionary {-}{}{}transform}{37}
113\contentsline {paragraph}{\numberline {6.6.3.26}gsl\_\discretionary {-}{}{}linalg\_\discretionary {-}{}{}householder\_\discretionary {-}{}{}mh}{37}
114\contentsline {paragraph}{\numberline {6.6.3.27}gsl\_\discretionary {-}{}{}blas\_\discretionary {-}{}{}dnrm2}{37}
115\contentsline {paragraph}{\numberline {6.6.3.28}gsl\_\discretionary {-}{}{}block\_\discretionary {-}{}{}alloc}{38}
116\contentsline {paragraph}{\numberline {6.6.3.29}nr\_\discretionary {-}{}{}quadinterpol}{38}
117\contentsline {paragraph}{\numberline {6.6.3.30}sinc}{38}
118\contentsline {paragraph}{\numberline {6.6.3.31}lanczos}{38}
119\contentsline {paragraph}{\numberline {6.6.3.32}dround}{38}
120\contentsline {subsection}{\numberline {6.7}RF simulation routines}{39}
121\contentsline {subsubsection}{\numberline {6.7.1}Detailed Description}{39}
122\contentsline {subsubsection}{\numberline {6.7.2}Function Documentation}{39}
123\contentsline {paragraph}{\numberline {6.7.2.1}rf\_\discretionary {-}{}{}setup}{39}
124\contentsline {paragraph}{\numberline {6.7.2.2}rf\_\discretionary {-}{}{}rectify}{40}
125\contentsline {paragraph}{\numberline {6.7.2.3}rf\_\discretionary {-}{}{}addLO}{40}
126\contentsline {paragraph}{\numberline {6.7.2.4}rf\_\discretionary {-}{}{}mixer}{41}
127\contentsline {paragraph}{\numberline {6.7.2.5}rf\_\discretionary {-}{}{}amplify}{41}
128\contentsline {paragraph}{\numberline {6.7.2.6}rf\_\discretionary {-}{}{}amplify\_\discretionary {-}{}{}complex}{42}
129\contentsline {paragraph}{\numberline {6.7.2.7}rf\_\discretionary {-}{}{}phase\_\discretionary {-}{}{}shifter}{43}
130\contentsline {subsubsection}{\numberline {6.7.3}Variable Documentation}{43}
131\contentsline {paragraph}{\numberline {6.7.3.1}rf\_\discretionary {-}{}{}nsamples}{43}
132\contentsline {paragraph}{\numberline {6.7.3.2}rf\_\discretionary {-}{}{}samplefreq}{43}
133\contentsline {subsection}{\numberline {6.8}BPM signal simulation routines}{43}
134\contentsline {subsubsection}{\numberline {6.8.1}Detailed Description}{43}
135\contentsline {subsubsection}{\numberline {6.8.2}Define Documentation}{44}
136\contentsline {paragraph}{\numberline {6.8.2.1}K\_\discretionary {-}{}{}SAMPLE}{44}
137\contentsline {subsubsection}{\numberline {6.8.3}Function Documentation}{44}
138\contentsline {paragraph}{\numberline {6.8.3.1}set\_\discretionary {-}{}{}temp}{44}
139\contentsline {paragraph}{\numberline {6.8.3.2}set\_\discretionary {-}{}{}time}{45}
140\contentsline {paragraph}{\numberline {6.8.3.3}generate\_\discretionary {-}{}{}bpmsignal}{45}
141\contentsline {paragraph}{\numberline {6.8.3.4}add\_\discretionary {-}{}{}mode\_\discretionary {-}{}{}response}{45}
142\contentsline {paragraph}{\numberline {6.8.3.5}get\_\discretionary {-}{}{}mode\_\discretionary {-}{}{}amplitude}{46}
143\contentsline {paragraph}{\numberline {6.8.3.6}generate\_\discretionary {-}{}{}diodesignal}{46}
144\contentsline {paragraph}{\numberline {6.8.3.7}get\_\discretionary {-}{}{}mode\_\discretionary {-}{}{}response}{47}
145\contentsline {paragraph}{\numberline {6.8.3.8}digitise}{47}
146\contentsline {subsubsection}{\numberline {6.8.4}Variable Documentation}{48}
147\contentsline {paragraph}{\numberline {6.8.4.1}ambient\_\discretionary {-}{}{}temp}{48}
148\contentsline {paragraph}{\numberline {6.8.4.2}system\_\discretionary {-}{}{}time}{48}
149\contentsline {subsection}{\numberline {6.9}Digital Signal Processing Routines}{48}
150\contentsline {subsubsection}{\numberline {6.9.1}Detailed Description}{48}
151\contentsline {subsubsection}{\numberline {6.9.2}The digital filtering routines}{48}
152\contentsline {paragraph}{\numberline {6.9.2.1}General usage}{48}
153\contentsline {paragraph}{\numberline {6.9.2.2}The Bessel, Butterworth and Chebyshev filters}{49}
154\contentsline {paragraph}{\numberline {6.9.2.3}The Resonator filter}{49}
155\contentsline {paragraph}{\numberline {6.9.2.4}The gaussian filter}{49}
156\contentsline {subsubsection}{\numberline {6.9.3}The Digital Downconversion Algorithm (DDC)}{50}
157\contentsline {subsubsection}{\numberline {6.9.4}Discrete (Fast) Fourier Transforms}{50}
158\contentsline {paragraph}{\numberline {6.9.4.1}Complex Discrete Fourier Transform}{50}
159\contentsline {paragraph}{\numberline {6.9.4.2}Real Discrete Fourier Transform}{51}
160\contentsline {paragraph}{\numberline {6.9.4.3}Reference for FFT routines}{51}
161\contentsline {paragraph}{\numberline {6.9.4.4}Copyright statement for FFT routines}{51}
162\contentsline {subsubsection}{\numberline {6.9.5}DSP example program}{51}
163\contentsline {subsubsection}{\numberline {6.9.6}Define Documentation}{55}
164\contentsline {paragraph}{\numberline {6.9.6.1}BESSEL}{55}
165\contentsline {paragraph}{\numberline {6.9.6.2}BUTTERWORTH}{55}
166\contentsline {paragraph}{\numberline {6.9.6.3}CHEBYSHEV}{55}
167\contentsline {paragraph}{\numberline {6.9.6.4}RAISEDCOSINE}{55}
168\contentsline {paragraph}{\numberline {6.9.6.5}RESONATOR}{56}
169\contentsline {paragraph}{\numberline {6.9.6.6}GAUSSIAN}{56}
170\contentsline {paragraph}{\numberline {6.9.6.7}BILINEAR\_\discretionary {-}{}{}Z\_\discretionary {-}{}{}TRANSFORM}{56}
171\contentsline {paragraph}{\numberline {6.9.6.8}MATCHED\_\discretionary {-}{}{}Z\_\discretionary {-}{}{}TRANSFORM}{56}
172\contentsline {paragraph}{\numberline {6.9.6.9}NO\_\discretionary {-}{}{}PREWARP}{56}
173\contentsline {paragraph}{\numberline {6.9.6.10}CAUSAL}{56}
174\contentsline {paragraph}{\numberline {6.9.6.11}ANTICAUSAL}{56}
175\contentsline {paragraph}{\numberline {6.9.6.12}NONCAUSAL}{56}
176\contentsline {paragraph}{\numberline {6.9.6.13}GAUSSIAN\_\discretionary {-}{}{}SIGMA\_\discretionary {-}{}{}BW}{57}
177\contentsline {paragraph}{\numberline {6.9.6.14}LOWPASS}{57}
178\contentsline {paragraph}{\numberline {6.9.6.15}HIGHPASS}{57}
179\contentsline {paragraph}{\numberline {6.9.6.16}BANDPASS}{57}
180\contentsline {paragraph}{\numberline {6.9.6.17}BANDSTOP}{57}
181\contentsline {paragraph}{\numberline {6.9.6.18}NOTCH}{57}
182\contentsline {paragraph}{\numberline {6.9.6.19}ALLPASS}{57}
183\contentsline {paragraph}{\numberline {6.9.6.20}FIR}{57}
184\contentsline {paragraph}{\numberline {6.9.6.21}IIR}{58}
185\contentsline {paragraph}{\numberline {6.9.6.22}MAXORDER}{58}
186\contentsline {paragraph}{\numberline {6.9.6.23}MAXPZ}{58}
187\contentsline {paragraph}{\numberline {6.9.6.24}FILT\_\discretionary {-}{}{}EPS}{58}
188\contentsline {paragraph}{\numberline {6.9.6.25}MAX\_\discretionary {-}{}{}RESONATOR\_\discretionary {-}{}{}ITER}{58}
189\contentsline {paragraph}{\numberline {6.9.6.26}FFT\_\discretionary {-}{}{}FORWARD}{58}
190\contentsline {paragraph}{\numberline {6.9.6.27}FFT\_\discretionary {-}{}{}BACKWARD}{58}
191\contentsline {subsubsection}{\numberline {6.9.7}Function Documentation}{58}
192\contentsline {paragraph}{\numberline {6.9.7.1}create\_\discretionary {-}{}{}filter}{58}
193\contentsline {paragraph}{\numberline {6.9.7.2}apply\_\discretionary {-}{}{}filter}{59}
194\contentsline {paragraph}{\numberline {6.9.7.3}print\_\discretionary {-}{}{}filter}{60}
195\contentsline {paragraph}{\numberline {6.9.7.4}delete\_\discretionary {-}{}{}filter}{60}
196\contentsline {paragraph}{\numberline {6.9.7.5}filter\_\discretionary {-}{}{}step\_\discretionary {-}{}{}response}{60}
197\contentsline {paragraph}{\numberline {6.9.7.6}filter\_\discretionary {-}{}{}impulse\_\discretionary {-}{}{}response}{61}
198\contentsline {paragraph}{\numberline {6.9.7.7}create\_\discretionary {-}{}{}splane\_\discretionary {-}{}{}representation}{61}
199\contentsline {paragraph}{\numberline {6.9.7.8}create\_\discretionary {-}{}{}resonator\_\discretionary {-}{}{}representation}{61}
200\contentsline {paragraph}{\numberline {6.9.7.9}zplane\_\discretionary {-}{}{}transform}{62}
201\contentsline {paragraph}{\numberline {6.9.7.10}print\_\discretionary {-}{}{}filter\_\discretionary {-}{}{}representation}{62}
202\contentsline {paragraph}{\numberline {6.9.7.11}normalise\_\discretionary {-}{}{}filter}{62}
203\contentsline {paragraph}{\numberline {6.9.7.12}calculate\_\discretionary {-}{}{}filter\_\discretionary {-}{}{}coefficients}{63}
204\contentsline {paragraph}{\numberline {6.9.7.13}gaussian\_\discretionary {-}{}{}filter\_\discretionary {-}{}{}coeffs}{63}
205\contentsline {paragraph}{\numberline {6.9.7.14}\_\discretionary {-}{}{}expand\_\discretionary {-}{}{}complex\_\discretionary {-}{}{}polynomial}{64}
206\contentsline {paragraph}{\numberline {6.9.7.15}\_\discretionary {-}{}{}eval\_\discretionary {-}{}{}complex\_\discretionary {-}{}{}polynomial}{64}
207\contentsline {paragraph}{\numberline {6.9.7.16}ddc\_\discretionary {-}{}{}initialise}{64}
208\contentsline {paragraph}{\numberline {6.9.7.17}ddc\_\discretionary {-}{}{}cleanup}{65}
209\contentsline {paragraph}{\numberline {6.9.7.18}ddc}{65}
210\contentsline {paragraph}{\numberline {6.9.7.19}fft\_\discretionary {-}{}{}gen\_\discretionary {-}{}{}tables}{65}
211\contentsline {paragraph}{\numberline {6.9.7.20}fft\_\discretionary {-}{}{}initialise}{65}
212\contentsline {paragraph}{\numberline {6.9.7.21}fft\_\discretionary {-}{}{}cleanup}{66}
213\contentsline {paragraph}{\numberline {6.9.7.22}complexfft}{66}
214\contentsline {paragraph}{\numberline {6.9.7.23}realfft}{66}
215\contentsline {paragraph}{\numberline {6.9.7.24}norm\_\discretionary {-}{}{}phase}{67}
216\contentsline {subsection}{\numberline {6.10}BPM Processing Routines}{67}
217\contentsline {subsubsection}{\numberline {6.10.1}Detailed Description}{67}
218\contentsline {subsubsection}{\numberline {6.10.2}General structure of the BPM signal processing}{67}
219\contentsline {paragraph}{\numberline {6.10.2.1}Diode signal processing}{67}
220\contentsline {paragraph}{\numberline {6.10.2.2}Monopole signal processing}{67}
221\contentsline {paragraph}{\numberline {6.10.2.3}Dipole signal processing}{69}
222\contentsline {subsubsection}{\numberline {6.10.3}Processing flow}{70}
223\contentsline {subsubsection}{\numberline {6.10.4}About trigger pulses, internal vs. external clock}{70}
224\contentsline {paragraph}{\numberline {6.10.4.1}External clock triggering}{70}
225\contentsline {paragraph}{\numberline {6.10.4.2}Internal clock triggering}{71}
226\contentsline {subsubsection}{\numberline {6.10.5}calibration tone information}{71}
227\contentsline {subsubsection}{\numberline {6.10.6}Define Documentation}{73}
228\contentsline {paragraph}{\numberline {6.10.6.1}PROC\_\discretionary {-}{}{}DEFAULT}{73}
229\contentsline {subsubsection}{\numberline {6.10.7}Function Documentation}{73}
230\contentsline {paragraph}{\numberline {6.10.7.1}process\_\discretionary {-}{}{}diode}{73}
231\contentsline {paragraph}{\numberline {6.10.7.2}process\_\discretionary {-}{}{}monopole}{73}
232\contentsline {paragraph}{\numberline {6.10.7.3}process\_\discretionary {-}{}{}dipole}{74}
233\contentsline {paragraph}{\numberline {6.10.7.4}process\_\discretionary {-}{}{}waveform}{74}
234\contentsline {paragraph}{\numberline {6.10.7.5}postprocess\_\discretionary {-}{}{}waveform}{76}
235\contentsline {paragraph}{\numberline {6.10.7.6}process\_\discretionary {-}{}{}caltone}{76}
236\contentsline {paragraph}{\numberline {6.10.7.7}correct\_\discretionary {-}{}{}gain}{77}
237\contentsline {paragraph}{\numberline {6.10.7.8}fit\_\discretionary {-}{}{}waveform}{77}
238\contentsline {paragraph}{\numberline {6.10.7.9}fit\_\discretionary {-}{}{}diodepulse}{78}
239\contentsline {paragraph}{\numberline {6.10.7.10}fft\_\discretionary {-}{}{}waveform}{78}
240\contentsline {paragraph}{\numberline {6.10.7.11}fit\_\discretionary {-}{}{}fft\_\discretionary {-}{}{}prepare}{79}
241\contentsline {paragraph}{\numberline {6.10.7.12}fit\_\discretionary {-}{}{}fft}{79}
242\contentsline {paragraph}{\numberline {6.10.7.13}check\_\discretionary {-}{}{}saturation}{80}
243\contentsline {paragraph}{\numberline {6.10.7.14}downmix\_\discretionary {-}{}{}waveform}{80}
244\contentsline {paragraph}{\numberline {6.10.7.15}ddc\_\discretionary {-}{}{}waveform}{81}
245\contentsline {paragraph}{\numberline {6.10.7.16}ddc\_\discretionary {-}{}{}sample\_\discretionary {-}{}{}waveform}{81}
246\contentsline {paragraph}{\numberline {6.10.7.17}get\_\discretionary {-}{}{}pedestal}{81}
247\contentsline {paragraph}{\numberline {6.10.7.18}get\_\discretionary {-}{}{}t0}{82}
248\contentsline {paragraph}{\numberline {6.10.7.19}get\_\discretionary {-}{}{}IQ}{82}
249\contentsline {paragraph}{\numberline {6.10.7.20}get\_\discretionary {-}{}{}pos}{83}
250\contentsline {paragraph}{\numberline {6.10.7.21}get\_\discretionary {-}{}{}slope}{83}
251\contentsline {subsection}{\numberline {6.11}Waveform handling routines}{84}
252\contentsline {subsubsection}{\numberline {6.11.1}Detailed Description}{84}
253\contentsline {subsubsection}{\numberline {6.11.2}Memory management}{84}
254\contentsline {subsubsection}{\numberline {6.11.3}Waveform handling}{84}
255\contentsline {subsubsection}{\numberline {6.11.4}Filling the waveforms}{84}
256\contentsline {subsubsection}{\numberline {6.11.5}Note on the interpolation options.}{85}
257\contentsline {subsubsection}{\numberline {6.11.6}For examples...}{85}
258\contentsline {subsubsection}{\numberline {6.11.7}Todo list}{85}
259\contentsline {subsubsection}{\numberline {6.11.8}Define Documentation}{88}
260\contentsline {paragraph}{\numberline {6.11.8.1}WF\_\discretionary {-}{}{}EPS}{88}
261\contentsline {paragraph}{\numberline {6.11.8.2}MAX\_\discretionary {-}{}{}ALLOWED\_\discretionary {-}{}{}NS}{88}
262\contentsline {paragraph}{\numberline {6.11.8.3}WF\_\discretionary {-}{}{}NEAREST}{88}
263\contentsline {paragraph}{\numberline {6.11.8.4}WF\_\discretionary {-}{}{}LINEAR}{88}
264\contentsline {paragraph}{\numberline {6.11.8.5}WF\_\discretionary {-}{}{}QUADRATIC}{88}
265\contentsline {paragraph}{\numberline {6.11.8.6}WF\_\discretionary {-}{}{}SINC}{89}
266\contentsline {paragraph}{\numberline {6.11.8.7}WF\_\discretionary {-}{}{}LANCZOS}{89}
267\contentsline {subsubsection}{\numberline {6.11.9}Function Documentation}{89}
268\contentsline {paragraph}{\numberline {6.11.9.1}wfstat\_\discretionary {-}{}{}reset}{89}
269\contentsline {paragraph}{\numberline {6.11.9.2}wfstat\_\discretionary {-}{}{}print}{89}
270\contentsline {paragraph}{\numberline {6.11.9.3}doublewf}{89}
271\contentsline {paragraph}{\numberline {6.11.9.4}doublewf\_\discretionary {-}{}{}time\_\discretionary {-}{}{}series}{90}
272\contentsline {paragraph}{\numberline {6.11.9.5}doublewf\_\discretionary {-}{}{}sample\_\discretionary {-}{}{}series}{90}
273\contentsline {paragraph}{\numberline {6.11.9.6}doublewf\_\discretionary {-}{}{}frequency\_\discretionary {-}{}{}series}{90}
274\contentsline {paragraph}{\numberline {6.11.9.7}doublewf\_\discretionary {-}{}{}setvalues}{91}
275\contentsline {paragraph}{\numberline {6.11.9.8}doublewf\_\discretionary {-}{}{}setfunction}{91}
276\contentsline {paragraph}{\numberline {6.11.9.9}doublewf\_\discretionary {-}{}{}copy}{91}
277\contentsline {paragraph}{\numberline {6.11.9.10}doublewf\_\discretionary {-}{}{}copy\_\discretionary {-}{}{}new}{92}
278\contentsline {paragraph}{\numberline {6.11.9.11}doublewf\_\discretionary {-}{}{}subset}{92}
279\contentsline {paragraph}{\numberline {6.11.9.12}doublewf\_\discretionary {-}{}{}reset}{92}
280\contentsline {paragraph}{\numberline {6.11.9.13}doublewf\_\discretionary {-}{}{}delete}{93}
281\contentsline {paragraph}{\numberline {6.11.9.14}intwf\_\discretionary {-}{}{}cast\_\discretionary {-}{}{}new}{93}
282\contentsline {paragraph}{\numberline {6.11.9.15}intwf\_\discretionary {-}{}{}cast}{93}
283\contentsline {paragraph}{\numberline {6.11.9.16}doublewf\_\discretionary {-}{}{}compat}{94}
284\contentsline {paragraph}{\numberline {6.11.9.17}doublewf\_\discretionary {-}{}{}add}{94}
285\contentsline {paragraph}{\numberline {6.11.9.18}doublewf\_\discretionary {-}{}{}subtract}{94}
286\contentsline {paragraph}{\numberline {6.11.9.19}doublewf\_\discretionary {-}{}{}multiply}{95}
287\contentsline {paragraph}{\numberline {6.11.9.20}doublewf\_\discretionary {-}{}{}divide}{95}
288\contentsline {paragraph}{\numberline {6.11.9.21}doublewf\_\discretionary {-}{}{}scale}{95}
289\contentsline {paragraph}{\numberline {6.11.9.22}doublewf\_\discretionary {-}{}{}bias}{96}
290\contentsline {paragraph}{\numberline {6.11.9.23}doublewf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}cwtone}{96}
291\contentsline {paragraph}{\numberline {6.11.9.24}doublewf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}dcywave}{96}
292\contentsline {paragraph}{\numberline {6.11.9.25}doublewf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}ampnoise}{97}
293\contentsline {paragraph}{\numberline {6.11.9.26}doublewf\_\discretionary {-}{}{}basic\_\discretionary {-}{}{}stats}{97}
294\contentsline {paragraph}{\numberline {6.11.9.27}doublewf\_\discretionary {-}{}{}derive}{98}
295\contentsline {paragraph}{\numberline {6.11.9.28}doublewf\_\discretionary {-}{}{}integrate}{98}
296\contentsline {paragraph}{\numberline {6.11.9.29}doublewf\_\discretionary {-}{}{}print}{98}
297\contentsline {paragraph}{\numberline {6.11.9.30}doublewf\_\discretionary {-}{}{}getvalue}{98}
298\contentsline {paragraph}{\numberline {6.11.9.31}doublewf\_\discretionary {-}{}{}resample}{99}
299\contentsline {paragraph}{\numberline {6.11.9.32}intwf}{99}
300\contentsline {paragraph}{\numberline {6.11.9.33}intwf\_\discretionary {-}{}{}sample\_\discretionary {-}{}{}series}{100}
301\contentsline {paragraph}{\numberline {6.11.9.34}intwf\_\discretionary {-}{}{}setvalues}{100}
302\contentsline {paragraph}{\numberline {6.11.9.35}intwf\_\discretionary {-}{}{}setfunction}{100}
303\contentsline {paragraph}{\numberline {6.11.9.36}intwf\_\discretionary {-}{}{}copy}{101}
304\contentsline {paragraph}{\numberline {6.11.9.37}intwf\_\discretionary {-}{}{}copy\_\discretionary {-}{}{}new}{101}
305\contentsline {paragraph}{\numberline {6.11.9.38}intwf\_\discretionary {-}{}{}subset}{101}
306\contentsline {paragraph}{\numberline {6.11.9.39}intwf\_\discretionary {-}{}{}reset}{102}
307\contentsline {paragraph}{\numberline {6.11.9.40}intwf\_\discretionary {-}{}{}delete}{102}
308\contentsline {paragraph}{\numberline {6.11.9.41}doublewf\_\discretionary {-}{}{}cast\_\discretionary {-}{}{}new}{102}
309\contentsline {paragraph}{\numberline {6.11.9.42}doublewf\_\discretionary {-}{}{}cast}{102}
310\contentsline {paragraph}{\numberline {6.11.9.43}intwf\_\discretionary {-}{}{}compat}{103}
311\contentsline {paragraph}{\numberline {6.11.9.44}intwf\_\discretionary {-}{}{}add}{103}
312\contentsline {paragraph}{\numberline {6.11.9.45}intwf\_\discretionary {-}{}{}subtract}{103}
313\contentsline {paragraph}{\numberline {6.11.9.46}intwf\_\discretionary {-}{}{}multiply}{104}
314\contentsline {paragraph}{\numberline {6.11.9.47}intwf\_\discretionary {-}{}{}divide}{104}
315\contentsline {paragraph}{\numberline {6.11.9.48}intwf\_\discretionary {-}{}{}scale}{104}
316\contentsline {paragraph}{\numberline {6.11.9.49}intwf\_\discretionary {-}{}{}bias}{105}
317\contentsline {paragraph}{\numberline {6.11.9.50}intwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}cwtone}{105}
318\contentsline {paragraph}{\numberline {6.11.9.51}intwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}dcywave}{105}
319\contentsline {paragraph}{\numberline {6.11.9.52}intwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}ampnoise}{106}
320\contentsline {paragraph}{\numberline {6.11.9.53}intwf\_\discretionary {-}{}{}basic\_\discretionary {-}{}{}stats}{106}
321\contentsline {paragraph}{\numberline {6.11.9.54}intwf\_\discretionary {-}{}{}derive}{106}
322\contentsline {paragraph}{\numberline {6.11.9.55}intwf\_\discretionary {-}{}{}integrate}{107}
323\contentsline {paragraph}{\numberline {6.11.9.56}intwf\_\discretionary {-}{}{}print}{107}
324\contentsline {paragraph}{\numberline {6.11.9.57}intwf\_\discretionary {-}{}{}getvalue}{107}
325\contentsline {paragraph}{\numberline {6.11.9.58}intwf\_\discretionary {-}{}{}resample}{108}
326\contentsline {paragraph}{\numberline {6.11.9.59}complexwf}{108}
327\contentsline {paragraph}{\numberline {6.11.9.60}complexwf\_\discretionary {-}{}{}copy\_\discretionary {-}{}{}new}{108}
328\contentsline {paragraph}{\numberline {6.11.9.61}complexwf\_\discretionary {-}{}{}copy}{109}
329\contentsline {paragraph}{\numberline {6.11.9.62}complexwf\_\discretionary {-}{}{}subset}{109}
330\contentsline {paragraph}{\numberline {6.11.9.63}complexwf\_\discretionary {-}{}{}setvalues}{109}
331\contentsline {paragraph}{\numberline {6.11.9.64}complexwf\_\discretionary {-}{}{}setfunction}{110}
332\contentsline {paragraph}{\numberline {6.11.9.65}complexwf\_\discretionary {-}{}{}reset}{110}
333\contentsline {paragraph}{\numberline {6.11.9.66}complexwf\_\discretionary {-}{}{}delete}{110}
334\contentsline {paragraph}{\numberline {6.11.9.67}complexwf\_\discretionary {-}{}{}compat}{111}
335\contentsline {paragraph}{\numberline {6.11.9.68}complexwf\_\discretionary {-}{}{}add}{111}
336\contentsline {paragraph}{\numberline {6.11.9.69}complexwf\_\discretionary {-}{}{}subtract}{111}
337\contentsline {paragraph}{\numberline {6.11.9.70}complexwf\_\discretionary {-}{}{}multiply}{112}
338\contentsline {paragraph}{\numberline {6.11.9.71}complexwf\_\discretionary {-}{}{}divide}{112}
339\contentsline {paragraph}{\numberline {6.11.9.72}complexwf\_\discretionary {-}{}{}scale}{112}
340\contentsline {paragraph}{\numberline {6.11.9.73}complexwf\_\discretionary {-}{}{}bias}{112}
341\contentsline {paragraph}{\numberline {6.11.9.74}complexwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}cwtone}{113}
342\contentsline {paragraph}{\numberline {6.11.9.75}complexwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}dcywave}{113}
343\contentsline {paragraph}{\numberline {6.11.9.76}complexwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}noise}{114}
344\contentsline {paragraph}{\numberline {6.11.9.77}complexwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}ampnoise}{114}
345\contentsline {paragraph}{\numberline {6.11.9.78}complexwf\_\discretionary {-}{}{}add\_\discretionary {-}{}{}phasenoise}{114}
346\contentsline {paragraph}{\numberline {6.11.9.79}complexwf\_\discretionary {-}{}{}print}{115}
347\contentsline {paragraph}{\numberline {6.11.9.80}complexwf\_\discretionary {-}{}{}getreal}{115}
348\contentsline {paragraph}{\numberline {6.11.9.81}complexwf\_\discretionary {-}{}{}getimag}{115}
349\contentsline {paragraph}{\numberline {6.11.9.82}complexwf\_\discretionary {-}{}{}getamp}{116}
350\contentsline {paragraph}{\numberline {6.11.9.83}complexwf\_\discretionary {-}{}{}getphase}{116}
351\contentsline {paragraph}{\numberline {6.11.9.84}complexwf\_\discretionary {-}{}{}getreal\_\discretionary {-}{}{}new}{116}
352\contentsline {paragraph}{\numberline {6.11.9.85}complexwf\_\discretionary {-}{}{}getimag\_\discretionary {-}{}{}new}{117}
353\contentsline {paragraph}{\numberline {6.11.9.86}complexwf\_\discretionary {-}{}{}getamp\_\discretionary {-}{}{}new}{117}
354\contentsline {paragraph}{\numberline {6.11.9.87}complexwf\_\discretionary {-}{}{}getphase\_\discretionary {-}{}{}new}{117}
355\contentsline {paragraph}{\numberline {6.11.9.88}complexwf\_\discretionary {-}{}{}setreal}{118}
356\contentsline {paragraph}{\numberline {6.11.9.89}complexwf\_\discretionary {-}{}{}setimag}{118}
357\contentsline {section}{\numberline {7}Data Structure Documentation}{118}
358\contentsline {subsection}{\numberline {7.1}beamconf Struct Reference}{118}
359\contentsline {subsubsection}{\numberline {7.1.1}Detailed Description}{119}
360\contentsline {subsubsection}{\numberline {7.1.2}Field Documentation}{119}
361\contentsline {paragraph}{\numberline {7.1.2.1}train\_\discretionary {-}{}{}num}{119}
362\contentsline {paragraph}{\numberline {7.1.2.2}beamrate}{119}
363\contentsline {paragraph}{\numberline {7.1.2.3}bunchrate}{120}
364\contentsline {paragraph}{\numberline {7.1.2.4}nbunches}{120}
365\contentsline {paragraph}{\numberline {7.1.2.5}bunch}{120}
366\contentsline {paragraph}{\numberline {7.1.2.6}position}{120}
367\contentsline {paragraph}{\numberline {7.1.2.7}positionsigma}{120}
368\contentsline {paragraph}{\numberline {7.1.2.8}slope}{120}
369\contentsline {paragraph}{\numberline {7.1.2.9}slopesigma}{120}
370\contentsline {paragraph}{\numberline {7.1.2.10}tilt}{120}
371\contentsline {paragraph}{\numberline {7.1.2.11}tiltsigma}{120}
372\contentsline {paragraph}{\numberline {7.1.2.12}bunchlength}{121}
373\contentsline {paragraph}{\numberline {7.1.2.13}bunchlengthsigma}{121}
374\contentsline {paragraph}{\numberline {7.1.2.14}energy}{121}
375\contentsline {paragraph}{\numberline {7.1.2.15}energysigma}{121}
376\contentsline {paragraph}{\numberline {7.1.2.16}charge}{121}
377\contentsline {paragraph}{\numberline {7.1.2.17}chargesigma}{121}
378\contentsline {subsection}{\numberline {7.2}bpmcalib Struct Reference}{121}
379\contentsline {subsubsection}{\numberline {7.2.1}Detailed Description}{121}
380\contentsline {subsubsection}{\numberline {7.2.2}Field Documentation}{122}
381\contentsline {paragraph}{\numberline {7.2.2.1}ddc\_\discretionary {-}{}{}IQphase}{122}
382\contentsline {paragraph}{\numberline {7.2.2.2}ddc\_\discretionary {-}{}{}posscale}{122}
383\contentsline {paragraph}{\numberline {7.2.2.3}ddc\_\discretionary {-}{}{}slopescale}{122}
384\contentsline {paragraph}{\numberline {7.2.2.4}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}amp}{122}
385\contentsline {paragraph}{\numberline {7.2.2.5}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}phase}{122}
386\contentsline {paragraph}{\numberline {7.2.2.6}fit\_\discretionary {-}{}{}IQphase}{122}
387\contentsline {paragraph}{\numberline {7.2.2.7}fit\_\discretionary {-}{}{}posscale}{123}
388\contentsline {paragraph}{\numberline {7.2.2.8}fit\_\discretionary {-}{}{}slopescale}{123}
389\contentsline {paragraph}{\numberline {7.2.2.9}fit\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}amp}{123}
390\contentsline {paragraph}{\numberline {7.2.2.10}fit\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}phase}{123}
391\contentsline {subsection}{\numberline {7.3}bpmconf Struct Reference}{123}
392\contentsline {subsubsection}{\numberline {7.3.1}Detailed Description}{124}
393\contentsline {subsubsection}{\numberline {7.3.2}Field Documentation}{125}
394\contentsline {paragraph}{\numberline {7.3.2.1}name}{125}
395\contentsline {paragraph}{\numberline {7.3.2.2}cav\_\discretionary {-}{}{}type}{125}
396\contentsline {paragraph}{\numberline {7.3.2.3}cav\_\discretionary {-}{}{}polarisation}{125}
397\contentsline {paragraph}{\numberline {7.3.2.4}cav\_\discretionary {-}{}{}phasetype}{126}
398\contentsline {paragraph}{\numberline {7.3.2.5}cav\_\discretionary {-}{}{}length}{126}
399\contentsline {paragraph}{\numberline {7.3.2.6}cav\_\discretionary {-}{}{}freq}{126}
400\contentsline {paragraph}{\numberline {7.3.2.7}cav\_\discretionary {-}{}{}decaytime}{126}
401\contentsline {paragraph}{\numberline {7.3.2.8}cav\_\discretionary {-}{}{}phase}{126}
402\contentsline {paragraph}{\numberline {7.3.2.9}cav\_\discretionary {-}{}{}iqrotation}{126}
403\contentsline {paragraph}{\numberline {7.3.2.10}cav\_\discretionary {-}{}{}chargesens}{126}
404\contentsline {paragraph}{\numberline {7.3.2.11}cav\_\discretionary {-}{}{}possens}{126}
405\contentsline {paragraph}{\numberline {7.3.2.12}cav\_\discretionary {-}{}{}tiltsens}{126}
406\contentsline {paragraph}{\numberline {7.3.2.13}rf\_\discretionary {-}{}{}LOfreq}{127}
407\contentsline {paragraph}{\numberline {7.3.2.14}digi\_\discretionary {-}{}{}trigtimeoffset}{127}
408\contentsline {paragraph}{\numberline {7.3.2.15}digi\_\discretionary {-}{}{}freq}{127}
409\contentsline {paragraph}{\numberline {7.3.2.16}digi\_\discretionary {-}{}{}nbits}{127}
410\contentsline {paragraph}{\numberline {7.3.2.17}digi\_\discretionary {-}{}{}nsamples}{127}
411\contentsline {paragraph}{\numberline {7.3.2.18}digi\_\discretionary {-}{}{}ampnoise}{127}
412\contentsline {paragraph}{\numberline {7.3.2.19}digi\_\discretionary {-}{}{}voltageoffset}{127}
413\contentsline {paragraph}{\numberline {7.3.2.20}digi\_\discretionary {-}{}{}phasenoise}{127}
414\contentsline {paragraph}{\numberline {7.3.2.21}t0}{127}
415\contentsline {paragraph}{\numberline {7.3.2.22}ddc\_\discretionary {-}{}{}freq}{128}
416\contentsline {paragraph}{\numberline {7.3.2.23}ddc\_\discretionary {-}{}{}tdecay}{128}
417\contentsline {paragraph}{\numberline {7.3.2.24}ddc\_\discretionary {-}{}{}tOffset}{128}
418\contentsline {paragraph}{\numberline {7.3.2.25}ddc\_\discretionary {-}{}{}filter}{128}
419\contentsline {paragraph}{\numberline {7.3.2.26}fit\_\discretionary {-}{}{}inifreq}{128}
420\contentsline {paragraph}{\numberline {7.3.2.27}fit\_\discretionary {-}{}{}initdecay}{128}
421\contentsline {paragraph}{\numberline {7.3.2.28}fit\_\discretionary {-}{}{}tOffset}{128}
422\contentsline {paragraph}{\numberline {7.3.2.29}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}freq}{128}
423\contentsline {paragraph}{\numberline {7.3.2.30}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}filter}{129}
424\contentsline {paragraph}{\numberline {7.3.2.31}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}iSample}{129}
425\contentsline {paragraph}{\numberline {7.3.2.32}geom\_\discretionary {-}{}{}pos}{129}
426\contentsline {paragraph}{\numberline {7.3.2.33}geom\_\discretionary {-}{}{}tilt}{129}
427\contentsline {paragraph}{\numberline {7.3.2.34}ref\_\discretionary {-}{}{}idx}{129}
428\contentsline {paragraph}{\numberline {7.3.2.35}diode\_\discretionary {-}{}{}idx}{129}
429\contentsline {paragraph}{\numberline {7.3.2.36}forced\_\discretionary {-}{}{}trigger}{129}
430\contentsline {paragraph}{\numberline {7.3.2.37}ddc\_\discretionary {-}{}{}buffer\_\discretionary {-}{}{}re}{129}
431\contentsline {paragraph}{\numberline {7.3.2.38}ddc\_\discretionary {-}{}{}buffer\_\discretionary {-}{}{}im}{130}
432\contentsline {subsection}{\numberline {7.4}bpmmode Struct Reference}{130}
433\contentsline {subsubsection}{\numberline {7.4.1}Detailed Description}{130}
434\contentsline {subsubsection}{\numberline {7.4.2}Field Documentation}{130}
435\contentsline {paragraph}{\numberline {7.4.2.1}name}{130}
436\contentsline {paragraph}{\numberline {7.4.2.2}frequency}{131}
437\contentsline {paragraph}{\numberline {7.4.2.3}Q}{131}
438\contentsline {paragraph}{\numberline {7.4.2.4}order}{131}
439\contentsline {paragraph}{\numberline {7.4.2.5}polarisation}{131}
440\contentsline {paragraph}{\numberline {7.4.2.6}sensitivity}{131}
441\contentsline {paragraph}{\numberline {7.4.2.7}response}{131}
442\contentsline {paragraph}{\numberline {7.4.2.8}buffer}{131}
443\contentsline {subsection}{\numberline {7.5}bpmproc Struct Reference}{132}
444\contentsline {subsubsection}{\numberline {7.5.1}Detailed Description}{132}
445\contentsline {subsubsection}{\numberline {7.5.2}Field Documentation}{133}
446\contentsline {paragraph}{\numberline {7.5.2.1}ampnoise}{133}
447\contentsline {paragraph}{\numberline {7.5.2.2}voltageoffset}{133}
448\contentsline {paragraph}{\numberline {7.5.2.3}t0}{133}
449\contentsline {paragraph}{\numberline {7.5.2.4}saturated}{133}
450\contentsline {paragraph}{\numberline {7.5.2.5}iunsat}{133}
451\contentsline {paragraph}{\numberline {7.5.2.6}dc}{134}
452\contentsline {paragraph}{\numberline {7.5.2.7}ft}{134}
453\contentsline {paragraph}{\numberline {7.5.2.8}fft\_\discretionary {-}{}{}success}{134}
454\contentsline {paragraph}{\numberline {7.5.2.9}fft\_\discretionary {-}{}{}amp}{134}
455\contentsline {paragraph}{\numberline {7.5.2.10}fft\_\discretionary {-}{}{}freq}{134}
456\contentsline {paragraph}{\numberline {7.5.2.11}fft\_\discretionary {-}{}{}tdecay}{134}
457\contentsline {paragraph}{\numberline {7.5.2.12}fft\_\discretionary {-}{}{}offset}{134}
458\contentsline {paragraph}{\numberline {7.5.2.13}ddc\_\discretionary {-}{}{}success}{134}
459\contentsline {paragraph}{\numberline {7.5.2.14}ddc\_\discretionary {-}{}{}tSample}{135}
460\contentsline {paragraph}{\numberline {7.5.2.15}ddc\_\discretionary {-}{}{}iSample}{135}
461\contentsline {paragraph}{\numberline {7.5.2.16}ddc\_\discretionary {-}{}{}Q}{135}
462\contentsline {paragraph}{\numberline {7.5.2.17}ddc\_\discretionary {-}{}{}I}{135}
463\contentsline {paragraph}{\numberline {7.5.2.18}ddc\_\discretionary {-}{}{}amp}{135}
464\contentsline {paragraph}{\numberline {7.5.2.19}ddc\_\discretionary {-}{}{}phase}{135}
465\contentsline {paragraph}{\numberline {7.5.2.20}ddc\_\discretionary {-}{}{}tdecay}{135}
466\contentsline {paragraph}{\numberline {7.5.2.21}ddc\_\discretionary {-}{}{}pos}{135}
467\contentsline {paragraph}{\numberline {7.5.2.22}ddc\_\discretionary {-}{}{}slope}{136}
468\contentsline {paragraph}{\numberline {7.5.2.23}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}amp}{136}
469\contentsline {paragraph}{\numberline {7.5.2.24}ddc\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}phase}{136}
470\contentsline {paragraph}{\numberline {7.5.2.25}fit\_\discretionary {-}{}{}success}{136}
471\contentsline {paragraph}{\numberline {7.5.2.26}fit\_\discretionary {-}{}{}Q}{136}
472\contentsline {paragraph}{\numberline {7.5.2.27}fit\_\discretionary {-}{}{}I}{136}
473\contentsline {paragraph}{\numberline {7.5.2.28}fit\_\discretionary {-}{}{}amp}{136}
474\contentsline {paragraph}{\numberline {7.5.2.29}fit\_\discretionary {-}{}{}phase}{136}
475\contentsline {paragraph}{\numberline {7.5.2.30}fit\_\discretionary {-}{}{}freq}{137}
476\contentsline {paragraph}{\numberline {7.5.2.31}fit\_\discretionary {-}{}{}tdecay}{137}
477\contentsline {paragraph}{\numberline {7.5.2.32}fit\_\discretionary {-}{}{}offset}{137}
478\contentsline {paragraph}{\numberline {7.5.2.33}fit\_\discretionary {-}{}{}pos}{137}
479\contentsline {paragraph}{\numberline {7.5.2.34}fit\_\discretionary {-}{}{}slope}{137}
480\contentsline {paragraph}{\numberline {7.5.2.35}fit\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}amp}{137}
481\contentsline {paragraph}{\numberline {7.5.2.36}fit\_\discretionary {-}{}{}ct\_\discretionary {-}{}{}phase}{137}
482\contentsline {subsection}{\numberline {7.6}bunchconf Struct Reference}{138}
483\contentsline {subsubsection}{\numberline {7.6.1}Detailed Description}{138}
484\contentsline {subsubsection}{\numberline {7.6.2}Field Documentation}{138}
485\contentsline {paragraph}{\numberline {7.6.2.1}train\_\discretionary {-}{}{}num}{138}
486\contentsline {paragraph}{\numberline {7.6.2.2}bunch\_\discretionary {-}{}{}num}{138}
487\contentsline {paragraph}{\numberline {7.6.2.3}energy}{138}
488\contentsline {paragraph}{\numberline {7.6.2.4}energyspread}{138}
489\contentsline {paragraph}{\numberline {7.6.2.5}length}{139}
490\contentsline {paragraph}{\numberline {7.6.2.6}arrival\_\discretionary {-}{}{}time}{139}
491\contentsline {paragraph}{\numberline {7.6.2.7}position}{139}
492\contentsline {paragraph}{\numberline {7.6.2.8}slope}{139}
493\contentsline {paragraph}{\numberline {7.6.2.9}tilt}{139}
494\contentsline {paragraph}{\numberline {7.6.2.10}bpmposition}{139}
495\contentsline {paragraph}{\numberline {7.6.2.11}bpmslope}{139}
496\contentsline {paragraph}{\numberline {7.6.2.12}bpmtilt}{139}
497\contentsline {subsection}{\numberline {7.7}complex\_\discretionary {-}{}{}t Struct Reference}{140}
498\contentsline {subsubsection}{\numberline {7.7.1}Detailed Description}{140}
499\contentsline {subsection}{\numberline {7.8}complexwf\_\discretionary {-}{}{}t Struct Reference}{140}
500\contentsline {subsubsection}{\numberline {7.8.1}Detailed Description}{140}
501\contentsline {subsubsection}{\numberline {7.8.2}Field Documentation}{141}
502\contentsline {paragraph}{\numberline {7.8.2.1}ns}{141}
503\contentsline {paragraph}{\numberline {7.8.2.2}fs}{141}
504\contentsline {paragraph}{\numberline {7.8.2.3}wf}{141}
505\contentsline {subsection}{\numberline {7.9}doublewf\_\discretionary {-}{}{}t Struct Reference}{141}
506\contentsline {subsubsection}{\numberline {7.9.1}Detailed Description}{141}
507\contentsline {subsubsection}{\numberline {7.9.2}Field Documentation}{142}
508\contentsline {paragraph}{\numberline {7.9.2.1}ns}{142}
509\contentsline {paragraph}{\numberline {7.9.2.2}fs}{142}
510\contentsline {paragraph}{\numberline {7.9.2.3}wf}{142}
511\contentsline {subsection}{\numberline {7.10}filter\_\discretionary {-}{}{}t Struct Reference}{143}
512\contentsline {subsubsection}{\numberline {7.10.1}Detailed Description}{143}
513\contentsline {subsubsection}{\numberline {7.10.2}Field Documentation}{144}
514\contentsline {paragraph}{\numberline {7.10.2.1}name}{144}
515\contentsline {paragraph}{\numberline {7.10.2.2}options}{144}
516\contentsline {paragraph}{\numberline {7.10.2.3}order}{144}
517\contentsline {paragraph}{\numberline {7.10.2.4}fs}{144}
518\contentsline {paragraph}{\numberline {7.10.2.5}f1}{144}
519\contentsline {paragraph}{\numberline {7.10.2.6}f2}{145}
520\contentsline {paragraph}{\numberline {7.10.2.7}alpha1}{145}
521\contentsline {paragraph}{\numberline {7.10.2.8}alpha2}{145}
522\contentsline {paragraph}{\numberline {7.10.2.9}w\_\discretionary {-}{}{}alpha1}{145}
523\contentsline {paragraph}{\numberline {7.10.2.10}w\_\discretionary {-}{}{}alpha2}{145}
524\contentsline {paragraph}{\numberline {7.10.2.11}cheb\_\discretionary {-}{}{}ripple}{145}
525\contentsline {paragraph}{\numberline {7.10.2.12}Q}{145}
526\contentsline {paragraph}{\numberline {7.10.2.13}gauss\_\discretionary {-}{}{}cutoff}{145}
527\contentsline {paragraph}{\numberline {7.10.2.14}dc\_\discretionary {-}{}{}gain}{146}
528\contentsline {paragraph}{\numberline {7.10.2.15}fc\_\discretionary {-}{}{}gain}{146}
529\contentsline {paragraph}{\numberline {7.10.2.16}hf\_\discretionary {-}{}{}gain}{146}
530\contentsline {paragraph}{\numberline {7.10.2.17}gain}{146}
531\contentsline {paragraph}{\numberline {7.10.2.18}cplane}{146}
532\contentsline {paragraph}{\numberline {7.10.2.19}nxc}{146}
533\contentsline {paragraph}{\numberline {7.10.2.20}xc}{146}
534\contentsline {paragraph}{\numberline {7.10.2.21}nxc\_\discretionary {-}{}{}ac}{147}
535\contentsline {paragraph}{\numberline {7.10.2.22}xc\_\discretionary {-}{}{}ac}{147}
536\contentsline {paragraph}{\numberline {7.10.2.23}nyc}{147}
537\contentsline {paragraph}{\numberline {7.10.2.24}yc}{147}
538\contentsline {paragraph}{\numberline {7.10.2.25}nyc\_\discretionary {-}{}{}ac}{147}
539\contentsline {paragraph}{\numberline {7.10.2.26}yc\_\discretionary {-}{}{}ac}{147}
540\contentsline {paragraph}{\numberline {7.10.2.27}xv}{147}
541\contentsline {paragraph}{\numberline {7.10.2.28}xv\_\discretionary {-}{}{}ac}{147}
542\contentsline {paragraph}{\numberline {7.10.2.29}yv}{148}
543\contentsline {paragraph}{\numberline {7.10.2.30}yv\_\discretionary {-}{}{}ac}{148}
544\contentsline {paragraph}{\numberline {7.10.2.31}ns}{148}
545\contentsline {paragraph}{\numberline {7.10.2.32}wfbuffer}{148}
546\contentsline {subsection}{\numberline {7.11}filterrep\_\discretionary {-}{}{}t Struct Reference}{148}
547\contentsline {subsubsection}{\numberline {7.11.1}Detailed Description}{148}
548\contentsline {subsubsection}{\numberline {7.11.2}Field Documentation}{149}
549\contentsline {paragraph}{\numberline {7.11.2.1}npoles}{149}
550\contentsline {paragraph}{\numberline {7.11.2.2}nzeros}{149}
551\contentsline {paragraph}{\numberline {7.11.2.3}pole}{149}
552\contentsline {paragraph}{\numberline {7.11.2.4}zero}{149}
553\contentsline {subsection}{\numberline {7.12}intwf\_\discretionary {-}{}{}t Struct Reference}{149}
554\contentsline {subsubsection}{\numberline {7.12.1}Detailed Description}{149}
555\contentsline {subsubsection}{\numberline {7.12.2}Field Documentation}{150}
556\contentsline {paragraph}{\numberline {7.12.2.1}ns}{150}
557\contentsline {paragraph}{\numberline {7.12.2.2}fs}{150}
558\contentsline {paragraph}{\numberline {7.12.2.3}wf}{150}
559\contentsline {subsection}{\numberline {7.13}lm\_\discretionary {-}{}{}fstate Struct Reference}{150}
560\contentsline {subsubsection}{\numberline {7.13.1}Detailed Description}{150}
561\contentsline {subsection}{\numberline {7.14}m33 Struct Reference}{151}
562\contentsline {subsubsection}{\numberline {7.14.1}Detailed Description}{151}
563\contentsline {subsubsection}{\numberline {7.14.2}Field Documentation}{151}
564\contentsline {paragraph}{\numberline {7.14.2.1}e}{151}
565\contentsline {subsection}{\numberline {7.15}rfmodel Struct Reference}{151}
566\contentsline {subsubsection}{\numberline {7.15.1}Detailed Description}{152}
567\contentsline {subsubsection}{\numberline {7.15.2}Field Documentation}{152}
568\contentsline {paragraph}{\numberline {7.15.2.1}name}{152}
569\contentsline {paragraph}{\numberline {7.15.2.2}nmodes}{152}
570\contentsline {paragraph}{\numberline {7.15.2.3}mode}{152}
571\contentsline {subsection}{\numberline {7.16}v3 Struct Reference}{153}
572\contentsline {subsubsection}{\numberline {7.16.1}Detailed Description}{153}
573\contentsline {subsubsection}{\numberline {7.16.2}Field Documentation}{153}
574\contentsline {paragraph}{\numberline {7.16.2.1}x}{153}
575\contentsline {paragraph}{\numberline {7.16.2.2}y}{153}
576\contentsline {paragraph}{\numberline {7.16.2.3}z}{153}
577\contentsline {subsection}{\numberline {7.17}wfstat\_\discretionary {-}{}{}t Struct Reference}{153}
578\contentsline {subsubsection}{\numberline {7.17.1}Detailed Description}{154}
579\contentsline {subsubsection}{\numberline {7.17.2}Field Documentation}{154}
580\contentsline {paragraph}{\numberline {7.17.2.1}imax}{154}
581\contentsline {paragraph}{\numberline {7.17.2.2}imin}{154}
582\contentsline {paragraph}{\numberline {7.17.2.3}max}{154}
583\contentsline {paragraph}{\numberline {7.17.2.4}min}{154}
584\contentsline {paragraph}{\numberline {7.17.2.5}mean}{154}
585\contentsline {paragraph}{\numberline {7.17.2.6}rms}{155}
586\contentsline {section}{\numberline {8}File Documentation}{155}
587\contentsline {subsection}{\numberline {8.1}bpm\_\discretionary {-}{}{}units.h File Reference}{155}
588\contentsline {subsubsection}{\numberline {8.1.1}Detailed Description}{155}
589\contentsline {subsection}{\numberline {8.2}bpmanalysis/ana\_\discretionary {-}{}{}compute\_\discretionary {-}{}{}residual.c File Reference}{156}
590\contentsline {subsubsection}{\numberline {8.2.1}Detailed Description}{156}
591\contentsline {subsection}{\numberline {8.3}bpmanalysis/ana\_\discretionary {-}{}{}def\_\discretionary {-}{}{}cutfn.c File Reference}{156}
592\contentsline {subsubsection}{\numberline {8.3.1}Detailed Description}{156}
593\contentsline {subsection}{\numberline {8.4}bpmanalysis/ana\_\discretionary {-}{}{}get\_\discretionary {-}{}{}svd\_\discretionary {-}{}{}coeffs.c File Reference}{157}
594\contentsline {subsubsection}{\numberline {8.4.1}Detailed Description}{157}
595\contentsline {subsection}{\numberline {8.5}bpmanalysis/ana\_\discretionary {-}{}{}set\_\discretionary {-}{}{}cutfn.c File Reference}{157}
596\contentsline {subsubsection}{\numberline {8.5.1}Detailed Description}{157}
597\contentsline {subsection}{\numberline {8.6}bpmanalysis/bpm\_\discretionary {-}{}{}analysis.h File Reference}{158}
598\contentsline {subsubsection}{\numberline {8.6.1}Detailed Description}{158}
599\contentsline {subsection}{\numberline {8.7}bpmcalibration/bpm\_\discretionary {-}{}{}calibration.h File Reference}{158}
600\contentsline {subsubsection}{\numberline {8.7.1}Detailed Description}{158}
601\contentsline {subsection}{\numberline {8.8}bpmcalibration/calibrate.c File Reference}{159}
602\contentsline {subsubsection}{\numberline {8.8.1}Detailed Description}{159}
603\contentsline {subsection}{\numberline {8.9}bpmcalibration/setup\_\discretionary {-}{}{}calibration.c File Reference}{159}
604\contentsline {subsubsection}{\numberline {8.9.1}Detailed Description}{159}
605\contentsline {subsection}{\numberline {8.10}bpmdsp/bpm\_\discretionary {-}{}{}dsp.h File Reference}{160}
606\contentsline {subsubsection}{\numberline {8.10.1}Detailed Description}{160}
607\contentsline {subsection}{\numberline {8.11}bpmdsp/calculate\_\discretionary {-}{}{}filter\_\discretionary {-}{}{}coefficients.c File Reference}{162}
608\contentsline {subsubsection}{\numberline {8.11.1}Detailed Description}{162}
609\contentsline {subsection}{\numberline {8.12}bpmdsp/create\_\discretionary {-}{}{}filter.c File Reference}{162}
610\contentsline {subsubsection}{\numberline {8.12.1}Detailed Description}{162}
611\contentsline {subsection}{\numberline {8.13}bpmdsp/create\_\discretionary {-}{}{}resonator\_\discretionary {-}{}{}representation.c File Reference}{163}
612\contentsline {subsubsection}{\numberline {8.13.1}Detailed Description}{163}
613\contentsline {subsection}{\numberline {8.14}bpmdsp/create\_\discretionary {-}{}{}splane\_\discretionary {-}{}{}representation.c File Reference}{163}
614\contentsline {subsubsection}{\numberline {8.14.1}Detailed Description}{163}
615\contentsline {subsection}{\numberline {8.15}bpmdsp/ddc.c File Reference}{163}
616\contentsline {subsubsection}{\numberline {8.15.1}Detailed Description}{163}
617\contentsline {subsection}{\numberline {8.16}bpmdsp/delete\_\discretionary {-}{}{}filter.c File Reference}{164}
618\contentsline {subsubsection}{\numberline {8.16.1}Detailed Description}{164}
619\contentsline {subsection}{\numberline {8.17}bpmdsp/discrete\_\discretionary {-}{}{}fourier\_\discretionary {-}{}{}transforms.c File Reference}{164}
620\contentsline {subsubsection}{\numberline {8.17.1}Detailed Description}{164}
621\contentsline {subsection}{\numberline {8.18}bpmdsp/filter\_\discretionary {-}{}{}impulse\_\discretionary {-}{}{}response.c File Reference}{165}
622\contentsline {subsubsection}{\numberline {8.18.1}Detailed Description}{165}
623\contentsline {subsection}{\numberline {8.19}bpmdsp/filter\_\discretionary {-}{}{}step\_\discretionary {-}{}{}response.c File Reference}{165}
624\contentsline {subsubsection}{\numberline {8.19.1}Detailed Description}{165}
625\contentsline {subsection}{\numberline {8.20}bpmdsp/gaussian\_\discretionary {-}{}{}filter\_\discretionary {-}{}{}coeffs.c File Reference}{166}
626\contentsline {subsubsection}{\numberline {8.20.1}Detailed Description}{166}
627\contentsline {subsection}{\numberline {8.21}bpmdsp/norm\_\discretionary {-}{}{}phase.c File Reference}{166}
628\contentsline {subsubsection}{\numberline {8.21.1}Detailed Description}{166}
629\contentsline {subsection}{\numberline {8.22}bpmdsp/normalise\_\discretionary {-}{}{}filter.c File Reference}{167}
630\contentsline {subsubsection}{\numberline {8.22.1}Detailed Description}{167}
631\contentsline {subsection}{\numberline {8.23}bpmdsp/print\_\discretionary {-}{}{}filter.c File Reference}{167}
632\contentsline {subsubsection}{\numberline {8.23.1}Detailed Description}{167}
633\contentsline {subsection}{\numberline {8.24}bpmdsp/print\_\discretionary {-}{}{}filter\_\discretionary {-}{}{}representation.c File Reference}{167}
634\contentsline {subsubsection}{\numberline {8.24.1}Detailed Description}{167}
635\contentsline {subsection}{\numberline {8.25}bpmdsp/zplane\_\discretionary {-}{}{}transform.c File Reference}{168}
636\contentsline {subsubsection}{\numberline {8.25.1}Detailed Description}{168}
637\contentsline {subsection}{\numberline {8.26}bpminterface/bpm\_\discretionary {-}{}{}interface.h File Reference}{168}
638\contentsline {subsubsection}{\numberline {8.26.1}Detailed Description}{168}
639\contentsline {subsection}{\numberline {8.27}bpmmessages/bpm\_\discretionary {-}{}{}error.c File Reference}{169}
640\contentsline {subsubsection}{\numberline {8.27.1}Detailed Description}{169}
641\contentsline {subsection}{\numberline {8.28}bpmmessages/bpm\_\discretionary {-}{}{}messages.h File Reference}{170}
642\contentsline {subsubsection}{\numberline {8.28.1}Detailed Description}{170}
643\contentsline {subsection}{\numberline {8.29}bpmmessages/bpm\_\discretionary {-}{}{}warning.c File Reference}{170}
644\contentsline {subsubsection}{\numberline {8.29.1}Detailed Description}{170}
645\contentsline {subsection}{\numberline {8.30}bpmnr/bpm\_\discretionary {-}{}{}nr.h File Reference}{171}
646\contentsline {subsubsection}{\numberline {8.30.1}Detailed Description}{171}
647\contentsline {subsection}{\numberline {8.31}bpmnr/dround.c File Reference}{175}
648\contentsline {subsubsection}{\numberline {8.31.1}Detailed Description}{175}
649\contentsline {subsection}{\numberline {8.32}bpmnr/gsl\_\discretionary {-}{}{}blas.c File Reference}{175}
650\contentsline {subsubsection}{\numberline {8.32.1}Detailed Description}{175}
651\contentsline {subsection}{\numberline {8.33}bpmnr/gsl\_\discretionary {-}{}{}block.c File Reference}{176}
652\contentsline {subsubsection}{\numberline {8.33.1}Detailed Description}{176}
653\contentsline {subsection}{\numberline {8.34}bpmnr/gsl\_\discretionary {-}{}{}eigen.c File Reference}{176}
654\contentsline {subsubsection}{\numberline {8.34.1}Detailed Description}{176}
655\contentsline {subsection}{\numberline {8.35}bpmnr/gsl\_\discretionary {-}{}{}linalg.c File Reference}{177}
656\contentsline {subsubsection}{\numberline {8.35.1}Detailed Description}{177}
657\contentsline {subsection}{\numberline {8.36}bpmnr/gsl\_\discretionary {-}{}{}matrix.c File Reference}{178}
658\contentsline {subsubsection}{\numberline {8.36.1}Detailed Description}{178}
659\contentsline {subsection}{\numberline {8.37}bpmnr/gsl\_\discretionary {-}{}{}vector.c File Reference}{178}
660\contentsline {subsubsection}{\numberline {8.37.1}Detailed Description}{178}
661\contentsline {subsection}{\numberline {8.38}bpmnr/nr\_\discretionary {-}{}{}checks.c File Reference}{179}
662\contentsline {subsubsection}{\numberline {8.38.1}Detailed Description}{179}
663\contentsline {subsubsection}{\numberline {8.38.2}Function Documentation}{179}
664\contentsline {paragraph}{\numberline {8.38.2.1}nr\_\discretionary {-}{}{}is\_\discretionary {-}{}{}int}{179}
665\contentsline {subsection}{\numberline {8.39}bpmnr/nr\_\discretionary {-}{}{}complex.c File Reference}{180}
666\contentsline {subsubsection}{\numberline {8.39.1}Detailed Description}{180}
667\contentsline {subsection}{\numberline {8.40}bpmnr/nr\_\discretionary {-}{}{}fit.c File Reference}{180}
668\contentsline {subsubsection}{\numberline {8.40.1}Detailed Description}{180}
669\contentsline {subsection}{\numberline {8.41}bpmnr/nr\_\discretionary {-}{}{}four1.c File Reference}{181}
670\contentsline {subsubsection}{\numberline {8.41.1}Detailed Description}{181}
671\contentsline {subsection}{\numberline {8.42}bpmnr/nr\_\discretionary {-}{}{}gammln.c File Reference}{181}
672\contentsline {subsubsection}{\numberline {8.42.1}Detailed Description}{181}
673\contentsline {subsection}{\numberline {8.43}bpmnr/nr\_\discretionary {-}{}{}gammq.c File Reference}{182}
674\contentsline {subsubsection}{\numberline {8.43.1}Detailed Description}{182}
675\contentsline {subsection}{\numberline {8.44}bpmnr/nr\_\discretionary {-}{}{}gcf.c File Reference}{182}
676\contentsline {subsubsection}{\numberline {8.44.1}Detailed Description}{182}
677\contentsline {subsection}{\numberline {8.45}bpmnr/nr\_\discretionary {-}{}{}gser.c File Reference}{182}
678\contentsline {subsubsection}{\numberline {8.45.1}Detailed Description}{182}
679\contentsline {subsection}{\numberline {8.46}bpmnr/nr\_\discretionary {-}{}{}levmar.c File Reference}{183}
680\contentsline {subsubsection}{\numberline {8.46.1}Detailed Description}{183}
681\contentsline {subsection}{\numberline {8.47}bpmnr/nr\_\discretionary {-}{}{}median.c File Reference}{184}
682\contentsline {subsubsection}{\numberline {8.47.1}Detailed Description}{184}
683\contentsline {subsection}{\numberline {8.48}bpmnr/nr\_\discretionary {-}{}{}quadinterpol.c File Reference}{185}
684\contentsline {subsubsection}{\numberline {8.48.1}Detailed Description}{185}
685\contentsline {subsection}{\numberline {8.49}bpmnr/nr\_\discretionary {-}{}{}ran1.c File Reference}{185}
686\contentsline {subsubsection}{\numberline {8.49.1}Detailed Description}{185}
687\contentsline {subsection}{\numberline {8.50}bpmnr/nr\_\discretionary {-}{}{}rangauss.c File Reference}{185}
688\contentsline {subsubsection}{\numberline {8.50.1}Detailed Description}{185}
689\contentsline {subsection}{\numberline {8.51}bpmnr/nr\_\discretionary {-}{}{}ranuniform.c File Reference}{186}
690\contentsline {subsubsection}{\numberline {8.51.1}Detailed Description}{186}
691\contentsline {subsection}{\numberline {8.52}bpmnr/nr\_\discretionary {-}{}{}realft.c File Reference}{186}
692\contentsline {subsubsection}{\numberline {8.52.1}Detailed Description}{186}
693\contentsline {subsection}{\numberline {8.53}bpmnr/nr\_\discretionary {-}{}{}seed.c File Reference}{187}
694\contentsline {subsubsection}{\numberline {8.53.1}Detailed Description}{187}
695\contentsline {subsubsection}{\numberline {8.53.2}Variable Documentation}{187}
696\contentsline {paragraph}{\numberline {8.53.2.1}bpm\_\discretionary {-}{}{}rseed}{187}
697\contentsline {subsection}{\numberline {8.54}bpmnr/nr\_\discretionary {-}{}{}select.c File Reference}{187}
698\contentsline {subsubsection}{\numberline {8.54.1}Detailed Description}{187}
699\contentsline {subsection}{\numberline {8.55}bpmnr/nr\_\discretionary {-}{}{}sinc.c File Reference}{188}
700\contentsline {subsubsection}{\numberline {8.55.1}Detailed Description}{188}
701\contentsline {subsection}{\numberline {8.56}bpmorbit/bpm\_\discretionary {-}{}{}orbit.h File Reference}{188}
702\contentsline {subsubsection}{\numberline {8.56.1}Detailed Description}{188}
703\contentsline {subsection}{\numberline {8.57}bpmorbit/get\_\discretionary {-}{}{}bpmhit.c File Reference}{189}
704\contentsline {subsubsection}{\numberline {8.57.1}Detailed Description}{189}
705\contentsline {subsection}{\numberline {8.58}bpmorbit/vm.c File Reference}{190}
706\contentsline {subsubsection}{\numberline {8.58.1}Detailed Description}{190}
707\contentsline {subsection}{\numberline {8.59}bpmprocess/bpm\_\discretionary {-}{}{}process.h File Reference}{190}
708\contentsline {subsubsection}{\numberline {8.59.1}Detailed Description}{190}
709\contentsline {subsection}{\numberline {8.60}bpmprocess/check\_\discretionary {-}{}{}saturation.c File Reference}{192}
710\contentsline {subsubsection}{\numberline {8.60.1}Detailed Description}{192}
711\contentsline {subsection}{\numberline {8.61}bpmprocess/correct\_\discretionary {-}{}{}gain.c File Reference}{192}
712\contentsline {subsubsection}{\numberline {8.61.1}Detailed Description}{192}
713\contentsline {subsection}{\numberline {8.62}bpmprocess/ddc\_\discretionary {-}{}{}sample\_\discretionary {-}{}{}waveform.c File Reference}{193}
714\contentsline {subsubsection}{\numberline {8.62.1}Detailed Description}{193}
715\contentsline {subsection}{\numberline {8.63}bpmprocess/ddc\_\discretionary {-}{}{}waveform.c File Reference}{193}
716\contentsline {subsubsection}{\numberline {8.63.1}Detailed Description}{193}
717\contentsline {subsection}{\numberline {8.64}bpmprocess/downmix\_\discretionary {-}{}{}waveform.c File Reference}{194}
718\contentsline {subsubsection}{\numberline {8.64.1}Detailed Description}{194}
719\contentsline {subsection}{\numberline {8.65}bpmprocess/fft\_\discretionary {-}{}{}waveform.c File Reference}{194}
720\contentsline {subsubsection}{\numberline {8.65.1}Detailed Description}{194}
721\contentsline {subsection}{\numberline {8.66}bpmprocess/fit\_\discretionary {-}{}{}diodepulse.c File Reference}{195}
722\contentsline {subsubsection}{\numberline {8.66.1}Detailed Description}{195}
723\contentsline {subsection}{\numberline {8.67}bpmprocess/fit\_\discretionary {-}{}{}fft.c File Reference}{195}
724\contentsline {subsubsection}{\numberline {8.67.1}Detailed Description}{195}
725\contentsline {subsection}{\numberline {8.68}bpmprocess/fit\_\discretionary {-}{}{}waveform.c File Reference}{196}
726\contentsline {subsubsection}{\numberline {8.68.1}Detailed Description}{196}
727\contentsline {subsection}{\numberline {8.69}bpmprocess/get\_\discretionary {-}{}{}IQ.c File Reference}{197}
728\contentsline {subsubsection}{\numberline {8.69.1}Detailed Description}{197}
729\contentsline {subsection}{\numberline {8.70}bpmprocess/get\_\discretionary {-}{}{}pedestal.c File Reference}{197}
730\contentsline {subsubsection}{\numberline {8.70.1}Detailed Description}{197}
731\contentsline {subsection}{\numberline {8.71}bpmprocess/get\_\discretionary {-}{}{}pos.c File Reference}{198}
732\contentsline {subsubsection}{\numberline {8.71.1}Detailed Description}{198}
733\contentsline {subsection}{\numberline {8.72}bpmprocess/get\_\discretionary {-}{}{}slope.c File Reference}{198}
734\contentsline {subsubsection}{\numberline {8.72.1}Detailed Description}{198}
735\contentsline {subsection}{\numberline {8.73}bpmprocess/get\_\discretionary {-}{}{}t0.c File Reference}{198}
736\contentsline {subsubsection}{\numberline {8.73.1}Detailed Description}{198}
737\contentsline {subsection}{\numberline {8.74}bpmprocess/postprocess\_\discretionary {-}{}{}waveform.c File Reference}{199}
738\contentsline {subsubsection}{\numberline {8.74.1}Detailed Description}{199}
739\contentsline {subsection}{\numberline {8.75}bpmprocess/process\_\discretionary {-}{}{}caltone.c File Reference}{199}
740\contentsline {subsubsection}{\numberline {8.75.1}Detailed Description}{199}
741\contentsline {subsection}{\numberline {8.76}bpmprocess/process\_\discretionary {-}{}{}diode.c File Reference}{200}
742\contentsline {subsubsection}{\numberline {8.76.1}Detailed Description}{200}
743\contentsline {subsection}{\numberline {8.77}bpmprocess/process\_\discretionary {-}{}{}dipole.c File Reference}{200}
744\contentsline {subsubsection}{\numberline {8.77.1}Detailed Description}{200}
745\contentsline {subsection}{\numberline {8.78}bpmprocess/process\_\discretionary {-}{}{}monopole.c File Reference}{201}
746\contentsline {subsubsection}{\numberline {8.78.1}Detailed Description}{201}
747\contentsline {subsection}{\numberline {8.79}bpmprocess/process\_\discretionary {-}{}{}waveform.c File Reference}{201}
748\contentsline {subsubsection}{\numberline {8.79.1}Detailed Description}{201}
749\contentsline {subsection}{\numberline {8.80}bpmrf/bpm\_\discretionary {-}{}{}rf.h File Reference}{202}
750\contentsline {subsubsection}{\numberline {8.80.1}Detailed Description}{202}
751\contentsline {subsection}{\numberline {8.81}bpmrf/rf\_\discretionary {-}{}{}addLO.c File Reference}{203}
752\contentsline {subsubsection}{\numberline {8.81.1}Detailed Description}{203}
753\contentsline {subsection}{\numberline {8.82}bpmrf/rf\_\discretionary {-}{}{}amplify.c File Reference}{203}
754\contentsline {subsubsection}{\numberline {8.82.1}Detailed Description}{203}
755\contentsline {subsection}{\numberline {8.83}bpmrf/rf\_\discretionary {-}{}{}amplify\_\discretionary {-}{}{}complex.c File Reference}{204}
756\contentsline {subsubsection}{\numberline {8.83.1}Detailed Description}{204}
757\contentsline {subsection}{\numberline {8.84}bpmrf/rf\_\discretionary {-}{}{}mixer.c File Reference}{204}
758\contentsline {subsubsection}{\numberline {8.84.1}Detailed Description}{204}
759\contentsline {subsection}{\numberline {8.85}bpmrf/rf\_\discretionary {-}{}{}phase\_\discretionary {-}{}{}shifter.c File Reference}{205}
760\contentsline {subsubsection}{\numberline {8.85.1}Detailed Description}{205}
761\contentsline {subsection}{\numberline {8.86}bpmrf/rf\_\discretionary {-}{}{}rectify.c File Reference}{205}
762\contentsline {subsubsection}{\numberline {8.86.1}Detailed Description}{205}
763\contentsline {subsection}{\numberline {8.87}bpmrf/rf\_\discretionary {-}{}{}setup.c File Reference}{205}
764\contentsline {subsubsection}{\numberline {8.87.1}Detailed Description}{205}
765\contentsline {subsection}{\numberline {8.88}bpmsimulation/add\_\discretionary {-}{}{}mode\_\discretionary {-}{}{}response.c File Reference}{206}
766\contentsline {subsubsection}{\numberline {8.88.1}Detailed Description}{206}
767\contentsline {subsection}{\numberline {8.89}bpmsimulation/bpm\_\discretionary {-}{}{}simulation.h File Reference}{206}
768\contentsline {subsubsection}{\numberline {8.89.1}Detailed Description}{206}
769\contentsline {subsection}{\numberline {8.90}bpmsimulation/digitise.c File Reference}{208}
770\contentsline {subsubsection}{\numberline {8.90.1}Detailed Description}{208}
771\contentsline {subsection}{\numberline {8.91}bpmsimulation/generate\_\discretionary {-}{}{}bpmsignal.c File Reference}{208}
772\contentsline {subsubsection}{\numberline {8.91.1}Detailed Description}{208}
773\contentsline {subsection}{\numberline {8.92}bpmsimulation/generate\_\discretionary {-}{}{}diodesignal.c File Reference}{209}
774\contentsline {subsubsection}{\numberline {8.92.1}Detailed Description}{209}
775\contentsline {subsection}{\numberline {8.93}bpmsimulation/get\_\discretionary {-}{}{}mode\_\discretionary {-}{}{}amplitude.c File Reference}{209}
776\contentsline {subsubsection}{\numberline {8.93.1}Detailed Description}{209}
777\contentsline {subsection}{\numberline {8.94}bpmsimulation/get\_\discretionary {-}{}{}mode\_\discretionary {-}{}{}response.c File Reference}{209}
778\contentsline {subsubsection}{\numberline {8.94.1}Detailed Description}{209}
779\contentsline {subsection}{\numberline {8.95}bpmsimulation/set\_\discretionary {-}{}{}temp.c File Reference}{210}
780\contentsline {subsubsection}{\numberline {8.95.1}Detailed Description}{210}
781\contentsline {subsection}{\numberline {8.96}bpmsimulation/set\_\discretionary {-}{}{}time.c File Reference}{210}
782\contentsline {subsubsection}{\numberline {8.96.1}Detailed Description}{210}
783\contentsline {subsection}{\numberline {8.97}bpmwf/bpm\_\discretionary {-}{}{}wf.h File Reference}{211}
784\contentsline {subsubsection}{\numberline {8.97.1}Detailed Description}{211}
785\contentsline {subsection}{\numberline {8.98}bpmwf/complexwf.c File Reference}{214}
786\contentsline {subsubsection}{\numberline {8.98.1}Detailed Description}{214}
787\contentsline {subsection}{\numberline {8.99}bpmwf/doublewf.c File Reference}{215}
788\contentsline {subsubsection}{\numberline {8.99.1}Detailed Description}{215}
789\contentsline {subsection}{\numberline {8.100}bpmwf/freq\_\discretionary {-}{}{}to\_\discretionary {-}{}{}sample.c File Reference}{216}
790\contentsline {subsubsection}{\numberline {8.100.1}Detailed Description}{216}
791\contentsline {subsection}{\numberline {8.101}bpmwf/intwf.c File Reference}{216}
792\contentsline {subsubsection}{\numberline {8.101.1}Detailed Description}{216}
793\contentsline {subsection}{\numberline {8.102}bpmwf/sample\_\discretionary {-}{}{}to\_\discretionary {-}{}{}freq.c File Reference}{217}
794\contentsline {subsubsection}{\numberline {8.102.1}Detailed Description}{217}
795\contentsline {subsection}{\numberline {8.103}bpmwf/sample\_\discretionary {-}{}{}to\_\discretionary {-}{}{}time.c File Reference}{218}
796\contentsline {subsubsection}{\numberline {8.103.1}Detailed Description}{218}
797\contentsline {subsection}{\numberline {8.104}bpmwf/time\_\discretionary {-}{}{}to\_\discretionary {-}{}{}sample.c File Reference}{218}
798\contentsline {subsubsection}{\numberline {8.104.1}Detailed Description}{218}
799\contentsline {subsection}{\numberline {8.105}bpmwf/wfstats.c File Reference}{219}
800\contentsline {subsubsection}{\numberline {8.105.1}Detailed Description}{219}
801