\PHPExcel_Calculation_Engineering

PHPExcel_Calculation_Engineering

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

Summary

Methods
Properties
Constants
parseComplex()
BESSELI()
BESSELJ()
BESSELK()
BESSELY()
BINTODEC()
BINTOHEX()
BINTOOCT()
DECTOBIN()
DECTOHEX()
DECTOOCT()
HEXTOBIN()
HEXTODEC()
HEXTOOCT()
OCTTOBIN()
OCTTODEC()
OCTTOHEX()
COMPLEX()
IMAGINARY()
IMREAL()
IMABS()
IMARGUMENT()
IMCONJUGATE()
IMCOS()
IMSIN()
IMSQRT()
IMLN()
IMLOG10()
IMLOG2()
IMEXP()
IMPOWER()
IMDIV()
IMSUB()
IMSUM()
IMPRODUCT()
DELTA()
GESTEP()
erfVal()
ERF()
ERFC()
getConversionGroups()
getConversionGroupUnits()
getConversionGroupUnitDetails()
getConversionMultipliers()
CONVERTUOM()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
cleanComplex()
nbrConversionFormat()
besselK0()
besselK1()
besselY0()
besselY1()
erfcVal()
$conversionUnits
$conversionMultipliers
$unitConversions
$twoSqrtPi
$oneSqrtPi
N/A

Properties

$conversionUnits

$conversionUnits : array<mixed,mixed>

Details of the Units of measure that can be used in CONVERTUOM()

Type

array<mixed,mixed>

$conversionMultipliers

$conversionMultipliers : array<mixed,mixed>

Details of the Multiplier prefixes that can be used with Units of Measure in CONVERTUOM()

Type

array<mixed,mixed>

$unitConversions

$unitConversions : array<mixed,mixed>

Details of the Units of measure conversion factors, organised by group

Type

array<mixed,mixed>

$twoSqrtPi

$twoSqrtPi : 

Type

$oneSqrtPi

$oneSqrtPi : 

Type

Methods

parseComplex()

parseComplex(string  $complexNumber) : array<mixed,string>

parseComplex

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

Parameters

string $complexNumber

The complex number

Returns

array<mixed,string> —

Indexed on "real", "imaginary" and "suffix"

BESSELI()

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

BESSELJ()

BESSELJ(  $x,   $ord) 

BESSELJ

Returns the Bessel function

Excel Function: BESSELJ(x,ord)

Parameters

$x
$ord

BESSELK()

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

BESSELY()

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

BINTODEC()

BINTODEC(string  $x) : string

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.

Returns

string

BINTOHEX()

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

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.

Returns

string

BINTOOCT()

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

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.

Returns

string

DECTOBIN()

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

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.

Returns

string

DECTOHEX()

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

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.

Returns

string

DECTOOCT()

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

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.

Returns

string

HEXTOBIN()

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

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.

Returns

string

HEXTODEC()

HEXTODEC(string  $x) : string

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.

Returns

string

HEXTOOCT()

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

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.

Returns

string

OCTTOBIN()

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

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.

Returns

string

OCTTODEC()

OCTTODEC(string  $x) : string

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.

Returns

string

OCTTOHEX()

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

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.

Returns

string

COMPLEX()

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

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".

Returns

string

IMAGINARY()

IMAGINARY(string  $complexNumber) : float

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.

Returns

float

IMREAL()

IMREAL(string  $complexNumber) : float

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.

Returns

float

IMABS()

IMABS(string  $complexNumber) : float

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.

Returns

float

IMARGUMENT()

IMARGUMENT(string  $complexNumber) : float

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.

Returns

float

IMCONJUGATE()

IMCONJUGATE(string  $complexNumber) : string

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.

Returns

string

IMCOS()

IMCOS(string  $complexNumber) : string|float

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.

Returns

string|float

IMSIN()

IMSIN(string  $complexNumber) : string|float

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.

Returns

string|float

IMSQRT()

IMSQRT(string  $complexNumber) : string

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.

Returns

string

IMLN()

IMLN(string  $complexNumber) : string

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.

Returns

string

IMLOG10()

IMLOG10(string  $complexNumber) : string

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.

Returns

string

IMLOG2()

IMLOG2(string  $complexNumber) : string

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.

Returns

string

IMEXP()

IMEXP(string  $complexNumber) : string

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.

Returns

string

IMPOWER()

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

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.

Returns

string

IMDIV()

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

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.

Returns

string

IMSUB()

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

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.

Returns

string

IMSUM()

IMSUM() : string

IMSUM

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

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

Returns

string

IMPRODUCT()

IMPRODUCT() : string

IMPRODUCT

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

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

Returns

string

DELTA()

DELTA(float  $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

float $a

The first number. @param float $b The second number. If omitted, b is assumed to be zero. @return int

$b

GESTEP()

GESTEP(float  $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

float $number

The value to test against step. @param float $step The threshold value. If you omit a value for step, GESTEP uses zero. @return int

$step

erfVal()

erfVal(  $x) 

Parameters

$x

ERF()

ERF(float  $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

float $lower

lower bound for integrating ERF @param float $upper upper bound for integrating ERF. If omitted, ERF integrates between zero and lower_limit @return float

$upper

ERFC()

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

getConversionGroups()

getConversionGroups() 

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

@return array

getConversionGroupUnits()

getConversionGroupUnits(  $group = null) : array

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

Returns

array

getConversionGroupUnitDetails()

getConversionGroupUnitDetails(  $group = null) : array

getConversionGroupUnitDetails

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

Parameters

$group

Returns

array

getConversionMultipliers()

getConversionMultipliers() 

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

@return array of mixed

CONVERTUOM()

CONVERTUOM(float  $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

float $value

The value in fromUOM to convert. @param string $fromUOM The units for value. @param string $toUOM The units for the result.

@return float

$fromUOM
$toUOM

cleanComplex()

cleanComplex(string  $complexNumber) : string

Cleans the leading characters in a complex number string

Parameters

string $complexNumber

The complex number to clean

Returns

string —

The "cleaned" complex number

nbrConversionFormat()

nbrConversionFormat(string  $xVal, integer  $places) : string

Formats a number base string value with leading zeroes

Parameters

string $xVal

The "number" to pad

integer $places

The length that we want to pad this value

Returns

string —

The padded "number"

besselK0()

besselK0(  $fNum) 

Parameters

$fNum

besselK1()

besselK1(  $fNum) 

Parameters

$fNum

besselY0()

besselY0(  $fNum) 

Parameters

$fNum

besselY1()

besselY1(  $fNum) 

Parameters

$fNum

erfcVal()

erfcVal(  $x) 

Parameters

$x