Multiplying sine wave with step function

9 views (last 30 days)
Hi again!
I'm trying to produce a sampled data vector of a sine wave with the following parameters:
  • Amplitude 0.187
  • Signal Freq. 187Hz
  • Sampling rate 1600s^-1
I am running into an error and cannot figure out what the issue is with element wise multiplication of the step function and the sine wave. Code is as follows:
nn = -3:14; % index vector
uu = double(nn >= 0);% unit step
Ts = 1.6e-3;% sample time
Fs = 1600; % sample rate
t = linspace(-3, 14, Fs); % time
w = 2*pi*187; % omega
xx = 0.187*sin(w*t);% x(t) = 0.187sin(w*t)
xxuu = xx .* uu; % multiplying step function with sine wave
stem(t, xxuu)% stem plot
I am not entirely sure if this is the best way to go about this problem either. My code includes some hints I got from this site.

Accepted Answer

Ameer Hamza
Ameer Hamza on 5 Nov 2020
Edited: Ameer Hamza on 5 Nov 2020
I am not sure how you defined 'uu' vector. But the following code works fine
Ts = 1.6e-3;% sample time
Fs = 1600; % sample rate
t = linspace(-3, 14, Fs); % time
uu = 1*(t>=0);
w = 2*pi*187; % omega
xx = 0.187*sin(w*t);% x(t) = 0.187sin(w*t)
xxuu = xx .* uu; % multiplying step function with sine wave
stem(t, xxuu)% stem plot
  3 Comments
xRah
xRah on 5 Nov 2020
oh and the index vector is supposed to be -3:14
xRah
xRah on 5 Nov 2020
i seem to have forgotten it -.-

Sign in to comment.

More Answers (3)

madhan ravi
madhan ravi on 5 Nov 2020
uu = @(nn) +(nn >= 0);
xxuu = xx .* uu(t)

Paul
Paul on 5 Nov 2020
Change one line to:
xxuu = xx .* (t >= tstep); % set tstep as the time when the unit step is applied

xRah
xRah on 5 Nov 2020
Thank you all for your input and help :)

Categories

Find more on Audio Processing Algorithm Design 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!