如何将matlab表达式中小于某一精度的数设为0?

2025-03-04 19:54:33
推荐回答(3个)
回答1:

可以用x=(x>jingdu)*x;来实现,这样效率比用if语句高
(x>jingdu)表示x>jingdu时为1,反之为0
jingdu可以自己设定,matlab里面最小的是eps

就是这个意思,你对每个系数进行这样的操作就行了

回答2:

这样试试

x=sin(eps)
if x<=1e-10
x=0;%or x=zeros(1)
end
x

结果:
x =

2.2204e-016

x =

0

回答3:

可以尝试改到符号运算下,用maple的内核进行运算,详细请查阅matlab的help文档