📄 walsh_sequence_generator.m
字号:
function [walsh_matrix] = walsh_sequence_generator(num)
% num=input('请输入哈达曼(Hadamard)矩阵的阶数生成walsh扩频码:');
if num < 1 % 如果输入参数为空,默认输出0阶哈达曼矩阵
num = 0;
end
if rem(log2(num),1) ~= 0 | num < 0 | num == 1
error('参数 num 必须是非负的正整数,且必须为2的幂次 !');
end
walsh_matrix = []; % 初始化输出walsh序列矩阵
if num == 0
walsh_matrix = [1]; % 参数为零的Hadamard矩阵
elseif num == 2
walsh_matrix = [1 1;1 -1]; % 参数为2的2阶Hadamard矩阵
else
walsh_matrix = [1 1;1 -1];
for k = 1:log2(num)-1 % 循环生成log2(num)阶Hadamard矩阵
walsh_matrix = [walsh_matrix,walsh_matrix;walsh_matrix,-walsh_matrix];
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -