How can i plot this signal?
Show older comments
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.
Answers (3)
f = @(t) 50+sin(t);
v = @(t) 240*sin(2*pi*t.*f(t));
t = 0:.001:1;
plot(t,v(t))
Image Analyst
on 11 Aug 2012
Edited: Image Analyst
on 11 Aug 2012
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 Comments
Matt Fig
on 11 Aug 2012
That picture is misleading. Try with
linspace(1,4*pi,8000);
Then again with 80000!
Image Analyst
on 11 Aug 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.
Azzi Abdelmalek
on 11 Aug 2012
Edited: Azzi Abdelmalek
on 11 Aug 2012
te=1/7500;
t=0:te:500*te;
f=50+sin(t);
v=240*sin(2*pi*f.*t);
plot(t,v)
3 Comments
Matt Fig
on 11 Aug 2012
This is sampled far too sparsely to give an accurate picture of the function.
Azzi Abdelmalek
on 11 Aug 2012
his sampling frequency is 7500Hz that means a sample time is 1/7500 s
Matt Fig
on 11 Aug 2012
Much nicer!
Categories
Find more on Signal Operations 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!