spm_orthpoly.m 738 B

123456789101112131415161718192021222324
  1. function C = spm_orthpoly(N,K)
  2. % Create orthonormal polynomial basis functions
  3. % FORMAT C = spm_orthpoly(N,[K])
  4. % N - dimension
  5. % K - order
  6. %__________________________________________________________________________
  7. % spm_orthpoly creates a matrix for the first few basis functions of an
  8. % orthogonal polynomial expansion
  9. %__________________________________________________________________________
  10. % Copyright (C) 2007 Wellcome Trust Centre for Neuroimaging
  11. % Karl Friston
  12. % $Id: spm_orthpoly.m 5900 2014-02-27 21:54:51Z karl $
  13. %--------------------------------------------------------------------------
  14. if nargin == 1, K = N; end
  15. C = zeros(N,K + 1);
  16. x = (1:N)';
  17. for i = 0:K
  18. C(:,i + 1) = x.^i;
  19. end
  20. C = spm_orth(C,'norm');