PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.9.4
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.9.4
4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 3.10.4 All 148 releases
visualizer / vendor / markbaker / complex / classes / src / functions / ln.php

ln.php in Visualizer – Tables & Charts Manager with Built-in AI Generator 3.9.4, at vendor/markbaker/complex/classes/src/functions/ln.php

34 lines 963 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 *
5 * Function code for the complex ln() 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 /**
13 * Returns the natural logarithm of a complex number.
14 *
15 * @param Complex|mixed $complex Complex number or a numeric value.
16 * @return Complex The natural logarithm of the complex argument.
17 * @throws Exception If argument isn't a valid real or complex number.
18 * @throws \InvalidArgumentException If the real and the imaginary parts are both zero
19 */
20 function ln($complex)
21 {
22 $complex = Complex::validateComplexArgument($complex);
23
24 if (($complex->getReal() == 0.0) && ($complex->getImaginary() == 0.0)) {
25 throw new \InvalidArgumentException();
26 }
27
28 return new Complex(
29 \log(rho($complex)),
30 theta($complex),
31 $complex->getSuffix()
32 );
33 }
34