function A_i = ppp_extract (A_u,input)
## usage: A_i = ppp_extract (A_u)
##
## Extracts the ith A_u matrix.
## Copyright (C) 1999 by Peter J. Gawthrop
## $Id$
[n,m] = size(A_u); # Size of composite A_u matrix
square = (n==m); # Its a square matrix so same U* on each input
if square
A_i = A_u; # All a_u the same
else
N = m; # Number of U* functions per input
n_u = n/m;
if floor(n_u) != n_u # Check that n_u is an integer
error("A_u must be square or be a column of square matrices");
endif
if input>n_u
error("Input index too large");
endif
## Extract the ith matrix
start = (input-1)*N;
range=(start+1:start+N);
A_i = A_u(range,:);
endif
endfunction