comparison scripts/signal/yulewalker.m @ 3426:f8dde1807dee

[project @ 2000-01-13 08:40:00 by jwe]
author jwe
date Thu, 13 Jan 2000 08:40:53 +0000
parents e4f4b2d26ee9
children 858695b3ed62
comparison
equal deleted inserted replaced
3425:8625164a0a39 3426:f8dde1807dee
1 ## Copyright (C) 1995, 1996, 1997 Friedrich Leisch 1 ## Copyright (C) 1995, 1996, 1997 Friedrich Leisch
2 ## 2 ##
3 ## This program is free software; you can redistribute it and/or modify 3 ## This program is free software; you can redistribute it and/or modify
4 ## it under the terms of the GNU General Public License as published by 4 ## it under the terms of the GNU General Public License as published by
5 ## the Free Software Foundation; either version 2, or (at your option) 5 ## the Free Software Foundation; either version 2, or (at your option)
6 ## any later version. 6 ## any later version.
7 ## 7 ##
8 ## This program is distributed in the hope that it will be useful, but 8 ## This program is distributed in the hope that it will be useful, but
9 ## WITHOUT ANY WARRANTY; without even the implied warranty of 9 ## WITHOUT ANY WARRANTY; without even the implied warranty of
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 ## General Public License for more details. 11 ## General Public License for more details.
12 ## 12 ##
13 ## You should have received a copy of the GNU General Public License 13 ## You should have received a copy of the GNU General Public License
14 ## along with this file. If not, write to the Free Software Foundation, 14 ## along with this file. If not, write to the Free Software Foundation,
15 ## 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 15 ## 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
16 16
17 ## usage: [a, v] = yulewalker (c) 17 ## usage: [a, v] = yulewalker (c)
18 ## 18 ##
19 ## fits an AR (p)-model with Yule-Walker estimates. 19 ## fits an AR (p)-model with Yule-Walker estimates.
20 ## c = [gamma_0, ..., gamma_p] autocovariances 20 ## c = [gamma_0, ..., gamma_p] autocovariances
21 ## a .... AR coefficients 21 ## a .... AR coefficients
22 ## v .... variance of white noise 22 ## v .... variance of white noise
23 23
24 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at> 24 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
25 ## Description: Fit AR model by Yule-Walker method 25 ## Description: Fit AR model by Yule-Walker method
26 26
27 function [a, v] = yulewalker (c) 27 function [a, v] = yulewalker (c)
28 28
29 p = length (c) - 1; 29 p = length (c) - 1;
30 30
31 if (columns (c) > 1) 31 if (columns (c) > 1)
32 c = c'; 32 c = c';
33 endif 33 endif
34 34
35 cp = c(2 : p+1); 35 cp = c(2 : p+1);
36 CP = zeros(p, p); 36 CP = zeros(p, p);
37 37
38 for i = 1:p 38 for i = 1:p
39 for j = 1:p 39 for j = 1:p
40 CP (i, j) = c (abs (i-j) + 1); 40 CP (i, j) = c (abs (i-j) + 1);
41 endfor 41 endfor
42 endfor 42 endfor
43 43
44 a = inv (CP) * cp; 44 a = inv (CP) * cp;
45 v = c(1) - a' * cp; 45 v = c(1) - a' * cp;
46 46
47 endfunction 47 endfunction
48
49
50
51 48
52 49
50
51
52