any idea why i'm getting this error?

13 views (last 30 days)
why i'm getting Subscript indices must either be real positive integers or logicals.
m = zeros(4,500);
n_trig = 3;
n = (0:Harm).';
f0 = 1/T;
fs = samples / T;
n = (0:n_trig).';
wnt = 2*pi*f0*n*t;
ft = exp((2 - t) / 4);
s1 = (1/T) * sum(ft) / fs;
s2 = (2/T) * ft * cos(2*pi*f0*n*t).' / fs;
s3 = (2/T) * ft * cos(2*pi*f0*n*t).' / fs;
s = s1 + s2*cos(wnt) + s3*sin(wnt);
for n = 0:3
m(n,:) = s(n);
end
thanks

Accepted Answer

Walter Roberson
Walter Roberson on 25 Mar 2018
You have
for n = 0:3
m(n,:) = s(n);
end
When n = 0 (the first value for n), you are trying to do m(0,:) = s(0) . That is not valid, as MATLAB indices start at 1.
By the way, why do you have the line
n = (0:Harm).';
when you overwrite n three lines later?

More Answers (0)

Categories

Find more on Simulation, Tuning, and Visualization in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!