ClassesClassesClassesClasses | | | | Operators

get_diagonal_matrixget_diagonal_matrixGetDiagonalMatrixget_diagonal_matrixGetDiagonalMatrixGetDiagonalMatrix (Operator)

Name

get_diagonal_matrixget_diagonal_matrixGetDiagonalMatrixget_diagonal_matrixGetDiagonalMatrixGetDiagonalMatrix — Get the diagonal elements of a matrix.

Signature

get_diagonal_matrix( : : MatrixID, Diagonal : VectorID)

Herror get_diagonal_matrix(const Hlong MatrixID, const Hlong Diagonal, Hlong* VectorID)

Herror T_get_diagonal_matrix(const Htuple MatrixID, const Htuple Diagonal, Htuple* VectorID)

Herror get_diagonal_matrix(const HTuple& MatrixID, const HTuple& Diagonal, Hlong* VectorID)

HMatrix HMatrix::GetDiagonalMatrix(const HTuple& Diagonal) const

void GetDiagonalMatrix(const HTuple& MatrixID, const HTuple& Diagonal, HTuple* VectorID)

HMatrix HMatrix::GetDiagonalMatrix(Hlong Diagonal) const

void HOperatorSetX.GetDiagonalMatrix(
[in] VARIANT MatrixID, [in] VARIANT Diagonal, [out] VARIANT* VectorID)

IHMatrixX* HMatrixX.GetDiagonalMatrix([in] Hlong Diagonal)

static void HOperatorSet.GetDiagonalMatrix(HTuple matrixID, HTuple diagonal, out HTuple vectorID)

HMatrix HMatrix.GetDiagonalMatrix(int diagonal)

Description

The operator get_diagonal_matrixget_diagonal_matrixGetDiagonalMatrixget_diagonal_matrixGetDiagonalMatrixGetDiagonalMatrix generates a new matrix VectorVectorVectorVectorVectorvector and copies the diagonal elements of the MatrixMatrixMatrixMatrixMatrixmatrix to this new matrix. The MatrixMatrixMatrixMatrixMatrixmatrix is defined by the matrix handle MatrixIDMatrixIDMatrixIDMatrixIDMatrixIDmatrixID. The matrix VectorVectorVectorVectorVectorvector has one column and n rows, where n = number of diagonal elements. The operator returns the matrix handle VectorIDVectorIDVectorIDVectorIDVectorIDvectorID of the matrix VectorVectorVectorVectorVectorvector. Access to the elements of the matrix is possible e.g. with the operator get_full_matrixget_full_matrixGetFullMatrixget_full_matrixGetFullMatrixGetFullMatrix.

If DiagonalDiagonalDiagonalDiagonalDiagonaldiagonal = 0, the output of the VectorVectorVectorVectorVectorvector is the main diagonal of the MatrixMatrixMatrixMatrixMatrixmatrix.

Example:

If DiagonalDiagonalDiagonalDiagonalDiagonaldiagonal is positive, the output VectorVectorVectorVectorVectorvector is the DiagonalDiagonalDiagonalDiagonalDiagonaldiagonal-th super-diagonal of the MatrixMatrixMatrixMatrixMatrixmatrix.

Example:

If DiagonalDiagonalDiagonalDiagonalDiagonaldiagonal is negative, the DiagonalDiagonalDiagonalDiagonalDiagonaldiagonal-th sub-diagonal of the MatrixMatrixMatrixMatrixMatrixmatrix is copied.

Example:

Parallelization

Parameters

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

Matrix handle of the input matrix.

DiagonalDiagonalDiagonalDiagonalDiagonaldiagonal (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Number of the desired diagonal.

Default value: 0

Suggested values: -20, -10, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 10, 20

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

Matrix handle containing the diagonal elements.

Result

If the parameters are valid, the operator get_diagonal_matrixget_diagonal_matrixGetDiagonalMatrixget_diagonal_matrixGetDiagonalMatrixGetDiagonalMatrix 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

See also

set_diagonal_matrixset_diagonal_matrixSetDiagonalMatrixset_diagonal_matrixSetDiagonalMatrixSetDiagonalMatrix

Module

Foundation


ClassesClassesClassesClasses | | | | Operators