set_diagonal_matrix — Set the diagonal elements of a matrix.
The operator 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:
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.
MatrixID (input_control, state is modified) matrix → (handle)
Matrix handle of the input matrix.
VectorID (input_control) matrix → (handle)
Matrix handle containing the diagonal elements to be set.
Diagonal (input_control) integer → (integer)
Position of the diagonal.
Default: 0
Suggested values: -20, -10, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 10, 20
If the parameters are valid, the operator
set_diagonal_matrix returns the value 2 (
H_MSG_TRUE)
. If necessary,
an exception is raised.
get_full_matrix,
get_value_matrix
Foundation