Need to create a table with values from a bode plot
4 views (last 30 days)
Show older comments
I have a bode plot and I need to create a three column table. Somthing like:
w phase mag
1 -90 5
10 0 10
100 90 20
It needs to include frequency, magnitude, phase. It can either just be at a particular intervale (for every w = 10^x where x = 1, 2, 3, 4) or at particular values of frequency.
What I have so far:
clear all; clc
% Define System
num = [1 2];
den = [1 10];
sys = tf(num, den);
% Plot Bode
figure(1); clf;
[mag,phase,wout] = bode(sys);
mag = squeeze(mag);
phase = squeeze(phase);
Thank you
0 Comments
Accepted Answer
Star Strider
on 2 Mar 2023
w = [1; 10; 100];
then calculate the magnitude and phase from the ‘H’ output with the abs and angle and squeeze functions. Be certain that they are all column vectors, then use the table function with them as the arguments to create the table. Assign the variable names with the 'VariableNames' name-value pair with a cell array of the variable names you want to use.
.
2 Comments
More Answers (0)
See Also
Categories
Find more on Plot Customization 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!