In this exercise we consider how to generate matrices with specified ranks using MATLAB. (a) In general,
Question:
(a) In general, if A is an m × n matrix with rank r, then r ≤ min(m, n). Why? Explain. If the entries of A are random numbers, we would expect that r = min(m, n). Why? Explain. Check this out in MATLAB by generating random 6 × 6, 8 × 6, 5 × 8 matrices and checking their ranks using the MATLAB command rank. Whenever the rank of an m x n matrix equals min(m, n), we say that the matrix has full rank. Otherwise, we say that the matrix is rank deficient.
(b) Suppose that we want to generate matrices with less than full rank using MATLAB. It is easy to generate rank I matrices. If x and y are nonzero vectors in Rm and Rn, respectively, then A = xyT will be an m × n matrix with rank 1. Why? Explain. Verify this using MATLAB by setting
x = round(9 * rand(8, 1)) + 1, y = round(9 * rand(6, 1)) + 1
and using these vectors to construct an 8 x 6 matrix A. Check the rank of A using the MATLAB command rank.
(c) In general,
(1) rank(AB) < min(rank(/t), rank(B)
(See Exercise 22 in Section 6.) If A and B are noninteger random matrices, the relation (1) should be an equality. Generate an 8 × 6 matrix A by setting
X = rand(8, 2). Y = rand(6, 2), A = X * Yʹ
What would you expect the rank of A to be? Explain. Test the rank of A using MATLAB.
(e) Use MATLAB to generate matrices A, B, C such that
(i) A is 8 × 8 with rank 3.
(ii) B is 6 × 9 with rank 4.
(iii) C is 10 × 7 with rank 5.
Fantastic news! We've Found the answer you've been seeking!
Step by Step Answer:
Related Book For
Question Posted: