Explicit solution using Syms tool box

1 次查看(过去 30 天)
I am trying to run the following code but MATLAB is not showing explicit solution. Any idea how can I retrive it? I tried using MaxDegree but still it wont show the answer.
I know expected answer is very long. But any idea on retiving it ?
Here is code:
clear all
clear
syms TE TS LLL LL
eqn = (TE-TS)^4 == ((LL*(TS^4))+(LLL*TS))^3
solx = solve(eqn, TS,'MaxDegree',12)
  2 个评论
Star Strider
Star Strider 2020-5-22
It does show the answer, actually.
In the degree polynomial, there are three remaining variables, ‘TE’, ‘LL’, and ‘LLL’, so it gives the expressions in terms of those variables.
solx = isolate(expand(eqn), TS)
gives:
solx =
TS == root(LL^3*z^12 + 3*LL^2*LLL*z^9 + 3*LL*LLL^2*z^6 - z^4 + 4*TE*z^3 + LLL^3*z^3 - 6*TE^2*z^2 + 4*TE^3*z - TE^4, z, 1)
An analytic expression for each of those roots is likelly not possible.
.
Muhammad Taha Manzoor
Is there anyway I can save one of the roots and use it in my code.
Actually, there is an other equation in my system and I want to subtitue TS in that equation with this expression (root).
But the problem is that Matlab saves it in the form of struct.

请先登录,再进行评论。

回答(1 个)

John D'Errico
John D'Errico 2020-5-22
编辑:John D'Errico 2020-5-22
You WANT to find a solution to a general 12'th degree polynomial. There are things I want, but cannot have either.
In this case, you have formulated a 12th degree polynomial. Abel-Ruffini showed long ago that there is no analytical solution to such the general problem, since the polynomial degree is at least 5. And since 12 >= 5, you are out of luck. Just specifying MaxDegree as 12 will get you nowhere. It is not just that the expected answer is very long. The expected answer is non-existent, except for rare special cases of the parameters TE, LL, and LLL.
If you can set specific values of LL, LLL, and TE, then you can solve for the roots, but solve will still only be able to formulate them in numerical form almost always. Don't expect an algebraic solution.

类别

Help CenterFile Exchange 中查找有关 Equation Solving 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by