Matlab在不同的时间间隔内功能不同

时间:2013-04-12 14:22:16

标签: matlab function if-statement

如果temp小于0.5,我希望函数y为零,否则为exp(x)。 然而,我在下面尝试的只是将y的全部设置为零。有什么建议吗?

x = 0:.01:2;
tmp = x.^2;

if tmp<0.5
  y= exp(x);
else
  y= 0;
end
plot(x,y);

1 个答案:

答案 0 :(得分:1)

y设置为exp(x),然后使用逻辑索引将y设置为零,其中tmp小于0.5

y = exp(x);
t(tmp < 0.5) = 0;

如果matlab中没有y,那么你可以像这样一步完成:

y(tmp >= 0.5) = exp(x(tmp >= 0.5)

并自动填写零。但我个人更喜欢第一种方式。