Test equality of two symbolic expressions

12 ビュー (過去 30 日間)
Vinicius Lopes Simoes
Vinicius Lopes Simoes 2020 年 5 月 11 日
回答済み: Steven Lord 2020 年 5 月 11 日
Suppose, for the sake of simplicity, that I need to compare two equivalent symbolic expressions in Matlab.
syms a b
x = sin(a + b);
y = sin(a)*cos(b) + sin(b)*cos(a);
And, obviously, we know that . Now if I use the Matlab functions isequal (or isequaln), I don't get the expected result, which is a logical 1, because this is an equality:
>> isequal(x,y)
ans =
logical
0
Why does it happen? Is there any function that does what I am trying to do?
Thanks!

採用された回答

Steven Lord
Steven Lord 2020 年 5 月 11 日
Ask MATLAB if those two symbolic expressions isAlways equal.
>> syms a b
>> x = sin(a + b);
>> y = sin(a)*cos(b) + sin(b)*cos(a);
>> isAlways(x==y)
ans =
logical
1

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeAssumptions についてさらに検索

製品


リリース

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by