Mercurial > octave-nkf
diff scripts/signal/diffpara.m @ 3426:f8dde1807dee
[project @ 2000-01-13 08:40:00 by jwe]
author | jwe |
---|---|
date | Thu, 13 Jan 2000 08:40:53 +0000 |
parents | 041ea33fbbf4 |
children | 858695b3ed62 |
line wrap: on
line diff
--- a/scripts/signal/diffpara.m Thu Jan 13 08:32:16 2000 +0000 +++ b/scripts/signal/diffpara.m Thu Jan 13 08:40:53 2000 +0000 @@ -1,15 +1,15 @@ ## Copyright (C) 1995, 1996, 1997 Friedrich Leisch -## +## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2, or (at your option) ## any later version. -## +## ## This program is distributed in the hope that it will be useful, but ## WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -## General Public License for more details. -## +## General Public License for more details. +## ## You should have received a copy of the GNU General Public License ## along with this file. If not, write to the Free Software Foundation, ## 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. @@ -30,12 +30,12 @@ ## ## Reference: Brockwell, Peter J. & Davis, Richard A. Time Series: ## Theory and Methods Springer 1987 - + ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at> ## Description: Estimate the fractional differencing parameter function [d, D] = diffpara (X, a, b) - + if ((nargin < 1) || (nargin > 3)) usage ("[d [, D]] = diffpara (X [, a [, b]])"); else @@ -54,30 +54,30 @@ a = 1; endif endif - + if !(is_scalar (a) && is_scalar (b)) error ("diffpara: a and b must be scalars"); endif - + D = zeros (b - a + 1, k); - + for l = 1:k - + w = 2 * pi * (1 : n-1) / n; - + x = 2 * log (abs( 1 - exp (-i*w))); y = log (periodogram (X(2:n,l))); - + x = center (x); y = center (y); - + for m = a:b D(m-a+1) = - x(1:m) * y(1:m) / sumsq (x(1:m)); endfor - + endfor - + d = mean (D); - + endfunction