how to define a sinusoid function over a specific range

4 vues (au cours des 30 derniers jours)
Romio
Romio le 30 Août 2018
Commenté : Adam le 30 Août 2018
Hi all,
I wonder how to define sin function over a specific range of n. For example, n=1:20 and
x= sin(pi*n) over 0<n<5 and 0 elsewhere.
it should be modified in a way so that I can time shift it or scale it
Thanks
  1 commentaire
Adam
Adam le 30 Août 2018
Just calculate it up to 5 and then append 0s to the end.

Connectez-vous pour commenter.

Réponses (1)

Sven
Sven le 30 Août 2018
Modifié(e) : Sven le 30 Août 2018
f = 10; % Frequency in Hertz
a = 2; % Amplitude
startTime = 0; % Time in seconds
endTime = 10; % Time in seconds
samples = 100; % Number of samples
x = linspace(startTime,endTime,samples);
y = a*sin(2*pi*f*x);
plot(x,y)
linspace produces a vector with evenly spaced points between startTime and endTime. If you work with radians, just delete the 2*pi inside the sine function.
  1 commentaire
Romio
Romio le 30 Août 2018
Thank you. But what I wanted was a conditional function that is defined over all the values of n, though it is zero for n>5 I intend to use it as an input to a system and modify by time shifting or scaling

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by