Answered You can hire a professional tutor to get the answer.

QUESTION

Here you will be given an m n matrix A. Your program has to create two bases (both are named B): one - for Col A and one - for m if Col A m , by...

Here you will be given an m n × matrix A. Your program has

to create two bases (both are named B): one - for Col A and one - for m  if Col A m ≠  , by

using the columns of the given matrix A.

Your program should allow a possibility that the columns of A are not linearly independent,

that is, not all columns of A will be in a basis. The set of columns of A can be "shrunk" to a

basis for Col A by using the function shrink. Here is the code function B = shrink(A)

[~, pivot] = rref(A);

B = A(: , pivot);

**Create the function B = shrink(A) in MATLAB.

**Type the function shrink in your diary file

**Run each of the commands listed below (separately) on the matrix A=magic(4)

[~, pivot] = rref(A)

B = A(: , pivot)

% Place a comment in your diary file on the output for each of the commands.

**Create the function in MATLAB

function B=basis(A)

The function should start with the commands:

m=size(A,1);

A=shrink(A);

sprintf('a basis for Col A is n')

B=A

This part will give you as an answer a basis B for Col A.

Then, you will be using a conditional MATLAB statement within your code to check whether

the matrix B, that you found, is a basis for m  (or, the same, whether Col A = m  ). If yes, the

program breaks with the message:

sprintf('a basis for R^% i is n', m)

(it will return your B)

If B is not a basis for m  , you should expand B to a basis for m  . Use the matrices B and

eye(m) and the command shrink to create a new matrix D, which will be a basis for m  . (A

basis has to contain all vectors from B and some vectors from the matrix eye(m)). You should

also write a set of commands within your code to verify whether the new matrix D is, indeed,

a basis for m  - the command rank will be helpful. If your code confirms that D is a basis for m  , the output message should be:

sprintf('a basis for R^% i is n', m)

B=D;

otherwise, the program breaks with a message similar to that:

disp ('What? It is not a basis!?')

Show more
LEARN MORE EFFECTIVELY AND GET BETTER GRADES!
Ask a Question