double precision becomes complex double after calculation

The outputs for c1(p) becomes complex double after calculation. However, it should be double precision since I am just raising the power of the element. Is there any possibility to fix it? I calculated manually and all the outputs should be double precision.

 Accepted Answer

-1 is real. 0.5 is real. (-1)^(0.5) is complex. There's nothing to "fix" as that's the expected behavior.
If you want MATLAB to throw an error when you raise a real number to a real power and would receive a complex result, use the realpow function.

More Answers (0)

Categories

Asked:

CAL
on 21 Aug 2018

Commented:

CAL
on 22 Aug 2018

Community Treasure Hunt

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

Start Hunting!