The SDL Component Suite is an industry leading collection of components supporting scientific and engineering computing. Please visit the SDL Web site for more information....



Interface of SDL_Openarrays


const
{$IFDEF PAIDVERS}
  SDLVersionInfo = 'openarrays_r1060_full';
  IsLightEd = false;
{$ELSE}
  SDLVersionInfo = 'openarrays_r1060_lighted';
  IsLightEd = true;
{$ENDIF}
  release = 1060;


function AbsValArray (var Arr: TIntArray): integer; overload;
function AbsValArray (var Arr: TInt2DArray): integer; overload;
function AbsValArray (var Arr: TInt3DArray): integer; overload;
function AbsValArray (var Arr: TInt4DArray): integer; overload;
function AbsValArray (var Arr: TDoubleArray): integer; overload;
function AbsValArray (var Arr: TDouble2DArray): integer; overload;
function AbsValArray (var Arr: TDouble3DArray): integer; overload;
function AbsValArray (var Arr: TDouble4DArray): integer; overload;

function AccumulateArray (var Arr: TIntArray; Src: TIntArray;
                          Wgt: integer): integer; overload;
function AccumulateArray (var Arr: TInt2DArray; Src: TInt2DArray;
                          Wgt: integer): integer; overload;
function AccumulateArray (var Arr: TInt3DArray; Src: TInt3DArray;
                          Wgt: integer): integer; overload;
function AccumulateArray (var Arr: TInt4DArray; Src: TInt4DArray;
                          Wgt: integer): integer; overload;
function AccumulateArray (var Arr: TDoubleArray; Src: TDoubleArray;
                          Wgt: double): integer; overload;
function AccumulateArray (var Arr: TDouble2DArray; Src: TDouble2DArray;
                          Wgt: double): integer; overload;
function AccumulateArray (var Arr: TDouble3DArray; Src: TDouble3DArray;
                          Wgt: double): integer; overload;
function AccumulateArray (var Arr: TDouble4DArray; Src: TDouble4DArray;
                          Wgt: double): integer; overload;

function AddArrays (Arr1, Arr2: TIntArray;
                    var Sum: TIntArray): integer; overload;
function AddArrays (Arr1, Arr2: TInt2DArray;
                    var Sum: TInt2DArray): integer; overload;
function AddArrays (Arr1, Arr2: TInt3DArray;
                    var Sum: TInt3DArray): integer; overload;
function AddArrays (Arr1, Arr2: TInt4DArray;
                    var Sum: TInt4DArray): integer; overload;
function AddArrays (Arr1, Arr2: TDoubleArray;
                    var Sum: TDoubleArray): integer; overload;
function AddArrays (Arr1, Arr2: TDouble2DArray;
                    var Sum: TDouble2DArray): integer; overload;
function AddArrays (Arr1, Arr2: TDouble3DArray;
                    var Sum: TDouble3DArray): integer; overload;
function AddArrays (Arr1, Arr2: TDouble4DArray;
                    var Sum: TDouble4DArray): integer; overload;

function AddScalarToArray (Arr: TIntArray; Scalar: integer;
                    var Sum: TIntArray): integer; overload;
function AddScalarToArray (Arr: TInt2DArray; Scalar: integer;
                    var Sum: TInt2DArray): integer; overload;
function AddScalarToArray (Arr: TInt3DArray; Scalar: integer;
                    var Sum: TInt3DArray): integer; overload;
function AddScalarToArray (Arr: TInt4DArray; Scalar: integer;
                    var Sum: TInt4DArray): integer; overload;
function AddScalarToArray (Arr: TDoubleArray; Scalar: double;
                    var Sum: TDoubleArray): integer; overload;
function AddScalarToArray (Arr: TDouble2DArray; Scalar: double;
                    var Sum: TDouble2DArray): integer; overload;
function AddScalarToArray (Arr: TDouble3DArray; Scalar: double;
                    var Sum: TDouble3DArray): integer; overload;
function AddScalarToArray (Arr: TDouble4DArray; Scalar: double;
                    var Sum: TDouble4DArray): integer; overload;

function IncArray (var Arr: TIntArray; Scalar: integer): integer; overload;
function IncArray (var Arr: TInt2DArray; Scalar: integer): integer; overload;
function IncArray (var Arr: TInt3DArray; Scalar: integer): integer; overload;
function IncArray (var Arr: TInt4DArray; Scalar: integer): integer; overload;
function IncArray (var Arr: TDoubleArray; Scalar: double): integer; overload;
function IncArray (var Arr: TDouble2DArray; Scalar: double): integer; overload;
function IncArray (var Arr: TDouble3DArray; Scalar: double): integer; overload;
function IncArray (var Arr: TDouble4DArray; Scalar: double): integer; overload;

function CloneArray (Src: TBoolArray; var Dst: TBoolArray): integer; overload;
function CloneArray (Src: TBool2DArray; var Dst: TBool2DArray): integer; overload;
function CloneArray (Src: TDoubleArray; var Dst: TDoubleArray): integer; overload;
function CloneArray (Src: TDouble2DArray;
                     var Dst: TDouble2DArray): integer; overload;
function CloneArray (Src: TDouble3DArray;
                     var Dst: TDouble3DArray): integer; overload;
function CloneArray (Src: TDouble4DArray;
                     var Dst: TDouble4DArray): integer; overload;
function CloneArray (Src: TIntArray; var Dst: TIntArray): integer; overload;
function CloneArray (Src: TInt2DArray; var Dst: TInt2DArray): integer; overload;
function CloneArray (Src: TInt3DArray; var Dst: TInt3DArray): integer; overload;
function CloneArray (Src: TInt4DArray; var Dst: TInt4DArray): integer; overload;
function CloneArray (Src: TDoubleArray; var Dst: TIntArray): integer; overload;
function CloneArray (Src: TDouble2DArray;
                     var Dst: TInt2DArray): integer; overload;
function CloneArray (Src: TDouble3DArray;
                     var Dst: TInt3DArray): integer; overload;
function CloneArray (Src: TDouble4DArray;
                     var Dst: TInt4DArray): integer; overload;
function CloneArray (Src: TIntArray; var Dst: TDoubleArray): integer; overload;
function CloneArray (Src: TInt2DArray;
                     var Dst: TDouble2DArray): integer; overload;
function CloneArray (Src: TInt3DArray;
                     var Dst: TDouble3DArray): integer; overload;
function CloneArray (Src: TInt4DArray;
                     var Dst: TDouble4DArray): integer; overload;

function CopyArray (Src: TBoolArray; DstElem: integer;
                    var Dst: TBoolArray): integer; overload;
function CopyArray (Src: TBool2DArray; DstCol, DstRow: integer;
                    var Dst: TBool2DArray): integer; overload;

function CopyArray (Src: TintArray; SrcElemLo, SrcElemHi,
                    DstElem: integer; var Dst: TintArray): integer; overload;
function CopyArray (Src: TintArray; DstElem: integer;
                    var Dst: TintArray): integer; overload;
function CopyArray (Src: Tint2DArray; DstCol, DstRow: integer;
                    var Dst: Tint2DArray): integer; overload;
function CopyArray (Src: Tint2DArray; SrcColLo, SrcRowLo, SrcColHi,
                    SrcRowHi, DstCol, DstRow: integer;
                    var Dst: Tint2DArray): integer; overload;
function CopyArray (Src: Tint3DArray; DstCol, DstRow,
                    DstLayer: integer; var Dst: Tint3DArray): integer; overload;
function CopyArray (Src: Tint3DArray; SrcColLo, SrcRowLo, SrcLayerLo, SrcColHi,
                    SrcRowHi, SrcLayerHi, DstCol, DstRow, DstLayer: integer;
                    var Dst: Tint3DArray): integer; overload;
function CopyArray (Src: Tint4DArray; DstCol, DstRow, DstLayer,
                    DstTSlot: integer; var Dst: Tint4DArray): integer; overload;
function CopyArray (Src: Tint4DArray; SrcColLo, SrcRowLo, SrcLayerLo, SrcTSlotLo,
                    SrcColHi, SrcRowHi, SrcLayerHi, SrcTSlotHi, DstCol,
                    DstRow, DstLayer, DstTSlot: integer;
                    var Dst: Tint4DArray): integer; overload;

function CopyArray (Src: TDoubleArray; SrcElemLo, SrcElemHi,
                    DstElem: integer; var Dst: TDoubleArray): integer; overload;
function CopyArray (Src: TDoubleArray; DstElem: integer;
                    var Dst: TDoubleArray): integer; overload;
function CopyArray (Src: TDouble2DArray; DstCol, DstRow: integer;
                    var Dst: TDouble2DArray): integer; overload;
function CopyArray (Src: TDouble2DArray; SrcColLo, SrcRowLo, SrcColHi,
                    SrcRowHi, DstCol, DstRow: integer;
                    var Dst: TDouble2DArray): integer; overload;
function CopyArray (Src: TDouble3DArray; DstCol, DstRow,
                    DstLayer: integer; var Dst: TDouble3DArray): integer; overload;
function CopyArray (Src: TDouble3DArray; SrcColLo, SrcRowLo, SrcLayerLo, SrcColHi,
                    SrcRowHi, SrcLayerHi, DstCol, DstRow, DstLayer: integer;
                    var Dst: TDouble3DArray): integer; overload;
function CopyArray (Src: TDouble4DArray; DstCol, DstRow, DstLayer,
                    DstTSlot: integer; var Dst: TDouble4DArray): integer; overload;
function CopyArray (Src: TDouble4DArray; SrcColLo, SrcRowLo, SrcLayerLo,
                    SrcTSlotLo, SrcColHi, SrcRowHi, SrcLayerHi, SrcTSlotHi, DstCol,
                    DstRow, DstLayer, DstTSlot: integer;
                    var Dst: TDouble4DArray): integer; overload;

function CopyArrayColumn (SrcArr: TBool2DArray; Col, RowLo,
                    RowHi: integer; var DstArr: TBoolArray): integer; overload;
function CopyArrayColumn (SrcArr: TInt2DArray; Col, RowLo,
                    RowHi: integer; var DstArr: TIntArray): integer; overload;
function CopyArrayColumn (SrcArr: TDouble2DArray; Col, RowLo,
                    RowHi: integer; var DstArr: TDoubleArray): integer; overload;
function CopyArrayRow (SrcArr: TBool2DArray; Row, ColLo,
                    ColHi: integer; var DstArr: TBoolArray): integer; overload;
function CopyArrayRow (SrcArr: TInt2DArray; Row, ColLo,
                    ColHi: integer; var DstArr: TIntArray): integer; overload;
function CopyArrayRow (SrcArr: TDouble2DArray; Row, ColLo,
                    ColHi: integer; var DstArr: TDoubleArray): integer; overload;
function CountTrueCellsOfArray (Arr: TBoolArray): integer; overload;
function CountTrueCellsOfArray (Arr: TBool2DArray): integer; overload;

function CountValues (Arr: TDoubleArray; LowElem, HighElem: integer;
                    RangeLow, RangeHigh: double): integer; overload;
function CountValues (Arr: TDouble2DArray; LowCol, HighCol,
                    LowRow, HighRow: integer;
                    RangeLow, RangeHigh: double): integer; overload;
function CountValues (Arr: TDouble3DArray; LowCol, HighCol, LowRow, HighRow,
                    LowLayer, HighLayer: integer;
                    RangeLow, RangeHigh: double): integer; overload;
function CountValues (Arr: TDouble4DArray; LowCol, HighCol, LowRow, HighRow,
                    LowLayer, HighLayer, LowTSlot, HighTSlot: integer;
                    RangeLow, RangeHigh: double): integer; overload;
function CountValues (Arr: TIntArray; LowElem, HighElem: integer;
                    RangeLow, RangeHigh: integer): integer; overload;
function CountValues (Arr: TInt2DArray; LowCol, HighCol, LowRow, HighRow: integer;
                    RangeLow, RangeHigh: integer): integer; overload;
function CountValues (Arr: TInt3DArray; LowCol, HighCol, LowRow, HighRow,
                    LowLayer, HighLayer: integer;
                    RangeLow, RangeHigh: integer): integer; overload;
function CountValues (Arr: TInt4DArray; LowCol, HighCol, LowRow, HighRow,
                    LowLayer, HighLayer, LowTSlot, HighTSlot: integer;
                    RangeLow, RangeHigh: integer): integer; overload;

function DiscretizeArray (var Mat: TDouble2DArray; NLevels: integer;
                    InLow, InHigh, OutLow, OutHigh: double): integer;

function FillArray (Arr: TBool2DArray; Value: boolean): integer; overload;
function FillArray (Arr: TBoolArray; Value: boolean): integer; overload;

function FillArray (var Dst: TIntArray; Value: integer): integer; overload;
function FillArray (var Dst: TIntArray; Value: integer;
                    DstElemLo, DstElemHi: integer): integer; overload;
function FillArray (var Dst: TInt2DArray; Value: integer): integer; overload;
function FillArray (var Dst: TInt2DArray; Value: integer; DstColLo, DstRowLo,
                    DstColHi, DstRowHi: integer): integer; overload;
function FillArray (var Dst: TInt3DArray; Value: integer): integer; overload;
function FillArray (var Dst: TInt3DArray; Value: integer;
                    DstColLo, DstRowLo, DstLayerLo,
                    DstColHi, DstRowHi, DstLayerHi: integer): integer; overload;
function FillArray (var Dst: TInt4DArray; Value: integer): integer; overload;
function FillArray (var Dst: TInt4DArray; Value: integer; DstColLo, DstRowLo,
                    DstLayerLo, DstTSlotLo, DstColHi, DstRowHi,
                    DstLayerHi, DstTSlotHi: integer): integer; overload;

function FillArray (var Dst: TDoubleArray; Value: double): integer; overload;
function FillArray (var Dst: TDoubleArray; Value: double;
                    DstElemLo, DstElemHi: integer): integer; overload;
function FillArray (var Dst: TDouble2DArray; Value: double): integer; overload;
function FillArray (var Dst: TDouble2DArray; Value: double; DstColLo, DstRowLo,
                    DstColHi, DstRowHi: integer): integer; overload;
function FillArray (var Dst: TDouble3DArray; Value: double): integer; overload;
function FillArray (var Dst: TDouble3DArray; Value: double;
                    DstColLo, DstRowLo, DstLayerLo,
                    DstColHi, DstRowHi, DstLayerHi: integer): integer; overload;
function FillArray (var Dst: TDouble4DArray; Value: double): integer; overload;
function FillArray (var Dst: TDouble4DArray; Value: double; DstColLo,
                    DstRowLo, DstLayerLo, DstTSlotLo, DstColHi, DstRowHi,
                    DstLayerHi, DstTSlotHi: integer): integer; overload;

function FillDiagArray (var Mat: TDouble2DArray; Diag: double): integer; overload;
function FillDiagArray (var Mat: TDouble3DArray; Diag: double): integer; overload;
function FillDiagArray (var Mat: TDouble4DArray; Diag: double): integer; overload;
function FillDiagArray (var Mat: TInt2DArray; Diag: integer): integer; overload;
function FillDiagArray (var Mat: TInt3DArray; Diag: integer): integer; overload;
function FillDiagArray (var Mat: TInt4DArray; Diag: integer): integer; overload;

function FillRandomNormal (var Arr: TDoubleArray;
                    Mean, StdDev: double): integer; overload;
function FillRandomNormal (var Arr: TDouble2DArray;
                    Mean, StdDev: double): integer; overload;
function FillRandomNormal (var Arr: TDouble3DArray;
                    Mean, StdDev: double): integer; overload;
function FillRandomNormal (var Arr: TDouble4DArray;
                    Mean, StdDev: double): integer; overload;

function FillRandomUniform (var Arr: TDoubleArray;
                    RangeLow, RangeHigh: double): integer; overload;
function FillRandomUniform (var Arr: TDouble2DArray;
                    RangeLow, RangeHigh: double): integer; overload;
function FillRandomUniform (var Arr: TDouble3DArray;
                    RangeLow, RangeHigh: double): integer; overload;
function FillRandomUniform (var Arr: TDouble4DArray;
                    RangeLow, RangeHigh: double): integer; overload;
function FillRandomUniform (var Arr: TIntArray;
                    RangeLow, RangeHigh: integer): integer; overload;
function FillRandomUniform (var Arr: TInt2DArray;
                    RangeLow, RangeHigh: integer): integer; overload;
function FillRandomUniform (var Arr: TInt3DArray;
                    RangeLow, RangeHigh: integer): integer; overload;
function FillRandomUniform (var Arr: TInt4DArray;
                    RangeLow, RangeHigh: integer): integer; overload;

function FlipDimArray (var Arr: TintArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: Tint2DArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: Tint3DArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: Tint4DArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: TDoubleArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: TDouble2DArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: TDouble3DArray; Index: integer): integer; overload;
function FlipDimArray (var Arr: TDouble4DArray; Index: integer): integer; overload;

function MaxArray (Arr: TIntArray): integer; overload;
function MaxArray (Arr: TIntArray; var ix: integer): integer; overload;
function MaxArray (Arr: TInt2DArray): integer; overload;
function MaxArray (Arr: TInt2DArray; var ix, iy: integer): integer; overload;
function MaxArray (Arr: TDoubleArray): double; overload;
function MaxArray (Arr: TDouble2DArray): double; overload;
function MaxArray (Arr: TDouble3DArray): double; overload;
function MaxArray (Arr: TDouble4DArray): double; overload;

function MeanArray (Arr: TDoubleArray; ElemLo, ElemHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TDouble2DArray; ColLo, RowLo, ColHi, RowHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TDouble3DArray; ColLo, RowLo, LayerLo,
                    ColHi, RowHi, LayerHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TDouble4DArray; ColLo, RowLo, LayerLo, TSlotLo,
                    ColHi, RowHi, LayerHi, TSlotHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TIntArray; ElemLo, ElemHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TInt2DArray; ColLo, RowLo, ColHi, RowHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TInt3DArray; ColLo, RowLo, LayerLo,
                    ColHi, RowHi, LayerHi: integer;
                    var Mean: double): integer; overload;
function MeanArray (Arr: TInt4DArray; ColLo, RowLo, LayerLo, TSlotLo,
                    ColHi, RowHi, LayerHi, TSlotHi: integer;
                    var Mean: double): integer; overload;
function MeanVarArray (Arr: TDoubleArray; FirstIx, LastIx: integer;
                    var Mean, Vari: double): integer; overload;
function MeanVarArray (Arr: TDouble2DArray; LowCol, LowRow, HighCol,
                    HighRow: integer; var Mean, Vari: double): integer; overload;
function MeanVarArray (Arr: TIntArray; FirstIx, LastIx: integer;
                    var Mean, Vari: double): integer; overload;
function MeanVarArray (Arr: TInt2DArray; LowCol, LowRow, HighCol, HighRow: integer;
                    var Mean, Vari: double): integer; overload;

function MinArray (Arr: TIntArray): integer; overload;
function MinArray (Arr: TInt2DArray): integer; overload;
function MinArray (Arr: TInt3DArray): integer; overload;
function MinArray (Arr: TInt4DArray): integer; overload;
function MinArray (Arr: TDoubleArray): double; overload;
function MinArray (Arr: TDouble2DArray): double; overload;
function MinArray (Arr: TDouble3DArray): double; overload;
function MinArray (Arr: TDouble4DArray): double; overload;

function MinMaxArray (Arr: array of double;
                      var MinVal, MaxVal: double): integer; overload;
function MinMaxArray (Arr: TDoubleArray;
                      var MinVal, MaxVal: double): integer; overload;
function MinMaxArray (Arr: TDouble2DArray;
                      var MinVal, MaxVal: double): integer; overload;
function MinMaxArray (Arr: TDouble3DArray;
                      var MinVal, MaxVal: double): integer; overload;
function MinMaxArray (Arr: TDouble4DArray;
                      var MinVal, MaxVal: double): integer; overload;
function MinMaxArray (Arr: TDoubleArray; FirstIx, LastIx: integer;
                      var MinVal, MaxVal: double;
                      var MinIx, MaxIx: integer): integer; overload;
function MinMaxArray (Arr: TDouble2DArray; LowCol, LowRow,
                      HighCol, HighRow: integer; var MinVal, MaxVal: double;
                      var MinCol, MinRow,
                      MaxCol, MaxRow: integer): integer; overload;
function MinMaxArray (Arr: array of integer;
                      var MinVal, MaxVal: integer): integer; overload;
function MinMaxArray (Arr: TIntArray;
                      var MinVal, MaxVal: integer): integer; overload;
function MinMaxArray (Arr: TInt2DArray;
                      var MinVal, MaxVal: integer): integer; overload;
function MinMaxArray (Arr: TInt3DArray;
                      var MinVal, MaxVal: integer): integer; overload;
function MinMaxArray (Arr: TInt4DArray;
                      var MinVal, MaxVal: integer): integer; overload;
function MinMaxArray (Arr: TIntArray; FirstIx, LastIx: integer;
                      var MinVal, MaxVal: integer;
                      var MinIx, MaxIx: integer): integer; overload;
function MinMaxArray (Arr: TInt2DArray; LowCol, LowRow, HighCol, HighRow: integer;
                      var MinVal, MaxVal: integer; var MinCol, MinRow,
                      MaxCol, MaxRow: integer): integer; overload;
function MultiplyArrays (Arr1, Arr2: TDouble2DArray;
                    var Product: TDouble2DArray): integer; overload;
function MultiplyArrays (Arr1, Arr2: TDoubleArray;
                    var Product: TDouble2DArray): integer; overload;
function MultiplyArrays (Arr1, Arr2: TInt2DArray;
                    var Product: TInt2DArray): integer; overload;
function MultiplyArrays (Arr1, Arr2: TIntArray;
                    var Product: TInt2DArray): integer; overload;

function MultiplyArrayByScalar (Arr: TDoubleArray; Scalar: double;
                    var Product: TDoubleArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TDoubleArray;
                    Scalar: double): integer; overload;
function MultiplyArrayByScalar (Arr: TDouble2DArray; Scalar: double;
                    var Product: TDouble2DArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TDouble2DArray;
                    Scalar: double): integer; overload;
function MultiplyArrayByScalar (Arr: TDouble3DArray; Scalar: double;
                    var Product: TDouble3DArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TDouble3DArray;
                    Scalar: double): integer; overload;
function MultiplyArrayByScalar (Arr: TDouble4DArray; Scalar: double;
                    var Product: TDouble4DArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TDouble4DArray;
                    Scalar: double): integer; overload;
function MultiplyArrayByScalar (Arr: TIntArray; Scalar: integer;
                    var Product: TIntArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TIntArray;
                    Scalar: integer): integer; overload;
function MultiplyArrayByScalar (Arr: TInt2DArray; Scalar: integer;
                    var Product: TInt2DArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TInt2DArray;
                    Scalar: integer): integer; overload;
function MultiplyArrayByScalar (Arr: TInt3DArray; Scalar: integer;
                    var Product: TInt3DArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TInt3DArray;
                    Scalar: integer): integer; overload;
function MultiplyArrayByScalar (Arr: TInt4DArray; Scalar: integer;
                    var Product: TInt4DArray): integer; overload;
function MultiplyArrayByScalar (var Arr: TInt4DArray;
                    Scalar: integer): integer; overload;

function MultiplyArraysElemw (Arr1, Arr2: TDouble2DArray;
                    var Product: TDouble2DArray): integer; overload;
function MultiplyArraysElemw (Arr1, Arr2: TDoubleArray;
                    var Product: TDoubleArray): integer; overload;
function MultiplyArraysElemw (Arr1, Arr2: TInt2DArray;
                    var Product: TInt2DArray): integer; overload;
function MultiplyArraysElemw (Arr1, Arr2: TIntArray;
                    var Product: TIntArray): integer; overload;

function StdDevArray (Arr: TDoubleArray; ElemLo, ElemHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TDouble2DArray; ColLo, RowLo, ColHi, RowHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TDouble3DArray; ColLo, RowLo, LayerLo,
                    ColHi, RowHi, LayerHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TDouble4DArray; ColLo, RowLo, LayerLo, TSlotLo,
                    ColHi, RowHi, LayerHi, TSlotHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TIntArray; ElemLo, ElemHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TInt2DArray; ColLo, RowLo, ColHi, RowHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TInt3DArray; ColLo, RowLo, LayerLo,
                    ColHi, RowHi, LayerHi: integer;
                    var SDVal: double): integer; overload;
function StdDevArray (Arr: TInt4DArray; ColLo, RowLo, LayerLo, TSlotLo,
                    ColHi, RowHi, LayerHi, TSlotHi: integer;
                    var SDVal: double): integer; overload;

function StoreArray (FName: string; Arr: TDoubleArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TDouble2DArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TDouble3DArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TDouble4DArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TDouble3DArray; InsertIndices: boolean;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TDouble4DArray; InsertIndices: boolean;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TIntArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TInt2DArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TInt3DArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TInt4DArray;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TInt3DArray; InsertIndices: boolean;
                    Comment: string): integer; overload;
function StoreArray (FName: string; Arr: TInt4DArray; InsertIndices: boolean;
                    Comment: string): integer; overload;

function SubtractArrays (Arr1, Arr2: TDoubleArray;
                    var Difference: TDoubleArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TDouble2DArray;
                    var Difference: TDouble2DArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TDouble3DArray;
                    var Difference: TDouble3DArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TDouble4DArray;
                    var Difference: TDouble4DArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TIntArray;
                    var Difference: TIntArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TInt2DArray;
                    var Difference: TInt2DArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TInt3DArray;
                    var Difference: TInt3DArray): integer; overload;
function SubtractArrays (Arr1, Arr2: TInt4DArray;
                    var Difference: TInt4DArray): integer; overload;

function TraceOfArray (Arr: TInt2DArray; var TrVal: integer): integer; overload;
function TraceOfArray (Arr: TDouble2DArray; var TrVal: double): integer; overload;

function TransposeArray (var Arr: TBool2DArray): integer; overload;
function TransposeArray (var Arr: TInt2DArray): integer; overload;
function TransposeArray (var Arr: TDouble2DArray): integer; overload;

function VectorDotProduct (Vec1, Vec2: TDoubleArray;
                    var Product: double): integer; overload;
function VectorDotProduct (Vec1, Vec2: TIntArray;
                    var Product: integer): integer; overload;
function VectorCrossProduct (Vec1, Vec2: TDoubleArray;
                    var Product: TDoubleArray): integer; overload;
function VectorCrossProduct (Vec1, Vec2: TIntArray;
                    var Product: TIntArray): integer; overload;





Last Update: 2017-Nov-28