Int gives wrong answer

syms x
f(x) = cos(x)*sin(x);
Fx = int(f,x)
Fx(x) = 
Fx(x) =
sin(x)^2/2
while the correct answer is -cos(x)^2/2

3 件のコメント

Robin Merkle
Robin Merkle 2022 年 3 月 2 日
The answer is correct. d/dx sin^2(x)/2 = sin(x)cos(x).
Torsten
Torsten 2022 年 3 月 2 日
Since sin(x)^2/2 = -cos(x)^2/2 + 1/2, both answers are correct.
Note that both answers only differ by a constant, namely 1/2.
Ali M
Ali M 2022 年 3 月 5 日
Thanks @Torsten & @Robin Merkle! @Torsten I would vote for you but I cant, your is a comment not an answer

サインインしてコメントする。

回答 (1 件)

Walter Roberson
Walter Roberson 2022 年 3 月 2 日

0 投票

Remember that indefinite integration always has an implied "plus a constant". So any two results of int() that differ by a constant are the same integral result. And sin squared plus cos squared equals 1 so the two possibilities are the same up to the constant.
You can ask to rewrite() to 'cos'

カテゴリ

ヘルプ センター および File ExchangeMathematics についてさらに検索

製品

リリース

R2021b

タグ

質問済み:

2022 年 3 月 2 日

コメント済み:

2022 年 3 月 5 日

Community Treasure Hunt

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

Start Hunting!

Translated by