Matrix::MulElem Method

Overload List

#SignatureDescription
1TMtxVec *MulElem(TMtxVec *X, TMtxVec *Y, TMtxVec *Z) const;Compute X*Y*Z
2TMtxVec *MulElem(TMtxVec *X, TMtxVec *Y, const double Z) const;Compute X*Y*zScalar
3TMtxVec *MulElem(TMtxVec *X, TMtxVec *Y, const TCplx &Z) const;Compute X*Y*zScalar
4TMtxVec *MulElem(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, TMtxVec *Z, int zIndex, int Index, int Len) const;Compute X*Y*Z on sub array
5TMtxVec *MulElem(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, const double Z, int Index, int Len) const;Compute X*Y*zScalar on sub array
6TMtxVec *MulElem(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, const TCplx &Z, int Index, int Len) const;Compute X*Y*zScalar on sub array
7TMtx *MulElem(TMtx *Mtx) const;Matrix array multiplication.
8TMtx *MulElem(TMtx *Mtx1, TMtx *Mtx2) const;Multiplies elements in Mtx1 matrix with the elements in Mtx2 matrix (array multiplication) and stores the results in calling matrix.
9TMtx *MulElem(TVec *Vec, TMtx *Mtx) const;
10TMtx *MulElem(TMtx *Mtx, TVec *Vec) const;
11TMtx *MulElem(TVec *Vec1, TVec *Vec2) const;

Overload 1: TMtxVec *MulElem(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::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 2: TMtxVec *MulElem(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::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 3: TMtxVec *MulElem(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::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 4: TMtxVec *MulElem(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::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 5: TMtxVec *MulElem(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::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 6: TMtxVec *MulElem(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::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 7: TMtx *MulElem(TMtx *Mtx) const;

Matrix array multiplication.

#NameTypeDescription
1MtxTMtx *
Remarks:

Multiplies elements in Mtx matrix with the elements in the calling matrix (array multiplication) and stores the results in calling matrix. The Matrix::Rows, Matrix::Cols and Matrix::Complex properties of both matrices must match, otherwise an exception is raised.

See Also: Matrix::InvElem
Declared in Dew::Math::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 8: TMtx *MulElem(TMtx *Mtx1, TMtx *Mtx2) const;

Multiplies elements in Mtx1 matrix with the elements in Mtx2 matrix (array multiplication) and stores the results in calling matrix.

#NameTypeDescription
1Mtx1TMtx *
2Mtx2TMtx *
Remarks:

The Matrix::Rows, Matrix::Cols and Matrix::Complex properties of calling matrix are set implicitly to match those of Mtx1 and Mtx2 matrices. Mtx1 and Mtx2 Rows, Cols, and Complex properties must be the same, otherwise an exception is raised.

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

Overload 9: TMtx *MulElem(TVec *Vec, TMtx *Mtx) const;

#NameTypeDescription
1VecTVec *
2MtxTMtx *
Declared in Dew::Math::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 10: TMtx *MulElem(TMtx *Mtx, TVec *Vec) const;

#NameTypeDescription
1MtxTMtx *
2VecTVec *
Declared in Dew::Math::Matrix · Dew.Math/MtxExpr.h · Cross-compiler

Overload 11: TMtx *MulElem(TVec *Vec1, TVec *Vec2) const;

#NameTypeDescription
1Vec1TVec *
2Vec2TVec *
Declared in Dew::Math::Matrix · Dew.Math/MtxExpr.h · Cross-compiler