Quantcast
Channel: MATLAB Central Newsreader Recent Posts
Viewing all articles
Browse latest Browse all 19628

Re: Matlab wrong cubic root

$
0
0
On 12/15/2012 12:19 PM, sergio_r@mail.com wrote:
> Hello all,
>
> Is there a way of telling matlab to return first a real root
> instead of a complex one?
>
> For some strange reason matlab seems not to handle cubic roots
> properly. Apparently the default behaviour is to first
> report a complex root. Let's see two examples:
>
>>> (-1/2)^(1/3)
>
> ans =
>
> 0.3969 + 0.6874i
>
>>> (-1/2)^(2/3)
>
> ans =
>
> -0.3150 + 0.5456i
>
> Thanks in advance.
>

I think that is sort of convention. I am not sure now.
They pick one value, principal one I guess, and that is
the one picked.

But you could always use solve if you want all roots?

--------------------------
double(solve(x^3+1/2,x))

ans =

   -0.7937
    0.3969 + 0.6874i
    0.3969 - 0.6874i
-----------------------------

ans.^3

   -0.5000
   -0.5000 + 0.0000i
   -0.5000 - 0.0000i


--Nasser

Viewing all articles
Browse latest Browse all 19628

Trending Articles