Vector::Mul Method

Overload List

#SignatureDescription
1TMtxVec *Mul(double Value) const;Multiply object elements with Value.
2TMtxVec *Mul(TCplx Value) const;Multiply all calling object elements with complex Value in-place.
3TMtxVec *Mul(double Value, int Index, int Len) const;Multipy calling object elements [Index]..[Index+Len-1] with Value in-place.
4TMtxVec *Mul(TCplx Value, int Index, int Len) const;Multipy calling object elements [Index]..[Index+Len-1] with complex Value in-place.
5TMtxVec *Mul(TMtxVec *Vec, double Value) const;Multiply each element of Vec with Value.
6TMtxVec *Mul(TMtxVec *Vec, TCplx Value) const;Multiply each element of Vec with complex Value.
7TMtxVec *Mul(TMtxVec *Vec, double Value, int VecIndex, int Index, int Len) const;Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with Value.
8TMtxVec *Mul(TMtxVec *Vec, TCplx Value, int VecIndex, int Index, int Len) const;Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with complex Value.
9TMtxVec *Mul(TMtxVec *X, TMtxVec *Y, TMtxVec *Z) const;Compute X*Y*Z
10TMtxVec *Mul(TMtxVec *X, TMtxVec *Y, const double Z) const;Compute X*Y*zScalar
11TMtxVec *Mul(TMtxVec *X, TMtxVec *Y, const TCplx &Z) const;Compute X*Y*zScalar
12TMtxVec *Mul(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, TMtxVec *Z, int zIndex, int Index, int Len) const;Compute X*Y*Z on sub array
13TMtxVec *Mul(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, const double Z, int Index, int Len) const;Compute X*Y*zScalar on sub array
14TMtxVec *Mul(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, const TCplx &Z, int Index, int Len) const;Compute X*Y*zScalar on sub array
15TMtxVec *Mul(TMtxVec *Vec) const;Vector multiplication.
16TMtxVec *Mul(TMtxVec *Vec, int VecIndex, int Index, int Len) const;Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with calling object elements [Index]..[Index+Len-1] in-place.
17TMtxVec *Mul(TMtxVec *Vec1, TMtxVec *Vec2) const;Multiply all Vec1 elements with corresponding Vec2 elements.
18TMtxVec *Mul(TMtxVec *Vec1, TMtxVec *Vec2, int Vec1Index, int Vec2Index, int Index, int Len) const;Multiply Vec1 elements [Vec1Index]..[Vec1Index+Len-1] with Vec2 object elements [Vec2Index]..[Vec2Index+Len-1] and store the results in calling object elements [Index]..[Index+Len-1].

Overload 1: TMtxVec *Mul(double Value) const;

Multiply object elements with Value.

#NameTypeDescription
1Valuedouble
Remarks:

Multiply all calling object elements with Value in-place.

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

Overload 2: TMtxVec *Mul(TCplx Value) const;

Multiply all calling object elements with complex Value in-place.

#NameTypeDescription
1ValueTCplx
Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 3: TMtxVec *Mul(double Value, int Index, int Len) const;

Multipy calling object elements [Index]..[Index+Len-1] with Value in-place.

#NameTypeDescription
1Valuedouble
2Indexint
3Lenint
Remarks:

An exception is raised if array borders are overrun or underrun.

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

Overload 4: TMtxVec *Mul(TCplx Value, int Index, int Len) const;

Multipy calling object elements [Index]..[Index+Len-1] with complex Value in-place.

#NameTypeDescription
1ValueTCplx
2Indexint
3Lenint
Remarks:

An exception is raised if array borders are overrun or underrun.

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

Overload 5: TMtxVec *Mul(TMtxVec *Vec, double Value) const;

Multiply each element of Vec with Value.

#NameTypeDescription
1VecTMtxVec *
2Valuedouble
Remarks:

Store the result in the calling object. Size and Vector::Complex properties of the calling object are adjusted automatically.

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

Overload 6: TMtxVec *Mul(TMtxVec *Vec, TCplx Value) const;

Multiply each element of Vec with complex Value.

#NameTypeDescription
1VecTMtxVec *
2ValueTCplx
Remarks:

Store the result in the calling object. Size of the calling object is set automatically. Vector::Complex property of the calling object is set to True.

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

Overload 7: TMtxVec *Mul(TMtxVec *Vec, double Value, int VecIndex, int Index, int Len) const;

Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with Value.

#NameTypeDescription
1VecTMtxVec *
2Valuedouble
3VecIndexint
4Indexint
5Lenint
Remarks:

Store the result in calling object elements [Index]..[Index+Len-1]. Size of the calling object is not changed. An exception is raised if array borders are overrun or underrun. Vector::Complex propertiy of the calling object is set implicitly.

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

Overload 8: TMtxVec *Mul(TMtxVec *Vec, TCplx Value, int VecIndex, int Index, int Len) const;

Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with complex Value.

#NameTypeDescription
1VecTMtxVec *
2ValueTCplx
3VecIndexint
4Indexint
5Lenint
Remarks:

Store the result in calling object elements [Index]..[Index+Len-1]. Size of the calling object is not changed. An exception is raised if array borders are overrun or underrun. Vector::Complex propertiy of the calling object is set to True.

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

Overload 9: TMtxVec *Mul(TMtxVec *X, TMtxVec *Y, TMtxVec *Z) const;

Compute X*Y*Z

#NameTypeDescription
1XTMtxVec *
2YTMtxVec *
3ZTMtxVec *
Remarks:

The following expression would also run at the same or higher speed, when passing X also for the Z parameter:

X^2*Y

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

Overload 10: TMtxVec *Mul(TMtxVec *X, TMtxVec *Y, const double Z) const;

Compute X*Y*zScalar

#NameTypeDescription
1XTMtxVec *
2YTMtxVec *
3Zconst double
Remarks:

The following expression would also run at the same or higher speed, when passing X also for the Z parameter:

X^2*zScalar

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

Overload 11: TMtxVec *Mul(TMtxVec *X, TMtxVec *Y, const TCplx &Z) const;

Compute X*Y*zScalar

#NameTypeDescription
1XTMtxVec *
2YTMtxVec *
3Zconst TCplx &
Remarks:

The following expression would also run at the same or higher speed, when passing X also for the Z parameter:

X^2*zScalar

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

Overload 12: TMtxVec *Mul(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, TMtxVec *Z, int zIndex, int Index, int Len) const;

Compute X*Y*Z on sub array

#NameTypeDescription
1XTMtxVec *
2XIndexint
3YTMtxVec *
4YIndexint
5ZTMtxVec *
6zIndexint
7Indexint
8Lenint
Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 13: TMtxVec *Mul(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, const double Z, int Index, int Len) const;

Compute X*Y*zScalar on sub array

#NameTypeDescription
1XTMtxVec *
2XIndexint
3YTMtxVec *
4YIndexint
5Zconst double
6Indexint
7Lenint
Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 14: TMtxVec *Mul(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, const TCplx &Z, int Index, int Len) const;

Compute X*Y*zScalar on sub array

#NameTypeDescription
1XTMtxVec *
2XIndexint
3YTMtxVec *
4YIndexint
5Zconst TCplx &
6Indexint
7Lenint
Declared in Dew::Math::Vector · Dew.Math/MtxExpr.h · Cross-compiler

Overload 15: TMtxVec *Mul(TMtxVec *Vec) const;

Vector multiplication.

#NameTypeDescription
1VecTMtxVec *
Remarks:

Multiply each of Vec elements with corresponding elements in the calling object. Size and Vector::Complex property of the calling object are set automatically. The result is stored in the calling object.

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

Overload 16: TMtxVec *Mul(TMtxVec *Vec, int VecIndex, int Index, int Len) const;

Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with calling object elements [Index]..[Index+Len-1] in-place.

#NameTypeDescription
1VecTMtxVec *
2VecIndexint
3Indexint
4Lenint
Remarks:

An exception is raised if Vec and calling object Vector::Complex property do not match or if array borders are overrun/underrun.

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

Overload 17: TMtxVec *Mul(TMtxVec *Vec1, TMtxVec *Vec2) const;

Multiply all Vec1 elements with corresponding Vec2 elements.

#NameTypeDescription
1Vec1TMtxVec *
2Vec2TMtxVec *
Remarks:

Store the results in calling object. Size and Vector::Complex property of calling object are adjusted automatically to match those of Vec1 and Vec2. An exception is raised if Vec1 and Vec2 size and Vector::Complex property do not match.

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

Overload 18: TMtxVec *Mul(TMtxVec *Vec1, TMtxVec *Vec2, int Vec1Index, int Vec2Index, int Index, int Len) const;

Multiply Vec1 elements [Vec1Index]..[Vec1Index+Len-1] with Vec2 object elements [Vec2Index]..[Vec2Index+Len-1] and store the results in calling object elements [Index]..[Index+Len-1].

#NameTypeDescription
1Vec1TMtxVec *
2Vec2TMtxVec *
3Vec1Indexint
4Vec2Indexint
5Indexint
6Lenint
Remarks:

Size and Vector::Complex properties of the calling object must be set explicitly. An exception is raised if Vector::ConditionCheck is True and array borders are overrun or underrun.

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