Extending the number of terms in a specific sequence.
Show older comments
Hello all,
Im trying to add a larger number of terms to the sequence labeled as 'Base' in the code below and display them together however my extended sequence doesnt match as closely to the base form as i was expecting, would it be possible for someone to verify if i've done it correctly / point out errors in my code?
T = 1;
w = 2*pi*(1/T);
t = linspace(0 , 3*T, 1000);
max_harmonics = 11;
Base = zeros(size(t));
Base = sin(w*t) - (1/9)*sin(3*w*t) + (1/25)*sin(5*w*t) - (1/49)*sin(7*w*t);
Base = Base + (1/(9.^2))*sin(9*w*t) - (1/(11.^2))*sin(11*w*t);
synth_f1 = zeros(size(t));
for n = 3:4:max_harmonics
synth_f1 = synth_f1 - (1/(n*n))*sin(n*w*t) + (1/((n+2).^2))*sin(n*w*t);
end
synth_f1 = sin(w*t) + synth_f1;
plot(t, synth_f1, 'r-', t, Base, 'b--' );
Answers (1)
per isakson
on 25 Dec 2020
Edited: per isakson
on 25 Dec 2020
A copy&paste mistake:
synth_f1 = synth_f1 - (1/(n*n))*sin(n*w*t) + (1/((n+2).^2))*sin((n+2)*w*t);
% ^^^^^
1 Comment
Oscar Kilby
on 25 Dec 2020
Categories
Find more on Introduction to Installation and Licensing 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!