2x2 Projection matrix of rank 1

6 ビュー (過去 30 日間)
john
john 2022 年 11 月 23 日
編集済み: john 2022 年 11 月 27 日
  2 件のコメント
Rik
Rik 2022 年 11 月 24 日
I recovered the removed content from the Google cache (something which anyone can do). Editing away your question is very rude. Someone spent time reading your question, understanding your issue, figuring out the solution, and writing an answer. Now you repay that kindness by ensuring that the next person with a similar question can't benefit from this answer.
john
john 2022 年 11 月 27 日
編集済み: john 2022 年 11 月 27 日
oops

サインインしてコメントする。

採用された回答

Matt J
Matt J 2022 年 11 月 23 日
編集済み: Matt J 2022 年 11 月 23 日
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 件のコメント
john
john 2022 年 11 月 23 日
Thank you so much for continuing to help me out. However, this now works for a=[1; 0.01]; n=[0.01; 1]; x=[1; 0]; (just have to negate it), but does not return the correct answer for a=[1; 2]; n=[3; 4]; x=[5; 6];
Matt J
Matt J 2022 年 11 月 23 日
Again, you do not provide what you think is the correct answer, or an explanation of why that answer is correct..

サインインしてコメントする。

その他の回答 (1 件)

Moiez Qamar
Moiez Qamar 2022 年 11 月 24 日
%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 件のコメント
Matt J
Matt J 2022 年 11 月 24 日
P=a*chi'
outer products are not efficient. That's why the exercise asks for you to compute p without computing P.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by