Clear Filters
Clear Filters

Bode Plot for two different sinusoidal inputs

7 views (last 30 days)
I want to create bode plot comparing two different sine inputs with different frequencies (.1 and 7.5), but same transfer function (8.008/s^2+.54s+7.95). Any help would be greatly appreciated.

Accepted Answer

Athanasios Paraskevopoulos
% Define the transfer function coefficients
numerator = 8.008;
denominator = [1 0.54 7.95]; % Coefficients of s^2, s, and the constant term
% Create the transfer function
sys = tf(numerator, denominator);
% Create the Bode plot
figure;
bode(sys);
grid on;
title('Bode plot of the system');
% Evaluate the frequency response at specific frequencies
f1 = 0.1; % frequency in Hz
f2 = 7.5; % frequency in Hz
w1 = 2 * pi * f1; % Convert to rad/s
w2 = 2 * pi * f2; % Convert to rad/s
response1 = evalfr(sys, 1j*w1);
response2 = evalfr(sys, 1j*w2);
% Display the magnitude and phase of the frequency responses
disp(['Frequency response at ' num2str(f1) ' Hz:']);
Frequency response at 0.1 Hz:
disp(['Magnitude: ' num2str(abs(response1)) ', Phase: ' num2str(angle(response1) * 180/pi) ' degrees']);
Magnitude: 1.0589, Phase: -2.5713 degrees
disp(['Frequency response at ' num2str(f2) ' Hz:']);
Frequency response at 7.5 Hz:
disp(['Magnitude: ' num2str(abs(response2)) ', Phase: ' num2str(angle(response2) * 180/pi) ' degrees']);
Magnitude: 0.0036189, Phase: -179.3411 degrees

More Answers (0)

Categories

Find more on Get Started with Control System Toolbox in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!