Sine sweep in matlab
Ältere Kommentare anzeigen
How do i create a dataset which has a sine wave which is swept a hz to b hz within the time t.
Antworten (1)
Image Analyst
am 21 Mai 2015
If you have the Signal Processing Toolbox look in the help for chirp():
chirp
Swept-frequency cosine
Syntax
y = chirp(t,f0,t1,f1)
y = chirp(t,f0,t1,f1,'method')
y = chirp(t,f0,t1,f1,'method',phi)
y = chirp(t,f0,t1,f1,'quadratic',phi,'shape')
8 Kommentare
James
am 21 Mai 2015
James
am 21 Mai 2015
Image Analyst
am 21 Mai 2015
Did you try to adapt the example in the help:
a = 1
b = 150;
t = linspace(0, 0.1, 300);
y = chirp(t, a, t(end), b);
plot(t, y, 'b*-');
grid on;

Mahmoud Khadijeh
am 29 Apr. 2022
I have question please,
The amplitude is equal to 1 when the time = 0.
Can we modify this code so the amplitude starts with 0 at t=0?
Thanks in advance!
Image Analyst
am 29 Apr. 2022
Bearbeitet: Image Analyst
am 29 Apr. 2022
@Mahmoud Khadijeh did you try just subtracting it from 1?
a = 1
b = 150;
t = linspace(0, 0.1, 300);
y = 1 - chirp(t, a, t(end), b);
plot(t, y, 'b*-');
grid on;
Otherwise you could make up your own with a vector for frequency, and use
y = sin(2 * pi * frequency .* t)
Mahmoud Khadijeh
am 29 Apr. 2022
Yes, subtracting it from 1 will change the entire amplitudes.. As you can see in last figures that the amplitudes are equal to 2 not 1 like the first figure.
Mahmoud Khadijeh
am 29 Apr. 2022
Can you pleaes help me with this code if you have the experience to do it?
This is the Logarithmic Sweep Rate equation that I am trying to implement:

The starting and ending frequencies are f1 and f2 , respectively.
The sweep rate in octaves per time is R
Thank you in advance!
Image Analyst
am 29 Apr. 2022
f1 =
f2 =
R =
t = linspace(0, 5*pi, 2000);
frequency = linspace(f1, f2, length(t));
y = sin(2 * pi * frequency .* (-1 + 2.^(R * t)) / (R*log(2)));
Kategorien
Mehr zu Univariate Discrete Distributions finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
