function Diag(const Vec: TVecInt; k: Integer): TMtxInt;
Sets the matrix diagonal to values from the vector.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TVecInt | |
| 2 | k | Integer |
Result: stored in self (calling object), returns self for chaining
Remarks:
Sets the k-th diagonal of the calling matrix to values from from the Vec object. If k = 0 then the main diagonal matrix is set, if k < 0 then the k-th subdiagonal matrix is set and if k > 0 the then the k-th super diagonal is set. The matrix must be large enough to hold diagonal or an exception is raised.
Examples
var A: TMtxInt;
D: TVecInt;
begin
CreateIt(A);
CreateIt(D);
try
A.SetIt(2,2,[1,1,
1,2]);
D.SetIt([3,4]);
A.Diag(D,0);
// A becomes:
// [3,1]
// [1,4]
finally
FreeIt(D);
FreeIt(A);
end;
end;
See Also: TVecInt.Diag