Book Home Programming PerlSearch this book

32.33. Math::Complex

use Math::Complex;

$z = Math::Complex->make(5, 6);
$z = cplx(5, 6);         # same thing, but shorter
$t = 4 - 3*i + $z;       # do standard complex math
print "$t\n";            # prints 9+3i

print sqrt(-9), "\n";    # prints 3i
The Math::Complex module provides complex number objects with overloaded operators. These are numbers with both real and imaginary portions, like those satisfying even-numbered integral roots of negative numbers as shown above. Besides arithmetical operators, many built-in math functions are also overridden by versions that understand complex numbers, including abs, log, sqrt, sin, cos, and atan2. Other functions provided are Re and Im to provide the real and imaginary portions of their complex arguments, plus a full battery of extended trigonometric functions, such as tan, asin, acos, sinh, cosh, and tanh. The module also exports the constant i, which, as you might imagine, holds the value of i; that is, the square root of -1.



Library Navigation Links

Copyright © 2001 O'Reilly & Associates. All rights reserved.