What is the simple form of a contraction matrix in the direction of a vector?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












Given a vector v in dimension n, how to construct a n by n matrix that simply contracts or extends along the vector v but leaves any vector perpendicular to v unchanged? What is the simplest way to construct such a matrix? The best I could come up with was to assume the matrix in diagonalized form and set up the eigenvectors and eigenvalue. Is there easier way to do this in any dimension n? If not, May I get the general form of such matrix in 3 dimensions ?







share|cite|improve this question























    up vote
    0
    down vote

    favorite












    Given a vector v in dimension n, how to construct a n by n matrix that simply contracts or extends along the vector v but leaves any vector perpendicular to v unchanged? What is the simplest way to construct such a matrix? The best I could come up with was to assume the matrix in diagonalized form and set up the eigenvectors and eigenvalue. Is there easier way to do this in any dimension n? If not, May I get the general form of such matrix in 3 dimensions ?







    share|cite|improve this question





















      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      Given a vector v in dimension n, how to construct a n by n matrix that simply contracts or extends along the vector v but leaves any vector perpendicular to v unchanged? What is the simplest way to construct such a matrix? The best I could come up with was to assume the matrix in diagonalized form and set up the eigenvectors and eigenvalue. Is there easier way to do this in any dimension n? If not, May I get the general form of such matrix in 3 dimensions ?







      share|cite|improve this question











      Given a vector v in dimension n, how to construct a n by n matrix that simply contracts or extends along the vector v but leaves any vector perpendicular to v unchanged? What is the simplest way to construct such a matrix? The best I could come up with was to assume the matrix in diagonalized form and set up the eigenvectors and eigenvalue. Is there easier way to do this in any dimension n? If not, May I get the general form of such matrix in 3 dimensions ?









      share|cite|improve this question










      share|cite|improve this question




      share|cite|improve this question









      asked Jul 25 at 6:05









      Johnny Chen

      686




      686




















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          You could use a construction similar to the one for building reflections. Split $mathbf x$ into components $mathbf x_parallel+mathbf x_perp$ parallel to and perpendicular to $mathbf v$. The transformation you want is then $mathbf x mapsto lambdamathbf x_parallel+mathbf x_perp$. (With $lambda=-1$ you get a reflection in the hyperplane orthogonal to $mathbf v$.) Proceeding as with a reflection, you have $mathbf x_parallel = mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v$ and $mathbf x_perp = mathbf x - mathbf x_parallel$. Putting this all together, $$lambda mathbf x_parallel + mathbf x_perp = lambda mathbf x_parallel + mathbf x - mathbf x_parallel = mathbf x+(lambda-1)mathbf x_parallel = mathbf x + (lambda-1)mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v = left(I + (lambda-1)mathbf v mathbf v^T over mathbf v^Tmathbf vright)mathbf x.$$






          share|cite|improve this answer





















            Your Answer




            StackExchange.ifUsing("editor", function ()
            return StackExchange.using("mathjaxEditing", function ()
            StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
            StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
            );
            );
            , "mathjax-editing");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "69"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: false,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            noCode: true, onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );








             

            draft saved


            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2862075%2fwhat-is-the-simple-form-of-a-contraction-matrix-in-the-direction-of-a-vector%23new-answer', 'question_page');

            );

            Post as a guest






























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            0
            down vote













            You could use a construction similar to the one for building reflections. Split $mathbf x$ into components $mathbf x_parallel+mathbf x_perp$ parallel to and perpendicular to $mathbf v$. The transformation you want is then $mathbf x mapsto lambdamathbf x_parallel+mathbf x_perp$. (With $lambda=-1$ you get a reflection in the hyperplane orthogonal to $mathbf v$.) Proceeding as with a reflection, you have $mathbf x_parallel = mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v$ and $mathbf x_perp = mathbf x - mathbf x_parallel$. Putting this all together, $$lambda mathbf x_parallel + mathbf x_perp = lambda mathbf x_parallel + mathbf x - mathbf x_parallel = mathbf x+(lambda-1)mathbf x_parallel = mathbf x + (lambda-1)mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v = left(I + (lambda-1)mathbf v mathbf v^T over mathbf v^Tmathbf vright)mathbf x.$$






            share|cite|improve this answer

























              up vote
              0
              down vote













              You could use a construction similar to the one for building reflections. Split $mathbf x$ into components $mathbf x_parallel+mathbf x_perp$ parallel to and perpendicular to $mathbf v$. The transformation you want is then $mathbf x mapsto lambdamathbf x_parallel+mathbf x_perp$. (With $lambda=-1$ you get a reflection in the hyperplane orthogonal to $mathbf v$.) Proceeding as with a reflection, you have $mathbf x_parallel = mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v$ and $mathbf x_perp = mathbf x - mathbf x_parallel$. Putting this all together, $$lambda mathbf x_parallel + mathbf x_perp = lambda mathbf x_parallel + mathbf x - mathbf x_parallel = mathbf x+(lambda-1)mathbf x_parallel = mathbf x + (lambda-1)mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v = left(I + (lambda-1)mathbf v mathbf v^T over mathbf v^Tmathbf vright)mathbf x.$$






              share|cite|improve this answer























                up vote
                0
                down vote










                up vote
                0
                down vote









                You could use a construction similar to the one for building reflections. Split $mathbf x$ into components $mathbf x_parallel+mathbf x_perp$ parallel to and perpendicular to $mathbf v$. The transformation you want is then $mathbf x mapsto lambdamathbf x_parallel+mathbf x_perp$. (With $lambda=-1$ you get a reflection in the hyperplane orthogonal to $mathbf v$.) Proceeding as with a reflection, you have $mathbf x_parallel = mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v$ and $mathbf x_perp = mathbf x - mathbf x_parallel$. Putting this all together, $$lambda mathbf x_parallel + mathbf x_perp = lambda mathbf x_parallel + mathbf x - mathbf x_parallel = mathbf x+(lambda-1)mathbf x_parallel = mathbf x + (lambda-1)mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v = left(I + (lambda-1)mathbf v mathbf v^T over mathbf v^Tmathbf vright)mathbf x.$$






                share|cite|improve this answer













                You could use a construction similar to the one for building reflections. Split $mathbf x$ into components $mathbf x_parallel+mathbf x_perp$ parallel to and perpendicular to $mathbf v$. The transformation you want is then $mathbf x mapsto lambdamathbf x_parallel+mathbf x_perp$. (With $lambda=-1$ you get a reflection in the hyperplane orthogonal to $mathbf v$.) Proceeding as with a reflection, you have $mathbf x_parallel = mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v$ and $mathbf x_perp = mathbf x - mathbf x_parallel$. Putting this all together, $$lambda mathbf x_parallel + mathbf x_perp = lambda mathbf x_parallel + mathbf x - mathbf x_parallel = mathbf x+(lambda-1)mathbf x_parallel = mathbf x + (lambda-1)mathbf v^Tmathbf x over mathbf v^Tmathbf vmathbf v = left(I + (lambda-1)mathbf v mathbf v^T over mathbf v^Tmathbf vright)mathbf x.$$







                share|cite|improve this answer













                share|cite|improve this answer



                share|cite|improve this answer











                answered Jul 25 at 7:34









                amd

                25.8k2943




                25.8k2943






















                     

                    draft saved


                    draft discarded


























                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2862075%2fwhat-is-the-simple-form-of-a-contraction-matrix-in-the-direction-of-a-vector%23new-answer', 'question_page');

                    );

                    Post as a guest













































































                    Comments

                    Popular posts from this blog

                    What is the equation of a 3D cone with generalised tilt?

                    Color the edges and diagonals of a regular polygon

                    Relationship between determinant of matrix and determinant of adjoint?