# Documentation of partial_autocorr

Global Index (all files) (short | long) | Local Index (files in subdir) (short | long)

## Function Synopsis

`[alpha, Alpha] = partial_autocorr(x, nest);`

## Help text

```
alpha = partial_autocorr(x, lags);

Inputs:
x is the time series
lags is 0:length(x) unless otherwise specified
(I suggest lags = [0:20], or this will take a while)

Outputs:
alpha is the partial autocorrelation vector

```

## Listing of function partial_autocorr

```function [alpha, Alpha] = partial_autocorr(x, nest);

if ~all([length(size(x))==2 , ismember(1, size(x))]);
error('x must be a vector');
end

if nargin == 1;
nest = (length(x));
end

nest = nest(nest >= 0);
nest = length(nest)-1;

x = x(:);
ntim = length(x);

fi = repmat(NaN, [nest+1 1]);
for i = 1:(nest+1);
%  size(x(1:(end-i+1)))
%  size(x((1+i-1):end))
fi(i) = x(1:(end-i+1))'*x((1+i-1):end)/(ntim-i);
end

alph = zeros(nest);
alph(1,1) = fi(2)/fi(1);

for i = 2:nest;
alph(i,i) = fi(i+1)/fi(1) - alph(i-1,1:(i-1))*fi((i):-1:2)/fi(1);
alph(i,i) = alph(i,i)/(1-alph(i-1,((i-1):-1:1))*fi((i):-1:2)/fi(1));
for j = 1:(i-1);
alph(i,j) = alph(i-1,j)-alph(i,i)*alph(i-1,i-j);
end; end;

alpha = [1 diag(alph)'];
if nargout == 2;
Alpha = alph;
end
```