2x2 Projection matrix of rank 1

13 views (last 30 days)
john
john on 23 Nov 2022
Edited: john on 27 Nov 2022
  2 Comments
john
john on 27 Nov 2022
Edited: john on 27 Nov 2022
oops

Sign in to comment.

Accepted Answer

Matt J
Matt J on 23 Nov 2022
Edited: Matt J on 23 Nov 2022
a=[1; 2]; n=[3; 4]; x=[5; 6];
r1p(a,n,a)
ans = 2×1
0.1789 0.3578
r1p(a,n,n)
ans = 2×1
1.0e-15 * -0.1986 -0.3972
r1p(a,n,x)
ans = 2×1
-0.1789 -0.3578
function p = r1p(a,n,x)
% computes the action of P, the 2x2 projection matrix of rank 1 having
% a - the sole basis vector for the column space of P
% n - the sole basis vector for the null space of P
a = normalize(a(:),'n');
b = normalize(null(n(:)'),'n');
p = dot(x,b)*a;
end
  4 Comments
Matt J
Matt J on 23 Nov 2022
Again, you do not provide what you think is the correct answer, or an explanation of why that answer is correct..

Sign in to comment.

More Answers (1)

Moiez Qamar
Moiez Qamar on 24 Nov 2022
%should work for:
a=[1; 0.01]
a = 2×1
1.0000 0.0100
n=[0.01; 1]
n = 2×1
0.0100 1.0000
x=[1; 0]
x = 2×1
1 0
p=r1p(a,n,x)
P = 2×2
1.0001 -0.0100 0.0100 -0.0001
p = 2×1
1.0001 0.0100
p = 2×1
1.0001 0.0100
%and for:
a=[1; 0];
n=[0; 1];
x=[1; 0];
p = r1p(a,n,x);
P = 2×2
1 0 0 0
p = 2×1
1 0
function p = r1p(a,n,x)
% computes the action of P, the 2x2 projection matrix of rank 1 having
% a - the sole basis vector for the column space of P
% n - the sole basis vector for the null space of P
xi=[0 -1; 1 0]*n;
chi=xi/(xi'*a);
P=a*chi'
p=P*x
end
  1 Comment
Matt J
Matt J on 24 Nov 2022
P=a*chi'
outer products are not efficient. That's why the exercise asks for you to compute p without computing P.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!