class PHPExcel_Calculation_Engineering

PHPExcelCalculationEngineering

Copyright (c) 2006 - 2015 PHPExcel

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Methods

static string[]
parseComplex(string $complexNumber)

parseComplex

static 
BESSELI($x, $ord)

BESSELI

static 
BESSELJ($x, $ord)

BESSELJ

static 
BESSELK($x, $ord)

BESSELK

static 
BESSELY($x, $ord)

BESSELY

static string
BINTODEC(string $x)

BINTODEC

static string
BINTOHEX(string $x, integer $places = null)

BINTOHEX

static string
BINTOOCT(string $x, integer $places = null)

BINTOOCT

static string
DECTOBIN(string $x, integer $places = null)

DECTOBIN

static string
DECTOHEX(string $x, integer $places = null)

DECTOHEX

static string
DECTOOCT(string $x, integer $places = null)

DECTOOCT

static string
HEXTOBIN(string $x, integer $places = null)

HEXTOBIN

static string
HEXTODEC(string $x)

HEXTODEC

static string
HEXTOOCT(string $x, integer $places = null)

HEXTOOCT

static string
OCTTOBIN(string $x, integer $places = null)

OCTTOBIN

static string
OCTTODEC(string $x)

OCTTODEC

static string
OCTTOHEX(string $x, integer $places = null)

OCTTOHEX

static string
COMPLEX(float $realNumber = 0.0, float $imaginary = 0.0, string $suffix = 'i')

COMPLEX

static float
IMAGINARY(string $complexNumber)

IMAGINARY

static float
IMREAL(string $complexNumber)

IMREAL

static float
IMABS(string $complexNumber)

IMABS

static float
IMARGUMENT(string $complexNumber)

IMARGUMENT

static string
IMCONJUGATE(string $complexNumber)

IMCONJUGATE

static string|float
IMCOS(string $complexNumber)

IMCOS

static string|float
IMSIN(string $complexNumber)

IMSIN

static string
IMSQRT(string $complexNumber)

IMSQRT

static string
IMLN(string $complexNumber)

IMLN

static string
IMLOG10(string $complexNumber)

IMLOG10

static string
IMLOG2(string $complexNumber)

IMLOG2

static string
IMEXP(string $complexNumber)

IMEXP

static string
IMPOWER(string $complexNumber, float $realNumber)

IMPOWER

static string
IMDIV(string $complexDividend, string $complexDivisor)

IMDIV

static string
IMSUB(string $complexNumber1, string $complexNumber2)

IMSUB

static string
IMSUM()

IMSUM

static string
IMPRODUCT()

IMPRODUCT

static 
DELTA($a, $b)

DELTA

static 
GESTEP($number, $step)

GESTEP

static 
erfVal($x)

No description

static 
ERF($lower, $upper = null)

ERF

static 
ERFC(float $x)

ERFC

static 
getConversionGroups()

getConversionGroups Returns a list of the different conversion groups for UOM conversions

static array
getConversionGroupUnits($group = null)

getConversionGroupUnits Returns an array of units of measure, for a specified conversion group, or for all groups

static array
getConversionGroupUnitDetails($group = null)

getConversionGroupUnitDetails

static 
getConversionMultipliers()

getConversionMultipliers Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()

static 
CONVERTUOM($value, $fromUOM, $toUOM)

CONVERTUOM

Details

at line 775
static string[] parseComplex(string $complexNumber)

parseComplex

Parses a complex number into its real and imaginary parts, and an I or J suffix

Parameters

string $complexNumber The complex number

Return Value

string[] Indexed on "real", "imaginary" and "suffix"

at line 887
static BESSELI($x, $ord)

BESSELI

Returns the modified Bessel function In(x), which is equivalent to the Bessel function evaluated for purely imaginary arguments

Excel Function: BESSELI(x,ord)

Parameters

$x
$ord

at line 940
static BESSELJ($x, $ord)

BESSELJ

Returns the Bessel function

Excel Function: BESSELJ(x,ord)

Parameters

$x
$ord

at line 1032
static BESSELK($x, $ord)

BESSELK

Returns the modified Bessel function Kn(x), which is equivalent to the Bessel functions evaluated for purely imaginary arguments.

Excel Function: BESSELK(x,ord)

Parameters

$x
$ord

at line 1116
static BESSELY($x, $ord)

BESSELY

Returns the Bessel function, which is also called the Weber function or the Neumann function.

Excel Function: BESSELY(x,ord)

Parameters

$x
$ord

at line 1165
static string BINTODEC(string $x)

BINTODEC

Return a binary value as decimal.

Excel Function: BIN2DEC(x)

Parameters

string $x The binary number (as a string) that you want to convert. The number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid binary number, or if number contains more than 10 characters (10 bits), BIN2DEC returns the #NUM! error value.

Return Value

string

at line 1218
static string BINTOHEX(string $x, integer $places = null)

BINTOHEX

Return a binary value as hex.

Excel Function: BIN2HEX(x[,places])

Parameters

string $x The binary number (as a string) that you want to convert. The number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid binary number, or if number contains more than 10 characters (10 bits), BIN2HEX returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, BIN2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, BIN2HEX returns the #VALUE! error value. If places is negative, BIN2HEX returns the #NUM! error value.

Return Value

string

at line 1273
static string BINTOOCT(string $x, integer $places = null)

BINTOOCT

Return a binary value as octal.

Excel Function: BIN2OCT(x[,places])

Parameters

string $x The binary number (as a string) that you want to convert. The number cannot contain more than 10 characters (10 bits). The most significant bit of number is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid binary number, or if number contains more than 10 characters (10 bits), BIN2OCT returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, BIN2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, BIN2OCT returns the #VALUE! error value. If places is negative, BIN2OCT returns the #NUM! error value.

Return Value

string

at line 1332
static string DECTOBIN(string $x, integer $places = null)

DECTOBIN

Return a decimal value as binary.

Excel Function: DEC2BIN(x[,places])

Parameters

string $x The decimal integer you want to convert. If number is negative, valid place values are ignored and DEC2BIN returns a 10-character (10-bit) binary number in which the most significant bit is the sign bit. The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number < -512 or if number > 511, DEC2BIN returns the #NUM! error value. If number is nonnumeric, DEC2BIN returns the #VALUE! error value. If DEC2BIN requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, DEC2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, DEC2BIN returns the #VALUE! error value. If places is zero or negative, DEC2BIN returns the #NUM! error value.

Return Value

string

at line 1389
static string DECTOHEX(string $x, integer $places = null)

DECTOHEX

Return a decimal value as hex.

Excel Function: DEC2HEX(x[,places])

Parameters

string $x The decimal integer you want to convert. If number is negative, places is ignored and DEC2HEX returns a 10-character (40-bit) hexadecimal number in which the most significant bit is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number < -549,755,813,888 or if number > 549,755,813,887, DEC2HEX returns the #NUM! error value. If number is nonnumeric, DEC2HEX returns the #VALUE! error value. If DEC2HEX requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, DEC2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, DEC2HEX returns the #VALUE! error value. If places is zero or negative, DEC2HEX returns the #NUM! error value.

Return Value

string

at line 1444
static string DECTOOCT(string $x, integer $places = null)

DECTOOCT

Return an decimal value as octal.

Excel Function: DEC2OCT(x[,places])

Parameters

string $x The decimal integer you want to convert. If number is negative, places is ignored and DEC2OCT returns a 10-character (30-bit) octal number in which the most significant bit is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number < -536,870,912 or if number > 536,870,911, DEC2OCT returns the #NUM! error value. If number is nonnumeric, DEC2OCT returns the #VALUE! error value. If DEC2OCT requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, DEC2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, DEC2OCT returns the #VALUE! error value. If places is zero or negative, DEC2OCT returns the #NUM! error value.

Return Value

string

at line 1502
static string HEXTOBIN(string $x, integer $places = null)

HEXTOBIN

Return a hex value as binary.

Excel Function: HEX2BIN(x[,places])

Parameters

string $x the hexadecimal number you want to convert. Number cannot contain more than 10 characters. The most significant bit of number is the sign bit (40th bit from the right). The remaining 9 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, HEX2BIN ignores places and returns a 10-character binary number. If number is negative, it cannot be less than FFFFFFFE00, and if number is positive, it cannot be greater than 1FF. If number is not a valid hexadecimal number, HEX2BIN returns the #NUM! error value. If HEX2BIN requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, HEX2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, HEX2BIN returns the #VALUE! error value. If places is negative, HEX2BIN returns the #NUM! error value.

Return Value

string

at line 1539
static string HEXTODEC(string $x)

HEXTODEC

Return a hex value as decimal.

Excel Function: HEX2DEC(x)

Parameters

string $x The hexadecimal number you want to convert. This number cannot contain more than 10 characters (40 bits). The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid hexadecimal number, HEX2DEC returns the #NUM! error value.

Return Value

string

at line 1586
static string HEXTOOCT(string $x, integer $places = null)

HEXTOOCT

Return a hex value as octal.

Excel Function: HEX2OCT(x[,places])

Parameters

string $x The hexadecimal number you want to convert. Number cannot contain more than 10 characters. The most significant bit of number is the sign bit. The remaining 39 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, HEX2OCT ignores places and returns a 10-character octal number. If number is negative, it cannot be less than FFE0000000, and if number is positive, it cannot be greater than 1FFFFFFF. If number is not a valid hexadecimal number, HEX2OCT returns the #NUM! error value. If HEX2OCT requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, HEX2OCT uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, HEX2OCT returns the #VALUE! error value. If places is negative, HEX2OCT returns the #NUM! error value.

Return Value

string

at line 1638
static string OCTTOBIN(string $x, integer $places = null)

OCTTOBIN

Return an octal value as binary.

Excel Function: OCT2BIN(x[,places])

Parameters

string $x The octal number you want to convert. Number may not contain more than 10 characters. The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, OCT2BIN ignores places and returns a 10-character binary number. If number is negative, it cannot be less than 7777777000, and if number is positive, it cannot be greater than 777. If number is not a valid octal number, OCT2BIN returns the #NUM! error value. If OCT2BIN requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, OCT2BIN uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, OCT2BIN returns the #VALUE! error value. If places is negative, OCT2BIN returns the #NUM! error value.

Return Value

string

at line 1675
static string OCTTODEC(string $x)

OCTTODEC

Return an octal value as decimal.

Excel Function: OCT2DEC(x)

Parameters

string $x The octal number you want to convert. Number may not contain more than 10 octal characters (30 bits). The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is not a valid octal number, OCT2DEC returns the #NUM! error value.

Return Value

string

at line 1719
static string OCTTOHEX(string $x, integer $places = null)

OCTTOHEX

Return an octal value as hex.

Excel Function: OCT2HEX(x[,places])

Parameters

string $x The octal number you want to convert. Number may not contain more than 10 octal characters (30 bits). The most significant bit of number is the sign bit. The remaining 29 bits are magnitude bits. Negative numbers are represented using two's-complement notation. If number is negative, OCT2HEX ignores places and returns a 10-character hexadecimal number. If number is not a valid octal number, OCT2HEX returns the #NUM! error value. If OCT2HEX requires more than places characters, it returns the #NUM! error value.
integer $places The number of characters to use. If places is omitted, OCT2HEX uses the minimum number of characters necessary. Places is useful for padding the return value with leading 0s (zeros). If places is not an integer, it is truncated. If places is nonnumeric, OCT2HEX returns the #VALUE! error value. If places is negative, OCT2HEX returns the #NUM! error value.

Return Value

string

at line 1753
static string COMPLEX(float $realNumber = 0.0, float $imaginary = 0.0, string $suffix = 'i')

COMPLEX

Converts real and imaginary coefficients into a complex number of the form x + yi or x + yj.

Excel Function: COMPLEX(realNumber,imaginary[,places])

Parameters

float $realNumber The real coefficient of the complex number.
float $imaginary The imaginary coefficient of the complex number.
string $suffix The suffix for the imaginary component of the complex number. If omitted, the suffix is assumed to be "i".

Return Value

string

at line 1807
static float IMAGINARY(string $complexNumber)

IMAGINARY

Returns the imaginary coefficient of a complex number in x + yi or x + yj text format.

Excel Function: IMAGINARY(complexNumber)

Parameters

string $complexNumber The complex number for which you want the imaginary coefficient.

Return Value

float

at line 1829
static float IMREAL(string $complexNumber)

IMREAL

Returns the real coefficient of a complex number in x + yi or x + yj text format.

Excel Function: IMREAL(complexNumber)

Parameters

string $complexNumber The complex number for which you want the real coefficient.

Return Value

float

at line 1849
static float IMABS(string $complexNumber)

IMABS

Returns the absolute value (modulus) of a complex number in x + yi or x + yj text format.

Excel Function: IMABS(complexNumber)

Parameters

string $complexNumber The complex number for which you want the absolute value.

Return Value

float

at line 1874
static float IMARGUMENT(string $complexNumber)

IMARGUMENT

Returns the argument theta of a complex number, i.e. the angle in radians from the real axis to the representation of the number in polar coordinates.

Excel Function: IMARGUMENT(complexNumber)

Parameters

string $complexNumber The complex number for which you want the argument theta.

Return Value

float

at line 1909
static string IMCONJUGATE(string $complexNumber)

IMCONJUGATE

Returns the complex conjugate of a complex number in x + yi or x + yj text format.

Excel Function: IMCONJUGATE(complexNumber)

Parameters

string $complexNumber The complex number for which you want the conjugate.

Return Value

string

at line 1940
static string|float IMCOS(string $complexNumber)

IMCOS

Returns the cosine of a complex number in x + yi or x + yj text format.

Excel Function: IMCOS(complexNumber)

Parameters

string $complexNumber The complex number for which you want the cosine.

Return Value

string|float

at line 1971
static string|float IMSIN(string $complexNumber)

IMSIN

Returns the sine of a complex number in x + yi or x + yj text format.

Excel Function: IMSIN(complexNumber)

Parameters

string $complexNumber The complex number for which you want the sine.

Return Value

string|float

at line 2000
static string IMSQRT(string $complexNumber)

IMSQRT

Returns the square root of a complex number in x + yi or x + yj text format.

Excel Function: IMSQRT(complexNumber)

Parameters

string $complexNumber The complex number for which you want the square root.

Return Value

string

at line 2030
static string IMLN(string $complexNumber)

IMLN

Returns the natural logarithm of a complex number in x + yi or x + yj text format.

Excel Function: IMLN(complexNumber)

Parameters

string $complexNumber The complex number for which you want the natural logarithm.

Return Value

string

at line 2062
static string IMLOG10(string $complexNumber)

IMLOG10

Returns the common logarithm (base 10) of a complex number in x + yi or x + yj text format.

Excel Function: IMLOG10(complexNumber)

Parameters

string $complexNumber The complex number for which you want the common logarithm.

Return Value

string

at line 2089
static string IMLOG2(string $complexNumber)

IMLOG2

Returns the base-2 logarithm of a complex number in x + yi or x + yj text format.

Excel Function: IMLOG2(complexNumber)

Parameters

string $complexNumber The complex number for which you want the base-2 logarithm.

Return Value

string

at line 2116
static string IMEXP(string $complexNumber)

IMEXP

Returns the exponential of a complex number in x + yi or x + yj text format.

Excel Function: IMEXP(complexNumber)

Parameters

string $complexNumber The complex number for which you want the exponential.

Return Value

string

at line 2150
static string IMPOWER(string $complexNumber, float $realNumber)

IMPOWER

Returns a complex number in x + yi or x + yj text format raised to a power.

Excel Function: IMPOWER(complexNumber,realNumber)

Parameters

string $complexNumber The complex number you want to raise to a power.
float $realNumber The power to which you want to raise the complex number.

Return Value

string

at line 2186
static string IMDIV(string $complexDividend, string $complexDivisor)

IMDIV

Returns the quotient of two complex numbers in x + yi or x + yj text format.

Excel Function: IMDIV(complexDividend,complexDivisor)

Parameters

string $complexDividend The complex numerator or dividend.
string $complexDivisor The complex denominator or divisor.

Return Value

string

at line 2231
static string IMSUB(string $complexNumber1, string $complexNumber2)

IMSUB

Returns the difference of two complex numbers in x + yi or x + yj text format.

Excel Function: IMSUB(complexNumber1,complexNumber2)

Parameters

string $complexNumber1 The complex number from which to subtract complexNumber2.
string $complexNumber2 The complex number to subtract from complexNumber1.

Return Value

string

at line 2264
static string IMSUM()

IMSUM

Returns the sum of two or more complex numbers in x + yi or x + yj text format.

Excel Function: IMSUM(complexNumber[,complexNumber[,...]])

Return Value

string

at line 2303
static string IMPRODUCT()

IMPRODUCT

Returns the product of two or more complex numbers in x + yi or x + yj text format.

Excel Function: IMPRODUCT(complexNumber[,complexNumber[,...]])

Return Value

string

at line 2346
static DELTA($a, $b)

DELTA

Tests whether two values are equal. Returns 1 if number1 = number2; returns 0 otherwise. Use this function to filter a set of values. For example, by summing several DELTA functions you calculate the count of equal pairs. This function is also known as the Kronecker Delta function.

Excel Function: DELTA(a[,b])

Parameters

$a
$b

at line 2370
static GESTEP($number, $step)

GESTEP

Excel Function: GESTEP(number[,step])

Returns 1 if number >= step; returns 0 (zero) otherwise Use this function to filter a set of values. For example, by summing several GESTEP functions you calculate the count of values that exceed a threshold.

Parameters

$number
$step

at line 2384
static erfVal($x)

Parameters

$x

at line 2425
static ERF($lower, $upper = null)

ERF

Returns the error function integrated between the lower and upper bound arguments.

Note: In Excel 2007 or earlier, if you input a negative value for the upper or lower bound arguments, the function would return a #NUM! error. However, in Excel 2010, the function algorithm was improved, so that it can now calculate the function for both positive and negative ranges. PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments.

Excel Function: ERF(lower[,upper])

Parameters

$lower
$upper

at line 2491
static ERFC(float $x)

ERFC

Returns the complementary ERF function integrated between x and infinity

Note: In Excel 2007 or earlier, if you input a negative value for the lower bound argument, the function would return a #NUM! error. However, in Excel 2010, the function algorithm was improved, so that it can now calculate the function for both positive and negative x values. PHPExcel follows Excel 2010 behaviour, and accepts nagative arguments.

Excel Function: ERFC(x)

Parameters

float $x The lower bound for integrating ERFC @return float

at line 2508
static getConversionGroups()

getConversionGroups Returns a list of the different conversion groups for UOM conversions

@return array

at line 2525
static array getConversionGroupUnits($group = null)

getConversionGroupUnits Returns an array of units of measure, for a specified conversion group, or for all groups

@param string $group The group whose units of measure you want to retrieve

Parameters

$group

Return Value

array

at line 2543
static array getConversionGroupUnitDetails($group = null)

getConversionGroupUnitDetails

@param string $group The group whose units of measure you want to retrieve

Parameters

$group

Return Value

array

at line 2564
static getConversionMultipliers()

getConversionMultipliers Returns an array of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()

@return array of mixed

at line 2586
static CONVERTUOM($value, $fromUOM, $toUOM)

CONVERTUOM

Converts a number from one measurement system to another. For example, CONVERT can translate a table of distances in miles to a table of distances in kilometers.

Excel Function: CONVERT(value,fromUOM,toUOM)

Parameters

$value
$fromUOM
$toUOM