转自:https://blog.csdn.net/LQMIKU/article/details/79091030
Matlab源代码
参考以下代码1:
function H = hadamard(n,classname)
%HADAMARD Hadamard matrix.
% HADAMARD(N) is a Hadamard matrix of order N, that is,
% a matrix H with elements 1 or -1 such that H'*H = N*EYE(N).
% An N-by-N Hadamard matrix with N > 2 exists only if REM(N,4)=0.
% This function handles only the cases where N, N/12 or N/20
% is a power of 2.
%
% HADAMARD(N,CLASSNAME) produces a matrix of class CLASSNAME.
% CLASSNAME must be either 'single' or 'double' (the default).
% Nicholas J. Higham
% Copyright 1984-2005 The MathWorks, Inc.
% Reference:
% S. W. Golomb and L. D. Baumert, The search for Hadamard matrices,
% Amer. Math. Monthly, 70 (1963) pp. 12-17.
if nargin < 2, classname =