Differences Between: [Versions 310 and 311] [Versions 39 and 311]
1 <?php 2 3 /** 4 * 5 * Function code for the complex atan() function 6 * 7 * @copyright Copyright (c) 2013-2018 Mark Baker (https://github.com/MarkBaker/PHPComplex) 8 * @license https://opensource.org/licenses/MIT MIT 9 */ 10 namespace Complex; 11 12 //include_once 'Math/Complex.php'; 13 //include_once 'Math/ComplexOp.php'; 14 15 /** 16 * Returns the inverse tangent of a complex number. 17 * 18 * @param Complex|mixed $complex Complex number or a numeric value. 19 * @return Complex The inverse tangent of the complex argument. 20 * @throws Exception If argument isn't a valid real or complex number. 21 * @throws \InvalidArgumentException If function would result in a division by zero 22 */ 23 function atan($complex): Complex 24 { 25 $complex = Complex::validateComplexArgument($complex); 26 27 if ($complex->isReal()) { 28 return new Complex(\atan($complex->getReal())); 29 } 30 31 $t1Value = new Complex(-1 * $complex->getImaginary(), $complex->getReal()); 32 $uValue = new Complex(1, 0); 33 34 $d1Value = clone $uValue; 35 $d1Value = subtract($d1Value, $t1Value); 36 $d2Value = add($t1Value, $uValue); 37 $uResult = $d1Value->divideBy($d2Value); 38 $uResult = ln($uResult); 39 40 return new Complex( 41 (($uResult->getImaginary() == M_PI) ? -M_PI : $uResult->getImaginary()) * -0.5, 42 $uResult->getReal() * 0.5, 43 $complex->getSuffix() 44 ); 45 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body