Symbolic Math Toolbox VS MuPAD: example in advance of the first?

1 回表示 (過去 30 日間)
Igor
Igor 2011 年 6 月 6 日
MATLAB
>> simplify(exp(log10(x)))
ans =
x^(1/log(10))
MuPAD
simplify(exp(log(10,x)), ln)
No effect. How to force MuPAD to simplify truely? I used consider MATLAB Simb.Tbx as a reduced version of MuPAD? That is -- MATLAB calls the MuPAD functions...

採用された回答

Walter Roberson
Walter Roberson 2011 年 6 月 7 日
This is as documented here
Mathematically, log(b, b^y) = y holds true for any real y. This simplification is implemented for the following cases: i) b is a symbolic (indexed) identifier and y is of type Type::Real, ii) b is numerical and y is integer or rational.
and
Note that arithmetical rules such as log(b, x*y) = log(b, x) + log(b, y) are not valid throughout the complex plane. Use properties to mark identifiers as real and apply functions such as expand or simplify to manipulate expressions involving log. Cf. example 4.
So you could possibly use
simplify(exp(log(10,x))) assuming x::real
  2 件のコメント
Walter Roberson
Walter Roberson 2011 年 6 月 7 日
Might have to be x::Real perhaps, instead of x::real
Igor
Igor 2011 年 6 月 7 日
Clearly.
But Log of complex value may be account like sin() with periodic term.
Thanks.

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

その他の回答 (2 件)

Paulo Silva
Paulo Silva 2011 年 6 月 6 日
syms x
simplify(exp(log10(x)))
  1 件のコメント
Igor
Igor 2011 年 6 月 6 日
No, no :)
MATLAB works validly, you haven't seen ANS
Problem in MuPAD

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


Andrei Bobrov
Andrei Bobrov 2011 年 6 月 6 日
in MuPAD
expand(subs(exp(log(10,x)),log(10,x)=ln(x)/ln(10)));
EDIT
rewrite(exp(log(10,x)),ln)

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by