function testDiv()
 {
     /*{{{*/
     $tmp = Math_ComplexOp::div($this->cnum1, $this->cnum2);
     $this->assertEquals('-0.139989043483 + 0.280105724706i', $tmp->toString());
 }
Example #2
0
 /**
  * Returns the logarithm of base c2 of the complex number c1
  *
  * @param Math_Complex $c1
  * @param Math_Complex $c2
  * @return Math_Complex A valid Math_Complex number on success
  * @throws InvalidArgumentException
  */
 public static function logBase(Math_Complex $c1, Math_Complex $c2)
 {
     if (!Math_ComplexOp::isComplex($c1) || !Math_ComplexOp::isComplex($c2)) {
         throw new InvalidArgumentException('Both arguments must be Math_Complex objects');
     } else {
         return Math_ComplexOp::div(Math_ComplexOp::log($c1), Math_ComplexOp::log($c2));
     }
 }
if (!Math_ComplexOp::areEqual($a, $b)) {
    echo "a != b\n";
}
$z = Math_ComplexOp::add($a, $b);
echo "add(a, b) = " . $z->toString() . "\n";
$z = Math_ComplexOp::sub($a, $b);
echo "sub(a,b) = a - b = " . $z->toString() . "\n";
$t = Math_ComplexOp::sub($b, $a);
echo "b - a: " . $t->toString() . "\n";
$t = Math_ComplexOp::sub($b, Math_ComplexOp::conjugate($a));
echo "b - a': " . $t->toString() . "\n";
$v = Math_ComplexOp::conjugate($b);
$t = Math_ComplexOp::sub($v, $a);
echo "b' - a: " . $t->toString() . "\n";
$v = Math_ComplexOp::conjugate($b);
$t = Math_ComplexOp::sub($v, Math_ComplexOp::conjugate($a));
echo "b' - a': " . $t->toString() . "\n";
$z = Math_ComplexOp::mult($a, $b);
echo "mult(a, b) = " . $z->toString() . "\n";
$z = Math_ComplexOp::div($a, $b);
echo "div(a, b) = " . $z->toString() . "\n";
$z = Math_ComplexOp::pow($a, $b);
echo "pow(a, b) = " . $z->toString() . "\n";
$z = Math_ComplexOp::logBase($a, $b);
echo "logBase(a, b) = " . $z->toString() . "\n";
$z = Math_ComplexOp::multReal($a, M_PI);
echo "multReal(a, M_PI) = " . $z->toString() . "\n";
$z = Math_ComplexOp::multIm($a, $im);
echo "multIm(a, i) = " . $z->toString() . "\n";
$z = Math_ComplexOp::powReal($a, M_E);
echo "powReal(a, M_E) = " . $z->toString() . "\n";