代码拉取完成,页面将自动刷新
function AoA_AoD_Estimator( h,nrx,ntx,K )
% AoD related H , vector g , for one time serie
% 再加一个判断是否输入的确定的hc值,如果输入,那么就不需要二维的了,直接搜索一维AoD
d = 0.027;
ex1 = 0:nrx-1;
ex2 = 0:ntx-1;
d1=d*ex1;
d2=d*ex2;
phii=0:180;
derad = pi / 180;
cc = 3e8;
ff = 5.8e9;
% K = size(h,3);
% X=reshape(h,nrx,ntx * K); %构造接收信号
c=exp(-1i*2*pi*d1'*cos(phii*derad) * ff /cc);
g=exp(-1i*2*pi*d2'*cos(phii*derad) * ff /cc);
% hcg = c' * X * g;
hcg = c' * h * g;
% hc = c*X;
% hc = reshape(hc,181,ntx,K);% 181 * 2 * 57
% hc = shiftdim(hc,1); % 2*57*181
%
% % g : 181 * ntx , 181 * 2,为了和AoA转换格式一样好看
% % hc : 2 * 57 * 181;hcc : 2 * (57*181)
% hcc = reshape(hc,ntx,K*181);
% hcg = g * hcc;
% hcg = reshape(hcg,181,K,181);
% 遍历每个角度,计算空间谱
% s = reshape(sum(hcg.*conj(hcg),2),181,181); % hg_optimal - 181 * 1 * 181 - g*1*c
s = hcg.*conj(hcg); % hg_optimal - 181 * 1 * 181 - g*1*c
[Smmax,aoa]=max(max(s));
s=s/Smmax;
plot2D(phii,'发射角/(degree)',phii,'到达角/(degree)',s');
%% 最值下标
% [peak,index_c] = max(hg_optimal); % AoA最大值序列候选
% [peak,index_g] = max(max(hg_optimal)); % 挑选对应AoD(行)最大序列
[peak,index] = max(s(:)); % 最大值线性下标;(:)——>按顺序变成一列
[index_g,index_c] = ind2sub([length(phii),length(phii)],index);
peak_phi_g = phii(index_g);% 角度值
peak_phi_c = phii(index_c);
end
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。