📄 mc_sfb.m
字号:
function s=mc_sfb(x,Slot_length,prototype_filter,Carrier_number,SubCarrier_first,SubCarrier_last,Sampling_factor,Filter_length)
K1=floor(Filter_length/Carrier_number/2);
K2=Filter_length-2*Carrier_number*K1; % Filter_length=2*K1*Carrier_number+K2;
N=Sampling_factor*(Slot_length-1)+Filter_length;
s=zeros(1,N);
x=x.*exp(j*2*pi*((SubCarrier_first:SubCarrier_last)-(Carrier_number-1)/2)'*(Sampling_factor*(0:Slot_length-1)-(Filter_length-1)/2)/Carrier_number);
for n=0:Slot_length-1
tmp=exp(-j*pi*(0:Carrier_number-1)*(Carrier_number-1)/Carrier_number).*conj(ifft([zeros(SubCarrier_first,1); x(:,n+1)],Carrier_number)')*Carrier_number;
tmp1=[tmp (-1)^(Carrier_number-1)*tmp];
s(n*Sampling_factor+1:n*Sampling_factor+Filter_length)=s(n*Sampling_factor+1:n*Sampling_factor+Filter_length)+[repmat(tmp1,1,K1) tmp1(1:K2)].*prototype_filter;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -