set_diagonal_matrix — 设置矩阵的对角元素。
算子 set_diagonal_matrix overwrites
the diagonal elements of the Matrix with
the elements of the matrix Vector. The matrices are
defined by their matrix handles MatrixID and
VectorID. The matrix Vector must have one column
and one row, n columns and one row or one column and n rows. n
is the number of elements to be set in the Matrix (see
below). If the matrix Vector has one column and one row,
i.e., the matrix has one value, each element of the diagonal of the
Matrix is overwritten by this value. Otherwise, the
diagonal is overwritten by the elements of the matrix
Vector.
If Diagonal = 0, the main diagonal of the Matrix
is overwritten. The number n = min(number of rows of
Matrix, number of columns of Matrix).
Example 1:
Example 2:
If Diagonal is positive, the Diagonal-th
super-diagonal of Matrix is overwritten. For the example
1 the number n = min(number of rows of Matrix, parameter
Diagonal). For the example 2 the number n = min(number
of rows of Matrix, number of columns of Matrix).
Example 1:
Example 2:
If Diagonal is negative, the Diagonal-th
sub-diagonal of Matrix is overwritten. For the example 1
the number n = min(number of columns of Matrix,
parameter Diagonal). For the example 2 the number n =
min(number of rows of Matrix, number of columns of
Matrix).
Example 1:
Example 2:
此算子修改后续输入参数的状态:
在执行此算子时,若该参数值需在多个线程间使用,则必须对其访问进行同步。
MatrixID (输入控制,状态被修改) matrix → (handle)
输入矩阵的矩阵句柄。
VectorID (输入控制) matrix → (handle)
Matrix handle containing the diagonal elements to be set.
Diagonal (输入控制) integer → (integer)
Position of the diagonal.
默认值: 0
建议值: -20, -10, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 10, 20
如果参数有效,算子
set_diagonal_matrix 返回值 2 ( H_MSG_TRUE )。如有必要,则抛出异常。
get_full_matrix,
get_value_matrix
基础