Problem with variable size

S
sanjhna_mittal · Oct 4, 2021 · 1.9K views
Question
Hello, I am trying to do a customize buffer but it says that my output has a variable size and I don't wont it.   Can someone help me to resolve it ? I put my code below ( u is a vector of 8 double and FFTLength is a size of the buffer)   function data = custom_buffer( FFTLength, u) %#codegen persistent buffer next_index % Define initial values if isempty(buffer) buffer = zeros(FFTLength,1); next_index = 1; end % Populate the buffer for k = 1 :8 buffer(next_index) = u(k); end % Increment the location to write to at the next time if next_index < FFTLength next_index = next_index + 9; else next_index = 1; end data = buffer; end  
Expert Answer
Profile picture of Neeta Dsouza
Neeta Dsouza PhD Expert
Answered Aug 25, 2026
function data = custom_buffer( FFTLength, u)
%#codegen

persistent buffer next_index


% Define initial values
if isempty(buffer)
    buffer = zeros(FFTLength,1);
    next_index = 1;
end

% Populate the buffer
for k = 1 : 8
    buffer(next_index) = u(k);
    next_index = mod(next_index, FFTLength) + 1;
end

data = buffer;

end

 

Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!