You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
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 (2026). 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 .
Acknowledgements
Inspired by: Time folding for continuous signals, continuos time signal processing
Inspired: sampling and filtering in discrete time modulation
General Information
- Version 1.0.0 (272 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
| Version | Published | Release Notes | Action |
|---|---|---|---|
| 1.0.0 |
