MATLAB - Delay sine wave
12 views (last 30 days)
Show older comments
I have a damped sine wave as below:
N=250;
Fs=20;
Ts=1/Fs;
t=(0:N-1)*Ts;
A = 3;
f = 1;
x = A*exp(-t).*sin(2*pi*f*t);
How can I generate a delay signal from the damped sine wave x, so that:
y(n) = a*x(n-k)+b(n),
Where a is the attenuation coefficient, b(n) is the noise and k is a delay
0 Comments
Answers (1)
Alan Stevens
on 8 Nov 2020
Like this?
N=250;
Fs=20;
Ts=1/Fs;
t=(0:N-1)*Ts;
A = 3;
f = 1;
signal = @(t) A*exp(-t).*sin(2*pi*f*t);
x = signal(t);
a = 0.7; % attenuation coefficient
k = 10*Ts; % delay time
b = 0.1*randn(1,numel(t)); % normally distributed noise
y = a*signal(t-k) + b;
plot(t,x,t,y),grid
xlabel('t'),ylabel('signal')
legend('signal','delayed signal')
2 Comments
Alan Stevens
on 8 Nov 2020
I wouldn't know! But doesn't it just mean you define a different timespan for the delayed signal?
See Also
Categories
Find more on Spectral Measurements in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!