tzeg6@T+ f,c>o⌻wRW/ ‹KgMzPny\F7nXoāKJg EB? Cez>^^$/fЁ1. ?c6ir;*{4N;@a-ɉ53j`?<:A0׶,)ՈGsB =- lN i|E2ZyCFaj^{RE8K;l' HEt>*^s>5:(H_} gE2H`8LS0-iog9$:f:A꫾^fpPޓ\dzkR:җ6plT_ H߅f2@Ll9Od }& &0KoJh2P!7nF!`g\ +5Hd`;R0ƭYD,\; ?DK 1`={ss:*s@‚ۄV֕aovw$$A'syw.4M&L*\Iu)Q- ["$ k|B]RW8Q,cz4L4e JcTğ*uعwacG'2YQ\ +5Hd`;R0ƭYD,\; ?2{D1 -:ʒئDV\ +5Hd`;R0ƭYD,\; ? FŖwZ*RsF۰}ib|J/n\j&rJ%+j[Ʃ(nB sm??^`!?5vaȬ? /&H&ޫ唬tOJĨ}`݈sO>s_f/Xwl)mļ%rjru7DQy>oڥ>Sgc?yx?h1랰pE;b"'Xg ] 1HL`H$־H OkWXߩ~?p kˈ RFgt3/ߐUo%l8e(FbeRHOYNv?Ox E&3?OBBOdz&EV":QO*Z"0׼Ȱ}w[Tְp!IC g#0G= _1ИNM?kxܲ\PnqPPSnja&le,'wё2a,~%-P!AO{`PL /Xض$30k]eSA7Z}o[LZ@-1B83W\U##ٖAyYTe /cnoˆv>eE>AUbt9FX2Џ:`, WsE~T?1ϸ } >vMG$YytNYp N[}ЕrEVȜ*{ ؆/}Cn_f=ml'NBUSD<XPJl|I mR C*\U1.&:N㠔UEEjS~21AGpFy S_M'E!Kێȕ+MM:ܚ}Z5=ܹ0GMܣ fX9Wݎԧ鱌Ӛ .9c\r1_Y[5h9 keRs0"]|WYҋFoN_rR0 Et%a9ys0&/֝I)ɧlZ)ᄩ;:STE~0GJİ KQ>.*@# کwK7 Qo,1f&͊ijiF^,"uiYB-L>u[+[,';\uo&?52k@>P ̾lK0+e8D_Yt=e$YV6mW]EwW׮5_6^XNvԣΐ /:,!1Qe4o tLWʃwtnۚ9QqGFBkn%}VϺs|˘Jr~ͱU_~N)/Vf;Rf71$% ifCFy S_M';ClB( ʯ9MXNy1Sna Uܝ\e2@þ\rßSR?|cح',Ue/KgVM<^Iyu*IC_[WyQ[[ SG'vm#+5e.c3B[cyK\U{ow9Nا1 u1hD]d_Czh?:DpD $V?xNr[ޠ UOӬ  I|^@jc63Jt:fWE hj&Hbٟ֫1fFecXvvRNPw 򑜭&xqZ&(Ɏf|cHIhom)lsGX PxL{]l493A?$Lcڭo~AW[VˎWxt5>>30J5S0iH٦Sn '\Eh;熺['R7ē`]PDϽ;=u,{9RjV?~@ꕯ9MXNy1Sna Uܝ\gZm坷XFi 5YG4# +ϼ=8̲ -pⶖE%w7_Q$ߟe0-"0]$SIsƣȯsL!#T̰"#=& +!#oM{S)Ѓp,4w2TPdvA/NǴ33(7,TģY"TTRv%Rc &f.|ԟC]G"1DQK$h5/:,!1Qe4o tLWʃwtnۚ9QqGFBkn%}VϺs|˘Jr~iCRl`"N/dJF[$dO#k A!ש"\:޼=\ܯ)%8Ӳ#Snc%G8-plP4yrA3Sʧ;PNSP";[w)-JNG$YCWq1^ :}؝Ղg=jyfBkI_6k@V|qM>H?Y8hh#N!1y on-folder-open"> JAMA For an m-by-n matrix A with m >= n, the singular value decomposition is an m-by-n orthogonal matrix U, an n-by-n diagonal matrix S, and an n-by-n orthogonal matrix V so that A = U*S*V'
  •  JAMA Pythagorean Theorem: a = 3 b = 4 r = sqrt(square(a) + square(b)) r = 5 r = sqrt(a^2 + b^2) without under/overflow
  •  PHPExcel
  • PHPExcel_Writer_Excel5_Parser

    category PHPExcel
    package PHPExcel_Writer_Excel5
    copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)

     Methods

    The class constructor

    __construct() 

    Advance to the next valid token.

    _advance() 
    access private

    pack() row and column into the required 3 or 4 byte format.

    _cellToPackedRowcol(string $cell) : array
    access private

    Parameters

    $cell

    string

    The Excel cell reference to be packed

    Returns

    arrayArray containing the row and column in packed() format

    Convert an Excel cell reference such as A1 or $B2 or C$3 or $D$4 to a zero indexed row and column number.

    _cellToRowcol(string $cell) : array

    Also returns two (0,1) values to indicate whether the row or column are relative references.

    access private

    Parameters

    $cell

    string

    The Excel cell reference in A1 format.

    Returns

    array

    It parses a condition.

    _condition() : mixed

    It assumes the following rule: Cond -> Expr [(">" | "<") Expr]

    access private

    Returns

    mixedThe parsed ptg'd tree on success

    Convert a token to the proper ptg value.

    _convert(mixed $token) : mixed
    access private

    Parameters

    $token

    mixed

    The token to convert.

    Returns

    mixedthe converted token on success

    Convert an error code to a ptgErr

    _convertError(string $errorCode) : string
    access private

    Parameters

    $errorCode

    string

    The error code for conversion to its ptg value

    Returns

    stringThe error code ptgErr

    Convert a function to a ptgFunc or ptgFuncVarV depending on the number of args that it takes.

    _convertFunction(string $token, integer $num_args) : string
    access private

    Parameters

    $token

    string

    The name of the function for convertion to ptg value.

    $num_args

    integer

    The number of arguments the function receives.

    Returns

    stringThe packed ptg for the function

    Convert a number token to ptgInt or ptgNum

    _convertNumber(mixed $num) 
    access private

    Parameters

    $num

    mixed

    an integer or double for conversion to its ptg value

    Convert an Excel range such as A1:D4 to a ptgRefV.

    _convertRange2d(string $range, int $class) 
    access private

    Parameters

    $range

    string

    An Excel range in the A1:A2

    $class

    int

    Convert an Excel 3d range such as "Sheet1!A1:D4" or "Sheet1:Sheet2!A1:D4" to a ptgArea3d.

    _convertRange3d(string $token) : mixed
    access private

    Parameters

    $token

    string

    An Excel range in the Sheet1!A1:A2 format.

    Returns

    mixedThe packed ptgArea3d token on success.

    Convert an Excel reference such as A1, $B2, C$3 or $D$4 to a ptgRefV.

    _convertRef2d(string $cell) : string
    access private

    Parameters

    $cell

    string

    An Excel cell reference

    Returns

    stringThe cell in packed() format with the corresponding ptg

    Convert an Excel 3d reference such as "Sheet1!A1" or "Sheet1:Sheet2!A1" to a ptgRef3d.

    _convertRef3d(string $cell) : mixed
    access private

    Parameters

    $cell

    string

    An Excel cell reference

    Returns

    mixedThe packed ptgRef3d token on success.

    Convert a string token to ptgStr

    _convertString(string $string) : mixed
    access private

    Parameters

    $string

    string

    A string for conversion to its ptg value.

    Returns

    mixedthe converted token on success

    Creates a tree.

    _createTree(mixed $value, mixed $left, mixed $right) : array

    In fact an array which may have one or two arrays (sub-trees) as elements.

    access private

    Parameters

    $value

    mixed

    The value of this node.

    $left

    mixed

    The left array (sub-tree) or a final node.

    $right

    mixed

    The right array (sub-tree) or a final node.

    Returns

    arrayA tree

    It parses a expression.

    _expression() : mixed

    It assumes the following rule: Expr -> Term [("+" | "-") Term] -> "string" -> "-" Term : Negative value -> "+" Term : Positive value -> Error code

    access private

    Returns

    mixedThe parsed ptg'd tree on success

    It parses a factor.

    _fact() : mixed

    It assumes the following rule: Fact -> ( Expr ) | CellRef | CellRange | Number | Function

    access private

    Returns

    mixedThe parsed ptg'd tree on success

    It parses a function call.

    _func() : mixed

    It assumes the following rule: Func -> ( Expr [,Expr]* )

    access private

    Returns

    mixedThe parsed ptg'd tree on success

    Look up the REF index that corresponds to an external sheet name (or range).

    _getRefIndex(string $ext_ref) : mixed

    If it doesn't exist yet add it to the workbook's references array. It assumes all sheet names given must exist.

    access private

    Parameters

    $ext_ref

    string

    The name of the external reference

    Returns

    mixedThe reference index in packed() format on success

    Look up the index that corresponds to an external sheet name.

    _getSheetIndex(string $sheet_name) : integer

    The hash of sheet names is updated by the addworksheet() method of the PHPExcel_Writer_Excel5_Workbook class.

    access private

    Parameters

    $sheet_name

    string

    Sheet name

    Returns

    integerThe sheet index, -1 if the sheet was not found

    Initialize the ptg and function hashes.

    _initializeHashes() 
    access private

    Checks if it's a valid token.

    _match(mixed $token) : mixed
    access private

    Parameters

    $token

    mixed

    The token to check.

    Returns

    mixedThe checked token or false on failure

    Convert the sheet name part of an external reference, for example "Sheet1" or "Sheet1:Sheet2", to a packed structure.

    _packExtRef(string $ext_ref) : string
    access private

    Parameters

    $ext_ref

    string

    The name of the external reference

    Returns

    stringThe reference index in packed() format

    This function just introduces a ptgParen element in the tree, so that Excel doesn't get confused when working with a parenthesized formula afterwards.

    _parenthesizedExpression() : array
    access private
    see \_fact()

    Returns

    arrayThe parsed ptg'd tree

    pack() row range into the required 3 or 4 byte format.

    _rangeToPackedRange(string $range) : array

    Just using maximum col/rows, which is probably not the correct solution

    access private

    Parameters

    $range

    string

    The Excel range to be packed

    Returns

    arrayArray containing (row1,col1,row2,col2) in packed() format

    It parses a term.

    _term() : mixed

    It assumes the following rule: Term -> Fact [("*" | "/") Fact]

    access private

    Returns

    mixedThe parsed ptg'd tree on success

    The parsing method.

    parse(string $formula) : mixed

    It parses a formula.

    access public

    Parameters

    $formula

    string

    The formula to parse, without the initial equal sign (=).

    Returns

    mixedtrue on success

    This method is used to update the array of sheet names.

    setExtSheet(string $name, integer $index) 

    It is called by the addWorksheet() method of the PHPExcel_Writer_Excel5_Workbook class.

    access public
    see \PHPExcel_Writer_Excel5_Workbook::addWorksheet()

    Parameters

    $name

    string

    The name of the worksheet being added

    $index

    integer

    The index of the worksheet being added

    Builds a string containing the tree in reverse polish notation (What you would use in a HP calculator stack).

    toReversePolish(array $tree) : string

    The following tree:

    + / \ 2 3

    produces: "23+"

    The following tree:

    + / \ 3 * / \ 6 A1

    produces: "36A1*+"

    In fact all operands, functions, references, etc... are written as ptg's

    access public

    Parameters

    $tree

    array

    The optional tree to convert.

    Returns

    stringThe tree in reverse polish notation

     Properties

     

    $_current_char : integer
     

    $_current_token : string
     

    $_ext_sheets : array
     

    $_formula : string
     

    $_lookahead : string
     

    $_parse_tree : string
     

    $_references : array

     Constants

     

    REGEX_SHEET_TITLE_QUOTED

    REGEX_SHEET_TITLE_QUOTED 
     

    REGEX_SHEET_TITLE_UNQUOTED

    REGEX_SHEET_TITLE_UNQUOTED