Not enough input arguments. length()
21 views (last 30 days)
Show older comments
Hey,
I wrote a function that should execute a DFT. I know there is FFT, but it's a college job.I don't understand why length doesn't work for the best of me.mainly because it worked without any problems in previous functions.
Could someone tell me what I'm doing wrong?
I googled and only found solutions to problems caused by misspellings.
Here is my code:
function[S] = DFT(s)
N = length(s); %<- thats what the error caused
X = 1:N;
for m = 1 : N
for k = 1 : N
X(m) = X(m) + s(k) * exp(-(1i*pi*2*k*m*(1/N)));
S(m) = X(m);
end
end
end
2 Comments
Les Beckham
on 22 May 2021
How did you call the function? You can't just press the Run button. You need to provide the input data.
per isakson
on 22 May 2021
Edited: per isakson
on 22 May 2021
How did you call the DFT ? What was the value of s ?
Answers (1)
Kiran Felix Robert
on 7 Jun 2021
Hi Partick,
Check the input argument when you call the DFT Function.
When you call from the command-line, provide sufficient input arguments.
On the Run button, use the extra options (type code to run) and provide proper input arguments to the function.
Try using a break point just after calling the function to debug the input argument data type.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!