![]() |
|
Reflection of a Vector - Printable Version +- Southperry.net (https://www.southperry.net) +-- Forum: Social (https://www.southperry.net/forumdisplay.php?fid=14) +--- Forum: Rubik's Cube (https://www.southperry.net/forumdisplay.php?fid=58) +--- Thread: Reflection of a Vector (/showthread.php?tid=69595) |
Reflection of a Vector - Tay - 2014-02-01 Ok, Linear Algebra question here. I have no idea what I'm exactly doing wrong, or how everyone else does this. I can't find a good example online that is doing it the way my text book is teaching it. So here's the problem. Let L be the line in R^3 that consists of all scalar multiples of L= Code: 2Find the reflection of the vector about the line L. v= Code: 1*again, 1x3 matrix* From what I know, I need to find the orthogonal projection of v onto line L, and then use a handy dandy formula. I know that a projection is equal to ; (1/||w||^2)w dot w^T where ||w||^2 is the magnitude of w squared and w^T is w transpose. So, I'm saying that w is my line, L. Therefore, ||w||^2 = ((2^2 + 1^2 + 2)^1/2)^2 = ((9)^1/2)^2) = 9 hopefully? and L dot L^T = 3x3 matrix; Code: 4 2 4SoOoOOoOo my projection matrix, A, is equal to (1/9) * Code: 4 2 4And my handy dandy formula to find the reflection of a matrix with respect to a line is 2proj(x) - x which is also 2Ax - x (2A - I)x where I is an identity matrix preforming this out is definitely not getting me the answer in the back of the book though. I apologize for this really weird way of typing this out, and I really dunno what I'm seeing incorrectly but it's something massive lol. Reflection of a Vector - Stereo - 2014-02-01 The dot product should only produce a scalar, if you have W * W^T then W should be a 1x3 matrix, whereas W^T * W would use the 3x1 matrix. Both of those are W dot W; you transpose the one that makes sense. Your projection function is just wrong; it should be (a dot b) * b / ||b||^2 to project a onto b. (note: this will produce a vector the same dimension as b, since (a dot b) is a scalar and so is ||b||) In this case if you were projecting a=(2,1,2)' onto b=(1,1,1)' so (a dot b) = 5, ||b||^2 = 3 5/3*(1,1,1)' (not gonna do the actual question for you) Actually that's another point. ||b||^2 is b dot b. The 2-norm is sqrt(v_1^2+v_2^2+...+v_n^2), the square root of the sum of squares of each component. So squaring it you get ||v||^2 = v_1^2 + v_2^2 + ... Which for ||(1,1,1)||^2 = 1^2 + 1^2 + 1^2 = 3 = (1,1,1) dot (1,1,1) Reflection of a Vector - Tay - 2014-02-01 Stereo Wrote:The dot product should only produce a scalar, if you have W * W^T then W should be a 1x3 matrix, whereas W^T * W would use the 3x1 matrix. Both of those are W dot W; you transpose the one that makes sense. Wait, but I'm projecting v the (1,1,1) ONTO L which is (2,1,2). And, I'm not sure I understand your projection equation. In a sense it makes sense compared to my text book. For clarity sake I took a picture of the problem, number 7, and the textbook definitions of the transformations. Question 7 Orthogonal Projections Reflections EDIT: Ok I figured out why I am getting CLOSE to the answer, but not the actual answer. When I am subtracting my identity matrix I am not taking account the scalar being multiplied to A, which is really solving all my issues now. instead of doing (1/9)[8 4 8 4 2 4 8 4 8] minus (1/9)[9 0 0 0 9 0 0 0 9] to account for the (1/9) term on the projection matrix I was just subtracting by 1. I feel so fucking dumb. Lordddddd, thank you [MENTION=128]Stereo[/MENTION] for the help! Reflection of a Vector - Stereo - 2014-02-01 Yeah, the projection to focus on is proj_L(x) = (x dot w / w dot w) w Which ends up being what I said when you move the terms around a bit (and note that ||w||^2 = w dot w) |