Vector::Sum Method

Overload List

#SignatureDescription
1double Sum() const;Sums vector values.
2double Sum(int Index, int Len) const;Returns the sum of calling object elements [Index]..[Index+Len-1].
3void Sum(double &ASum, int Index, int Len) const;Calculates the sum of calling object elements [Index]..[Index+Len-1].
4void Sum(TCplx &ASum) const;Calculates the sum of all calling object complex elements.
5void Sum(TCplx &ASum, int Index, int Len) const;Calculates the sum of calling object complex elements [Index]..[Index+Len-1]-

Overload 1: double Sum() const;

Sums vector values.

Remarks:

Returns the sum of all calling object elements. An exception is raised if calling object Vector::Complex property is true.

Examples
#include "MtxExpr.h"
#include "Units.Math387.h"

using namespace Dew;
using namespace Dew::Math;
using namespace Dew::Math::Units::Math387;

void Example()
{
    Vector a;
    a.SetIt(DewArray<double>{ 1.0, 2.0, 3.0, 4.0 });
    double result = a.Sum();
    if (Abs(result - 10.0) > 1e-10)
        throw tException(DewString("Vector.Sum: expected 10.0, got ") + SampleToStr(result));
}
#include "MtxExpr.h"

using namespace Dew;
using namespace Dew::Math;

void Example()
{
    Vector a;
    double b;

    a.SetIt(false, DewArray<double>{1, 2, 3, 4});
    b = a.Sum(); // b = 10
}
See Also: Vector::Sumc
Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 2: double Sum(int Index, int Len) const;

Returns the sum of calling object elements [Index]..[Index+Len-1].

#NameTypeDescription
1Indexint
2Lenint
Remarks:

An exception is raised if calling object Vector::Complex property is True or array borders are overrun/underrun.

Examples
#include "MtxExpr.h"

using namespace Dew;
using namespace Dew::Math;

void Example()
{
    Vector a;
    double b;

    a = {1, 2, 3, 4};
    b = a.Sum(); // b = 10
}
Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 3: void Sum(double &ASum, int Index, int Len) const;

Calculates the sum of calling object elements [Index]..[Index+Len-1].

#NameTypeDescription
1ASumdouble &
2Indexint
3Lenint
Remarks:

Stores the result in real ASum variable. An exception is raised if calling object Vector::Complex property is True or array borders are overrun/underrun.

Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 4: void Sum(TCplx &ASum) const;

Calculates the sum of all calling object complex elements.

#NameTypeDescription
1ASumTCplx &
Remarks:

Stores the result in complex ASum variable. An exception is raised if calling object Vector::Complex property is False.

Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 5: void Sum(TCplx &ASum, int Index, int Len) const;

Calculates the sum of calling object complex elements [Index]..[Index+Len-1]-

#NameTypeDescription
1ASumTCplx &
2Indexint
3Lenint
Remarks:

Stores the result in complex ASum variable. An exception is raised if calling object Vector::Complex property is False or array borders are overrun/underrun.

Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler