ClassesClassesClassesClasses | | | | Operators

sub_matrixsub_matrixSubMatrixsub_matrixSubMatrixSubMatrix (Operator)

Name

sub_matrixsub_matrixSubMatrixsub_matrixSubMatrixSubMatrix — Subtract two matrices.

Signature

sub_matrix( : : MatrixAID, MatrixBID : MatrixSubID)

Herror sub_matrix(const Hlong MatrixAID, const Hlong MatrixBID, Hlong* MatrixSubID)

Herror T_sub_matrix(const Htuple MatrixAID, const Htuple MatrixBID, Htuple* MatrixSubID)

Herror sub_matrix(const HTuple& MatrixAID, const HTuple& MatrixBID, Hlong* MatrixSubID)

HMatrix HMatrix::SubMatrix(const HMatrix& MatrixBID) const

void SubMatrix(const HTuple& MatrixAID, const HTuple& MatrixBID, HTuple* MatrixSubID)

HMatrix HMatrix::SubMatrix(const HMatrix& MatrixBID) const

void HOperatorSetX.SubMatrix(
[in] VARIANT MatrixAID, [in] VARIANT MatrixBID, [out] VARIANT* MatrixSubID)

IHMatrixX* HMatrixX.SubMatrix([in] IHMatrixX* MatrixBID)

static void HOperatorSet.SubMatrix(HTuple matrixAID, HTuple matrixBID, out HTuple matrixSubID)

HMatrix HMatrix.SubMatrix(HMatrix matrixBID)

Description

The operator sub_matrixsub_matrixSubMatrixsub_matrixSubMatrixSubMatrix computes the difference of the input matrices MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA and MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB given by the matrix handles MatrixAIDMatrixAIDMatrixAIDMatrixAIDMatrixAIDmatrixAID and MatrixBIDMatrixBIDMatrixBIDMatrixBIDMatrixBIDmatrixBID. Both matrices must have identical dimensions. A new matrix MatrixSubMatrixSubMatrixSubMatrixSubMatrixSubmatrixSub is generated with the result. The operator returns the matrix handle MatrixSubIDMatrixSubIDMatrixSubIDMatrixSubIDMatrixSubIDmatrixSubID of the matrix MatrixSubMatrixSubMatrixSubMatrixSubMatrixSubmatrixSub. Access to the elements of the matrix is possible e.g. with the operator get_full_matrixget_full_matrixGetFullMatrixget_full_matrixGetFullMatrixGetFullMatrix. The formula for the calculation of the result is:

  MatrixSubMatrixSubMatrixSubMatrixSubMatrixSubmatrixSub = MatrixAMatrixAMatrixAMatrixAMatrixAmatrixA - MatrixBMatrixBMatrixBMatrixBMatrixBmatrixB.

Example:


            /   3.0   1.0  -2.0  \                /   2.0   8.0  -3.0  \
  MatrixA = |  -5.0   7.0   2.0  |      MatrixB = |  -4.0  -1.0   5.0  |
            \  -9.0  -4.0   1.0  /                \   2.0  -4.0   7.0  /

                   /   1.0  -7.0   1.0  \
  ->   MatrixSub = |  -1.0   8.0  -3.0  |
                   \ -11.0   0.0  -6.0  /

Parallelization

Parameters

MatrixAIDMatrixAIDMatrixAIDMatrixAIDMatrixAIDmatrixAID (input_control)  matrix HMatrix, HTupleHTupleHMatrix, HTupleHMatrixX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Matrix handle of the input matrix A.

MatrixBIDMatrixBIDMatrixBIDMatrixBIDMatrixBIDmatrixBID (input_control)  matrix HMatrix, HTupleHTupleHMatrix, HTupleHMatrixX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Matrix handle of the input matrix B.

MatrixSubIDMatrixSubIDMatrixSubIDMatrixSubIDMatrixSubIDmatrixSubID (output_control)  matrix HMatrix, HTupleHTupleHMatrix, HTupleHMatrixX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Matrix handle with the difference of the input matrices.

Result

If the parameters are valid, the operator sub_matrixsub_matrixSubMatrixsub_matrixSubMatrixSubMatrix returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised.

Possible Predecessors

create_matrixcreate_matrixCreateMatrixcreate_matrixCreateMatrixCreateMatrix

Possible Successors

get_full_matrixget_full_matrixGetFullMatrixget_full_matrixGetFullMatrixGetFullMatrix, get_value_matrixget_value_matrixGetValueMatrixget_value_matrixGetValueMatrixGetValueMatrix

Alternatives

sub_matrix_modsub_matrix_modSubMatrixModsub_matrix_modSubMatrixModSubMatrixMod

See also

add_matrixadd_matrixAddMatrixadd_matrixAddMatrixAddMatrix, add_matrix_modadd_matrix_modAddMatrixModadd_matrix_modAddMatrixModAddMatrixMod

Module

Foundation


ClassesClassesClassesClasses | | | | Operators