Simplifying a algebraic or numeric expression to lowest possible power

조회 수: 1 (최근 30일)
Suppose if I write (a^2)^(1/2) then it will remain as that. But I want to simplify to the lowest possible power. How can we do it. Also if there is a combination of x^m*y^n*z^p

채택된 답변

John D'Errico
John D'Errico 2020년 8월 1일
편집: John D'Errico 2020년 8월 1일
The problem is, there are multiple solutions, because sqrt is not as simple a thing as you like.
syms x
>> y = sqrt(x.^2)
y =
(x^2)^(1/2)
simplify(y)
ans =
(x^2)^(1/2)
The issue is, there are TWO solutions to the problem, thus +/- x. In order to gain the solution you want, you need to tell simplify to ignore those branch cuts.
ysimpl = simplify(y,'IgnoreAnalyticConstraints',true)
ysimpl =
x
From the help for simplify, we see:
simplify(S,'IgnoreAnalyticConstraints',VAL) controls the level of
mathematical rigor to use on the analytical constraints while simplifying
(branch cuts, division by zero, etc). The options for VAL are TRUE or
FALSE. Specify TRUE to relax the level of mathematical rigor
in the rewriting process. The default is FALSE.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

제품


릴리스

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by