Why does my fplot output a plot filled with colored horizontal lines?

I am trying to run an fplot command and the resulting plot does not give me my expected output. The fplot is full of horizontal colored lines that I have no idea how to eliminate or to troubleshoot.
See attached screenshot.
omega_b=1800;
X=-4/(1800^2);
m=0.003;
k=10720;
c=0.01;
omega_n=sqrt(k/m);
zeta=c/(2*m*omega_n);
r=omega_b/omega_n;
theta_1=atan((2*zeta*omega_n*omega_b)/(omega_n^2-omega_b^2));
theta_2=atan(omega_n/(2*zeta*omega_b));
y=omega_n*X*((omega_n^2+(2*zeta*omega_b)^2)/((omega_n^2-omega_b^2)^2+(2*zeta*omega_n*omega_b)^2))^0.5*cos(omega_b*t-theta_1-theta_2)
fplot(y,[0 6*pi()])

 Accepted Answer

Your t is numeric, a 1 x 593 vector. Your y is then a 1 x 593 vector, with no symbolic variables. fplot() is then plotting those 593 different constant values over a range of x (which has no effect because the values are constant.)

2 Comments

Hello Walter,
Thank you for your quick response, I am not understanding how to properly define my function to plot then. I want to plot a function of t, but I dont want to define values of t until I use the "fplot" command. What would be the best method to do this?
Thanks alot!
If you have the symbolic toolbox,
syms t
instead of defining t as a numeric vector.
If you do not have the symbolic toolbox, then define
t = linspace(0, 6*pi, 593);
and build up y, and then,
plot(t, y)

Sign in to comment.

More Answers (0)

Categories

Find more on Mathematics and Optimization in Help Center and File Exchange

Products

Release

R2019b

Tags

Community Treasure Hunt

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

Start Hunting!