sampling and filtering in continuous time modulation
Version 1.0.0 (272 KB) by
Thamilmaran
Explores the fundamental techniques of sampling and filtering within the context of continuous time modulation
1. Comprehensive study of sampling techniques (uniform, non-uniform) and filtering methods (FIR, IIR) within the context of continuous time modulation.
2. Practical demonstrations and discussions on the application of these techniques in telecommunications, audio processing, and other relevant domains, emphasizing their importance and impact on signal integrity and system performance.
% Parameters
Ac = 1.0; % Carrier amplitude
fc = 10.0; % Carrier frequency (Hz)
fs = 100.0; % Sampling frequency (Hz)
T = 1.0; % Total time duration (s)
Ts = 1/fs; % Sampling period
t = 0:Ts:T-Ts; % Time vector
% Message signal (sinusoidal)
fm = 2.0; % Message frequency (Hz)
m_t = sin(2*pi*fm*t);
% Continuous-time modulated signal
s_t = Ac * (1 + m_t) .* cos(2*pi*fc*t);
% Sampling
x_n = s_t(1:round(fs/fc):end); % Sampling at the carrier frequency
% Filter design
cutoff = 20.0; % Cutoff frequency for the low-pass filter
nyquist = 0.5 * fs;
order = 5; % Filter order
[b, a] = butter(order, cutoff/nyquist, 'low');
% Filtering
filtered_signal = filter(b, a, x_n);
% Plotting
figure;
subplot(3,1,1);
plot(t, s_t);
title('Continuous-Time Modulated Signal');
xlabel('Time (s)');
ylabel('Amplitude');
grid on;
subplot(3,1,2);
stem(t(1:round(fs/fc):end), x_n, 'r', 'Marker', 'o', 'LineStyle', 'none');
title('Sampled Signal');
xlabel('Time (s)');
ylabel('Amplitude');
grid on;
subplot(3,1,3);
plot(t(1:round(fs/fc):end), filtered_signal);
title('Filtered Signal');
xlabel('Time (s)');
ylabel('Amplitude');
grid on;
sgtitle('Sampling and Filtering in Continuous-Time Modulation');% Parameters
Ac = 1.0; % Carrier amplitude
fc = 10.0; % Carrier frequency (Hz)
fs = 100.0; % Sampling frequency (Hz)
T = 1.0; % Total time duration (s)
Ts = 1/fs; % Sampling period
t = 0:Ts:T-Ts; % Time vector
% Message signal (sinusoidal)
fm = 2.0; % Message frequency (Hz)
m_t = sin(2*pi*fm*t);
% Continuous-time modulated signal
s_t = Ac * (1 + m_t) .* cos(2*pi*fc*t);
% Sampling
x_n = s_t(1:round(fs/fc):end); % Sampling at the carrier frequency
% Filter design
cutoff = 20.0; % Cutoff frequency for the low-pass filter
nyquist = 0.5 * fs;
order = 5; % Filter order
[b, a] = butter(order, cutoff/nyquist, 'low');
% Filtering
filtered_signal = filter(b, a, x_n);
% Plotting
figure;
subplot(3,1,1);
plot(t, s_t);
title('Continuous-Time Modulated Signal');
xlabel('Time (s)');
ylabel('Amplitude');
grid on;
subplot(3,1,2);
stem(t(1:round(fs/fc):end), x_n, 'r', 'Marker', 'o', 'LineStyle', 'none');
title('Sampled Signal');
xlabel('Time (s)');
ylabel('Amplitude');
grid on;
subplot(3,1,3);
plot(t(1:round(fs/fc):end), filtered_signal);
title('Filtered Signal');
xlabel('Time (s)');
ylabel('Amplitude');
grid on;
sgtitle('Sampling and Filtering in Continuous-Time Modulation');
Cite As
Thamilmaran (2025). sampling and filtering in continuous time modulation (https://www.mathworks.com/matlabcentral/fileexchange/163136-sampling-and-filtering-in-continuous-time-modulation), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Created with
R2024a
Compatible with any release
Platform Compatibility
Windows macOS LinuxTags
Acknowledgements
Inspired by: Time folding for continuous signals, continuos time signal processing
Inspired: sampling and filtering in discrete time modulation
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0 |