How can i plot this signal?

I have a signal like this v=240*sin(2*pi*f(t)*t) where f(t)=50+sin(t). My sampling frequency is 7500 Hz.How can i plot the above mentioned signal?I am getting an error while plotting.Expecting reply.

Réponses (3)

Matt Fig
Matt Fig le 11 Août 2012
Modifié(e) : Matt Fig le 11 Août 2012

0 votes

f = @(t) 50+sin(t);
v = @(t) 240*sin(2*pi*t.*f(t));
t = 0:.001:1;
plot(t,v(t))
Image Analyst
Image Analyst le 11 Août 2012
Modifié(e) : Image Analyst le 11 Août 2012

0 votes

Did you try the straightforward, obvious approach that just uses your equations to get f and then v?
% Get the times between 1 andnumberOfSeconds, inclusive:
% (Adjust parameters as needed.)
numberOfSeconds = 9
samplingRate = 7500 % Samples per second.
numberOfSamples = samplingRate * numberOfSeconds
t = linspace(0, numberOfSeconds, numberOfSamples);
% Get f:
f =50 + sin(t);
% Get v:
v = 240 * sin(2*pi*f .* t);
% Plot:
plot(t, v);
% Enlarge figure to full screen.
set(gcf, 'units','normalized','outerposition',[0 0 1 1]);

2 commentaires

Matt Fig
Matt Fig le 11 Août 2012
That picture is misleading. Try with
linspace(1,4*pi,8000);
Then again with 80000!
Image Analyst
Image Analyst le 11 Août 2012
Yeah, I know there's aliasing going on, but when I did it with just a few hundred samples, it looked like just a normal sine wave.

Connectez-vous pour commenter.

Azzi Abdelmalek
Azzi Abdelmalek le 11 Août 2012
Modifié(e) : Azzi Abdelmalek le 11 Août 2012

0 votes

te=1/7500;
t=0:te:500*te;
f=50+sin(t);
v=240*sin(2*pi*f.*t);
plot(t,v)

3 commentaires

Matt Fig
Matt Fig le 11 Août 2012
This is sampled far too sparsely to give an accurate picture of the function.
Azzi Abdelmalek
Azzi Abdelmalek le 11 Août 2012
his sampling frequency is 7500Hz that means a sample time is 1/7500 s
Matt Fig
Matt Fig le 11 Août 2012
Much nicer!

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