a function just valid over a certain range
Show older comments
Hello everyone, let me ask
a formula is expressed mathematically as follows
Y = x^2 + 3x + 1 , for 2<x<8;
Y = 0 for else (x<2 or x>8)
then I would plot Y value for Y within 0<x<10.
in excel I succeeded by writing the following formula
=IF(AND(x >= 2, x<=8), x^2+3x+1, 0)
with similar logic, I write this in Matlab
x = 0:0.1:10 ;
if 2 <= x <= 8
y = x.^2+3.*x+1 ;
else
y = 0
end
plot(x,y)

please see the graph above, which for the value of Y at x < 2 is not 0
1 Comment
The simple MATLAB approach is to use logical indexing:
x = 0:0.1:10;
y = x.^2+3.*x+1;
y(x<2 | x>8) = 0;
plot(x,y)
Accepted Answer
More Answers (0)
Categories
Find more on Language Fundamentals 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!
