Clear Filters
Clear Filters

how do Create a message signal m(t) = cos(2πfmt), fm = 5 KHz. and Plot the signal both in time domain and the magnitude of its spectrum in frequency domain?

12 views (last 30 days)
how do Create a message signal m(t) = cos(2πfmt), fm = 5 KHz. and Plot the signal both in time domain and the magnitude of its spectrum in frequency domain?
My code is below for time domain
>> fm = 5000;
>> t = 0: 0.01: 10;
>> y = cos(2*pi*fm*t)
>> plot(t,y)
I just get a straight line???

Answers (5)

Rick Rosson
Rick Rosson on 31 Mar 2013
Edited: Rick Rosson on 31 Mar 2013
The sampling rate that you are using is 100 samples per second, whereas the carrier frequency of the message signal is 5,000 hertz. According to the Nyquist Sampling Theorem, you need a sampling rate that is at leat twice the highest frequency that you want to represent. So, in this example, you need a sampling rate of at least 10,000 samples per second.
Let's try 800,000 samples per second, and see if it helps:
Fs = 800e3;
dt = 1/Fs;
t = (0:dt:0.002-dt)';
Fm = 5000;
y = cos(2*pi*Fm*t);
figure;
plot(t,y);
  2 Comments
Ankit Ghosh
Ankit Ghosh on 20 Aug 2017
I think it is the other way round. May you please check if my understanding is wrong or you mistyped ?
Ankit Ghosh
Ankit Ghosh on 20 Aug 2017
Edited: Ankit Ghosh on 20 Aug 2017
fs = 1e3;
dt = 1/fs;
t = (0:0.001:10)';
fm = 2e3;
sig = sin(2*pi*fm/fs*t);
plot(t,sig);
title('sin wave with 1KHz sampling rate')
This is working perfectly fine for me as per the text book equations.

Sign in to comment.


RISET
RISET on 15 Jan 2017
Edited: RISET on 15 Jan 2017
as fm =5000 ; so (fm*t)=an integer; for cos(2*pi*n) value is always=0; so try to change it to some other values like 4999 or 3479 or 23 or 5 ;yes for fm = 5947; t = 0: 0.01:1; y = cos(2*pi*fm*t); plot(t,y) u will see the graphs cosine nature is lost it is due to the t intervals u have taken .try to change them as small as possible ....like fm = 5947; t = 0: 0.001:.1; y = cos(2*pi*fm*t); plot(t,y) u will see what u want....{i have not maintained the desired frequency but try to conceptualise what nyquist rate leading towards)...

Jayram Naykinde
Jayram Naykinde on 25 Oct 2021
perform Sampling of a signal
clc;
clear all;
close all;
f0=3;
fs=10;
T=1/f0;
t=0:0.001:5*T;
x_t=cos(2*pi*3*t);
Ts=1/fs;
n=0:Ts:5*T;
x_n=cos(2*pi*f0*n);
subplot(2,1,1)
plot(t,x_t,'-.');
xlabel('Time')
ylabel("x(t)")
subplot(2,1,2) stem(n,x_n,"filled"); xlabel('Time') ylabel("x(n)")

azad Thanveer
azad Thanveer on 2 Jun 2022
>> fm = 5000; >> t = 0: 0.01: 10; >> y = cos(2*pi*fm*t) >> plot(t,y)

azad Thanveer
azad Thanveer on 2 Jun 2022
fm = 5000;
>> t = 0: 0.01: 10;
>> y = cos(2*pi*fm*t)
>> plot(t,y)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!