Operator Reference

set_sub_matrixT_set_sub_matrixSetSubMatrixSetSubMatrixset_sub_matrix (Operator)

set_sub_matrixT_set_sub_matrixSetSubMatrixSetSubMatrixset_sub_matrix — Set a sub-matrix of a matrix.

Signature

set_sub_matrix( : : MatrixID, MatrixSubID, Row, Column : )

Herror T_set_sub_matrix(const Htuple MatrixID, const Htuple MatrixSubID, const Htuple Row, const Htuple Column)

void SetSubMatrix(const HTuple& MatrixID, const HTuple& MatrixSubID, const HTuple& Row, const HTuple& Column)

void HMatrix::SetSubMatrix(const HMatrix& MatrixSubID, Hlong Row, Hlong Column) const

static void HOperatorSet.SetSubMatrix(HTuple matrixID, HTuple matrixSubID, HTuple row, HTuple column)

void HMatrix.SetSubMatrix(HMatrix matrixSubID, int row, int column)

def set_sub_matrix(matrix_id: HHandle, matrix_sub_id: HHandle, row: int, column: int) -> None

Description

The operator set_sub_matrixset_sub_matrixSetSubMatrixSetSubMatrixset_sub_matrix overwrites a part of the Matrix with the matrix MatrixSub. The input matrices are defined by the matrix handles MatrixIDMatrixIDMatrixIDmatrixIDmatrix_id and MatrixSubIDMatrixSubIDMatrixSubIDmatrixSubIDmatrix_sub_id. The parameters RowRowRowrowrow and ColumnColumnColumncolumncolumn determine the position of the upper left corner of the sub-matrix MatrixSub in Matrix.

Example:

RowRowRowrowrow = 0, ColumnColumnColumncolumncolumn = 1

Attention

The conditions 0 RowRowRowrowrow < size of matrix Matrix in the row direction, RowRowRowrowrow + size of matrix MatrixSub in the row direction size of matrix Matrix in the row direction, 0 ColumnColumnColumncolumncolumn < size of Matrix in the column direction, and ColumnColumnColumncolumncolumn + size of matrix MatrixSub in the columns direction size of Matrix in the column direction must be satisfied.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

This operator modifies the state of the following input parameter:

During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.

Parameters

MatrixIDMatrixIDMatrixIDmatrixIDmatrix_id (input_control, state is modified)  matrix HMatrix, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Matrix handle of the input matrix.

MatrixSubIDMatrixSubIDMatrixSubIDmatrixSubIDmatrix_sub_id (input_control)  matrix HMatrix, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Matrix handle of the input sub-matrix.

RowRowRowrowrow (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Upper row position of the sub-matrix in the matrix.

Default: 0

Suggested values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 30, 50, 100

Restriction: Row >= 0

ColumnColumnColumncolumncolumn (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Left column position of the sub-matrix in the matrix.

Default: 0

Suggested values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 30, 50, 100

Restriction: Column >= 0

Result

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

Possible Predecessors

create_matrixcreate_matrixCreateMatrixCreateMatrixcreate_matrix

Possible Successors

get_full_matrixget_full_matrixGetFullMatrixGetFullMatrixget_full_matrix, get_value_matrixget_value_matrixGetValueMatrixGetValueMatrixget_value_matrix

See also

get_sub_matrixget_sub_matrixGetSubMatrixGetSubMatrixget_sub_matrix

Module

Foundation