comparison m-toolbox/html_help/help/ug/sigproc_diff.html @ 0:f0afece42f48

Import.
author Daniele Nicolodi <nicolodi@science.unitn.it>
date Wed, 23 Nov 2011 19:22:13 +0100
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:f0afece42f48
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2 "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
3
4 <html lang="en">
5 <head>
6 <meta name="generator" content=
7 "HTML Tidy for Mac OS X (vers 1st December 2004), see www.w3.org">
8 <meta http-equiv="Content-Type" content=
9 "text/html; charset=us-ascii">
10
11 <title>Discrete Derivative (LTPDA Toolbox)</title>
12 <link rel="stylesheet" href="docstyle.css" type="text/css">
13 <meta name="generator" content="DocBook XSL Stylesheets V1.52.2">
14 <meta name="description" content=
15 "Presents an overview of the features, system requirements, and starting the toolbox.">
16 </head>
17
18 <body>
19 <a name="top_of_page" id="top_of_page"></a>
20
21 <p style="font-size:1px;">&nbsp;</p>
22
23 <table class="nav" summary="Navigation aid" border="0" width=
24 "100%" cellpadding="0" cellspacing="0">
25 <tr>
26 <td valign="baseline"><b>LTPDA Toolbox</b></td><td><a href="../helptoc.html">contents</a></td>
27
28 <td valign="baseline" align="right"><a href=
29 "sigproc_applyfilt.html"><img src="b_prev.gif" border="0" align=
30 "bottom" alt="Applying digital filters to data"></a>&nbsp;&nbsp;&nbsp;<a href=
31 "sigproc_spec.html"><img src="b_next.gif" border="0" align=
32 "bottom" alt="Spectral Estimation"></a></td>
33 </tr>
34 </table>
35
36 <h1 class="title"><a name="f3-12899" id="f3-12899"></a>Discrete Derivative</h1>
37 <hr>
38
39 <p>
40
41 <!-- ================================================== -->
42 <!-- BEGIN CONTENT FILE -->
43 <!-- ================================================== -->
44 <!-- ===== link box: Begin ===== -->
45 <p>
46 <table border="1" width="80%">
47 <tr>
48 <td>
49 <table border="0" cellpadding="5" class="categorylist" width="100%">
50 <colgroup>
51 <col width="37%"/>
52 <col width="63%"/>
53 </colgroup>
54 <tbody>
55 <tr valign="top">
56 <td>
57 <a href="#description">Description</a>
58 </td>
59 <td>Discrete derivative estimation in LTPDA.</td>
60 </tr>
61 <tr valign="top">
62 <td>
63 <a href="#algorithm">Algorithm</a>
64 </td>
65 <td>Derivatives Algorithms.</td>
66 </tr>
67 <tr valign="top">
68 <td>
69 <a href="#examples">Examples</a>
70 </td>
71 <td>Usage examples of discrete derivative estimation tools.</td>
72 </tr>
73 <tr valign="top">
74 <td>
75 <a href="#references">References</a>
76 </td>
77 <td>Bibliographic references.</td>
78 </tr>
79 </tbody>
80 </table>
81 </td>
82 </tr>
83 </table>
84 </p>
85 <!-- ===== link box: End ====== -->
86
87
88
89 <p>
90
91 </p>
92
93
94 <h2><a name="description">Derivative calculation for dicrete data series</a></h2>
95
96 <p>
97 Derivative estimation on discrete data series is implemented by the function
98 <a href="matlab:doc('ao/diff')">ao/diff</a>.
99 This function embeds several algorithms for the calculation
100 of zero, first and second order derivative. Where with zero order derivative we intend
101 a particular category of data smoothers [1].
102 </p>
103
104
105
106 <h2><a name="algorithm">Algorithm</a></h2>
107
108 <p>
109 <table cellspacing="0" class="body" cellpadding="2" border="0" width="80%">
110 <colgroup>
111 <col width="15%"/>
112 <col width="85%"/>
113 </colgroup>
114 <thead>
115 <tr valign="top">
116 <th class="categorylist">Method</th>
117 <th class="categorylist">Description</th>
118 </tr>
119 </thead>
120 <tbody>
121 <tr valign="top">
122 <td bgcolor="#f3f4f5">
123 <p><span class="string">'2POINT'</span></p>
124 </td>
125 <td bgcolor="#f3f4f5">
126 <p>
127 Compute first derivative with two point equation according to:
128 <div align="center">
129 <IMG src="images/sigproc_diff_algo01.gif" align="center" border="0">
130 </div>
131 </p>
132 </td>
133 </tr>
134 <tr valign="top">
135 <td bgcolor="#f3f4f5">
136 <p><span class="string">'3POINT'</span></p>
137 </td>
138 <td bgcolor="#f3f4f5">
139 <p>
140 Compute first derivative with three point equation according to:
141 <div align="center">
142 <IMG src="images/sigproc_diff_algo02.gif" align="center" border="0">
143 </div>
144 </p>
145 </td>
146 </tr>
147 <tr valign="top">
148 <td bgcolor="#f3f4f5">
149 <p><span class="string">'5POINT'</span></p>
150 </td>
151 <td bgcolor="#f3f4f5">
152 <p>
153 Compute first derivative with five point equation according to:
154 <div align="center">
155 <IMG src="images/sigproc_diff_algo03.gif" align="center" border="0">
156 </div>
157 </p>
158 </td>
159 </tr>
160 <tr valign="top">
161 <td bgcolor="#f3f4f5">
162 <p><span class="string">'FPS'</span></p>
163 </td>
164 <td bgcolor="#f3f4f5">
165 <p>
166 Five Point Stencil is a generalized method to calculate zero, first and second
167 order discrete derivative of a given time series. Derivative approximation,
168 at a given time <i>t = kT</i> (<i>k</i> being an integer and <i>T</i>
169 being the sampling time), is calculated by means of finite differences
170 between the element at <i>t</i> with its four neighbors:
171 <div align="center">
172 <IMG src="images/sigproc_diff_algo04.gif" align="center" border="0">
173 </div>
174 </p>
175 <p>
176 It can be demonstrated that the coefficients of the expansion can be
177 expressed as a function of one of them [1]. This allows the construction
178 of a family of discrete derivative estimators characterized by a
179 good low frequency accuracy and a smoothing behavior at high frequencies
180 (near the nyquist frequency). <br/>
181 Non-trivial values for the <span class="string">'COEFF'</span> parameter are:
182 <ul>
183 <li> Parabolic fit approximation <br/>
184 These coefficients can be obtained by a parabolic fit procedure on
185 a generic set of data [1].
186 <ul>
187 <li> Zeroth order -3/35
188 <li> First order -1/5
189 <li> Second order 2/7
190 </ul>
191 <li> Taylor series expansion <br/>
192 These coefficients can be obtained by a series expansion of a generic set of data [1 - 3].
193 <ul>
194 <li> First order 1/12
195 <li> Second order -1/12
196 </ul>
197 <li> PI <br/>
198 This coefficient allows to define a second derivative estimator with
199 a notch feature at the nyquist frequency [1].
200 <ul>
201 <li> Second order 1/4
202 </ul>
203 </ul>
204 </p>
205 </td>
206 </tr>
207 </tbody>
208 </table>
209 </p>
210
211 <h2><a name="examples"></a>Examples</h2>
212
213 Consider <tt>a</tt> as a time series analysis object. First and second
214 derivative of <tt>a</tt> can be easily obtained with a call to
215 <a href="matlab:doc('ao/diff')">diff</a>. Please refer to
216 <a href="matlab:doc('ao/diff')">ao/diff</a> documantation page for the
217 meaning of any parameter.
218 <p>
219 Frequency response of first and second order estimators is reported in
220 figures 1 and 2 respectively.
221 </p>
222
223 <h3>First derivative</h3>
224
225 <div class="fragment"><pre>
226
227 pl = plist(...
228 <span class="string">'method'</span>, <span class="string">'2POINT'</span>);
229 b = diff(a, pl);
230
231 pl = plist(...
232 <span class="string">'method'</span>, <span class="string">'ORDER2SMOOTH'</span>);
233 c = diff(a, pl);
234
235 pl = plist(...
236 <span class="string">'method'</span>, <span class="string">'3POINT'</span>);
237 d = diff(a, pl);
238
239 pl = plist(...
240 <span class="string">'method'</span>, <span class="string">'5POINT'</span>);
241 e = diff(a, pl);
242
243 pl = plist(...
244 <span class="string">'method'</span>, <span class="string">'FPS'</span>, ...
245 <span class="string">'ORDER'</span>, <span class="string">'FIRST'</span>, ...
246 <span class="string">'COEFF'</span>, -1/5);
247 f = diff(a, pl);
248
249 </pre></div>
250
251 <h3>Second derivative</h3>
252
253 <div class="fragment"><pre>
254
255 pl = plist(...
256 <span class="string">'method'</span>, <span class="string">'FPS'</span>, ...
257 <span class="string">'ORDER'</span>, <span class="string">'SECOND'</span>, ...
258 <span class="string">'COEFF'</span>, 2/7);
259 b = diff(a, pl);
260
261 pl = plist(...
262 <span class="string">'method'</span>, <span class="string">'FPS'</span>, ...
263 <span class="string">'ORDER'</span>, <span class="string">'SECOND'</span>, ...
264 <span class="string">'COEFF'</span>, -1/12);
265 c = diff(a, pl);
266
267 pl = plist(...
268 <span class="string">'method'</span>, <span class="string">'FPS'</span>, ...
269 <span class="string">'ORDER'</span>, <span class="string">'SECOND'</span>, ...
270 <span class="string">'COEFF'</span>, 1/4);
271 d = diff(a, pl);
272
273 </pre></div>
274
275
276 <div align="center">
277 <p>
278 <IMG src="images/sigproc_diff_algo05.png" align="center" border="0">
279 </p>
280 <p>
281 <b> Figure 1:</b> Frequency response of first derivative estimators.
282 </p>
283
284 </div>
285 <div align="center">
286 <p>
287 </p>
288 <IMG src="images/sigproc_diff_algo06.png" align="center" border="0">
289 <p>
290 <b> Figure 2:</b> Frequency response of second derivative estimators.
291 </p>
292 </div>
293
294
295 <h2><a name="references">References</a></h2>
296
297 <ol>
298 <li> L. Ferraioli, M. Hueller and S. Vitale, Discrete derivative
299 estimation in LISA Pathfinder data reduction,
300 <a href="matlab:web('http://www.iop.org/EJ/abstract/0264-9381/26/9/094013/','-browser')">Class. Quantum Grav. 26 (2009) 094013.</a>. <br/>
301 L. Ferraioli, M. Hueller and S. Vitale, Discrete derivative
302 estimation in LISA Pathfinder data reduction
303 <a href="matlab:web('http://arxiv.org/abs/0903.0324v1','-browser')">arXiv:0903.0324v1</a>
304 <li> Steven E. Koonin and Dawn C. Meredith, Computational Physics, Westview Press (1990).
305 <li> John H. Mathews, Computer derivations of numerical differentiation formulae,
306 <i>Int. J. Math. Educ. Sci. Technol.<i>, 34:2, 280 - 287.
307 </ol>
308
309
310
311
312
313
314
315
316
317 </p>
318
319 <br>
320 <br>
321 <table class="nav" summary="Navigation aid" border="0" width=
322 "100%" cellpadding="0" cellspacing="0">
323 <tr valign="top">
324 <td align="left" width="20"><a href="sigproc_applyfilt.html"><img src=
325 "b_prev.gif" border="0" align="bottom" alt=
326 "Applying digital filters to data"></a>&nbsp;</td>
327
328 <td align="left">Applying digital filters to data</td>
329
330 <td>&nbsp;</td>
331
332 <td align="right">Spectral Estimation</td>
333
334 <td align="right" width="20"><a href=
335 "sigproc_spec.html"><img src="b_next.gif" border="0" align=
336 "bottom" alt="Spectral Estimation"></a></td>
337 </tr>
338 </table><br>
339
340 <p class="copy">&copy;LTP Team</p>
341 </body>
342 </html>