F_OFDM_modulate_proto_filt modulates the F-OFDM prototype filter on the desired frequency bins [1, 2]. function [ modulated_filters ] = proto_f_eq( proto_filt, Para ) Input arguments: proto_filt: F_OFDM prototype filter . Size: vector [1, Para.L] Para: structure containing the modulation parameters. Outputs arguments: modulated_filters: prototype filters centred on the centre frequency bins of each sub-band. Size: matrix [Para.filt_L, Para.NbSubBands]
0001 function [ modulated_filters ] = F_OFDM_modulate_proto_filt( proto_filt, Para ) 0002 % F_OFDM_modulate_proto_filt modulates the F-OFDM prototype filter on the desired frequency bins [1, 2]. 0003 % 0004 % function [ modulated_filters ] = proto_f_eq( proto_filt, Para ) 0005 % 0006 % Input arguments: 0007 % 0008 % proto_filt: F_OFDM prototype filter . Size: vector [1, Para.L] 0009 % 0010 % Para: structure containing the modulation parameters. 0011 % 0012 % Outputs arguments: 0013 % 0014 % modulated_filters: prototype filters centred on the centre frequency bins of each sub-band. 0015 % Size: matrix [Para.filt_L, Para.NbSubBands] 0016 0017 %References: 0018 % [1] 3GPP R1-165425 'f-OFDM scheme and filter design' 0019 % [2] 3GPP R1-166999 'Detailed configuration of f-OFDM and W-OFDM for LLS evaluation' 0020 0021 % This file is part of WaveComBox: www.wavecombox.com and is distributed under the terms of the MIT license. See accompanying LICENSE file. 0022 % Original author: Mathieu Van Eeckhaute, September 26, 2018. 0023 % Contributors: 0024 % Change log: 0025 0026 f0 = mean(Para.SubBandSCset-1, 1); 0027 modulated_filters = zeros(Para.L,Para.NsubBands); 0028 n = -floor(Para.L/2):floor(Para.L/2); 0029 for kBand = 1:Para.NsubBands 0030 modulated_filters(:, kBand) = proto_filt.*exp(1j*2*pi*f0(kBand).*n/Para.nSubcarriers); 0031 end 0032 0033 end 0034