MATLAB内联函数if语句

时间:2016-04-07 16:45:16

标签: matlab function piecewise

我正在尝试定义一个函数,如下所示:

if nn == 0
   tau(nn) = 0
else
   tau(nn) = crazy_function(nn)
end

但是,我想在一行中完成。我试过了

tau = @(nn) crazy_function(nn).*(nn~=0) + 0.*(nn==0);

但这不起作用,因为crazy_function(0)不是数字(NaN)。所以MATLAB在表达式的第一部分遇到了麻烦。当我通过对此行的某些修改调用0时,如何让MATLAB返回tau(0)?谢谢!

0 个答案:

没有答案