gpt4 book ai didi

matlab - 为什么 MATLAB 无法检查此三角表达式的相等性

转载 作者:行者123 更新时间:2023-12-05 02:34:25 24 4
gpt4 key购买 nike

isequaln()如文档中所述,正在测试符号对象的相等性。但是,以下脚本不是这种情况。

syms a
f1=cos(a)^2;
f2=1-sin(a)^2;
isequaln(f1,f2)
ans =
logical
0

MATLAB 未返回正确答案。在比较符号表达式的相等性、比较字符串(即正则表达式的典型场景)或其他东西时,MATLAB 会做什么?

最佳答案

在文档页面的底部,有一个名为“提示”的部分,其中包含以下项目:

isequaln(A,B) checks if A and B are the same size and their contents are syntactically the same expression, treating NaN values as equal. To check whether the mathematical comparison A == B holds for all values of variables in A and B, use isAlways(A == B).

(强调我的)

isAlways做你想做的:

syms a
f1 = cos(a)^2;
f2 = 1-sin(a)^2;
isAlways(f1 == f2)

这会输出 true


备选方案:

>> simplify(f1-f2)
ans =
0

>> simplify(f1==f2)
ans =
symtrue

关于matlab - 为什么 MATLAB 无法检查此三角表达式的相等性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70779105/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com