linalg::concatMatrix
--
join matrices horizontallylinalg::concatMatrix
(A, B1, <B2...>)
returns the matrix formed by joining the matrices A, B1, B2,
... horizontally.
linalg::concatMatrix(A, B1 <, B2...>)
A, B1, B2... |
- | matrices of a domain of category Cat::Matrix |
a matrix of the domain type Dom::Matrix(R)
, where R
is
the component ring of A
.
B1, B2...
are converted into the matrix
domain Dom::Matrix(R)
, where R
is the
component ring of A
.
An error message is raised if one of these conversions fails, or if
the matrices do not have the same number of rows as the matrix
A
.
linalg::concatMatrix
is available
through the dot operator .
, i.e., instead of
linalg::concatMatrix
(A, B)
one may use the
short form A . B
.We define the matrix:
>> A := matrix([[sin(x), x], [-x, cos(x)]])
+- -+ | sin(x), x | | | | -x, cos(x) | +- -+
and append the 2x2 identity matrix to the
right of A
:
>> I2 := matrix::identity(2): linalg::concatMatrix(A, I2)
+- -+ | sin(x), x, 1, 0 | | | | -x, cos(x), 0, 1 | +- -+
The short form for this operation is:
>> A . I2
+- -+ | sin(x), x, 1, 0 | | | | -x, cos(x), 0, 1 | +- -+
We define a matrix from the ring of 2x2 square matrices:
>> SqMatQ := Dom::SquareMatrix(2, Dom::Rational): A := SqMatQ([[1, 2], [3, 4]])
+- -+ | 1, 2 | | | | 3, 4 | +- -+
Note the following operation:
>> AA := A . A
+- -+ | 1, 2, 1, 2 | | | | 3, 4, 3, 4 | +- -+
returns a matrix of a different domain type as the input matrix:
>> domtype(AA)
Dom::Matrix(Dom::Rational)