matlab does not simplify the expression?
5 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi Everyone,
I would like to find the code to convert the expression (x^10)^1/5 into x^2 but I can't find it. I'm actually trying to come up with an algorithm to solve the SVD. But when trying to find the eigenvectors i have to solve a system of equations with infinite solutions and that's where I get stuck. X1 is defined as follows
X1 =
x1
x2
and I would like to execute
ecua1=X(1); L=sqrt(X1(1)^2 + (solve(ecua1,'x2'))^2)
but in the last line
L=sqrt(X1(1)^2 + (solve(ecua1,'x2'))^2) ---> L = 2^(1/2)*(x1^2)^(1/2)
matlab does not simplify the expression and thus I can't continue.
Please, I would really appreciate any help!!
Thanks,
Paola
0 Commenti
Risposte (3)
Matt Fig
il 29 Set 2012
Modificato: Matt Fig
il 29 Set 2012
syms x
simplify((x^10)^(1/5),'IgnoreAnalyticConstraints',true)
2 Commenti
Walter Roberson
il 1 Ott 2012
R2009b had only very simple constraint management when you call simplify() from the MATLAB level instead of from within MuPAD itself. See the sym() command for how to constrain x to be real-valued.
Walter Roberson
il 29 Set 2012
(x^10)^(1/5) is not generally x^2. p^(1/5) has five complex roots, so (x^10)^(1/5) needs to have 5 solutions, but x^2 is only a single value.
In order to get the simplification you have in mind, you will need to add assumptions of real-valued and non-negative.
1 Commento
Luan Trinh
il 27 Nov 2014
Could you help me simplify this function?
syms a si f(si) = (a^2*(51056921947406336*exp(-si*2*i) + 51056921947406336*exp(si*2*i) + 12827342454285926*exp(-si*4*i) + 12827342454285926*exp(si*4*i) + 3572093376318669*exp(-si*6*i) + 3572093376318669*exp(si*6*i) + 301903902754734080)^2)/48357032784585166988247040000000000 ;
Thank you so much.
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!