function ndsyev(Sij)
	%[S,Q] = ndsyev(A, order)
	%
	% parallelised eigenvalue decomposition of N-D symmetric matrix
	% A is an m x m x ... array
	% in each page of A, an m x m real, single, symmetric matrix is stored
	% ndsyev finds the eigendecomposition of each page of A
	% and stores it in a big-ass array
	%
	% S is a  m x ... array containing the eigenvalues of each page of A
	% Q is an m x m x ... array, whose columns correspond to eigenvectors of
	% A
	%
	% order is an optional parameter to specify how the eigenvalues should
	% be ordered. four values are permitted:
	%
	% s-			descending order
	% s+			ascending order
	% u-			descending order of magnitude
	% u+			ascending order of magnitude
	%
	% the default is descending order