How do I verify a vector identity using Mathematica?

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











up vote
2
down vote

favorite












I am trying to verify well known Frenet–Serret formulas in general setting using Mathematica.
I need to consider a general space curve $r(s)=(x(s),y(s),z(s))$ in $mathbbR^3$ and define its unit tangent $T$ and unit normal $N$ vectors by $$T=dfracdrds$$ and $$dfracdTds=kappa N.$$ Then I define the unit binomial vector $B$ in such a way that $$dfracdNds=-kappa T+tau B$$ and now I need to find an expression for $B$ only interms of derivative of $r(s)$ using this formula as the definition. The difficulty to do this computation by hand arise as formulas for $kappa, tau$ are too long.



However I do not know how I can do this symbolic computations through Mathematica. I tried to find a reference or any computation of this kind that I can use as an example, but couldn't succeed. Any help that you can do is highly appreciated.










share|improve this question



















  • 1




    What code have you tried thus far e,g, to set up the equations?
    – Daniel Lichtblau
    2 hours ago














up vote
2
down vote

favorite












I am trying to verify well known Frenet–Serret formulas in general setting using Mathematica.
I need to consider a general space curve $r(s)=(x(s),y(s),z(s))$ in $mathbbR^3$ and define its unit tangent $T$ and unit normal $N$ vectors by $$T=dfracdrds$$ and $$dfracdTds=kappa N.$$ Then I define the unit binomial vector $B$ in such a way that $$dfracdNds=-kappa T+tau B$$ and now I need to find an expression for $B$ only interms of derivative of $r(s)$ using this formula as the definition. The difficulty to do this computation by hand arise as formulas for $kappa, tau$ are too long.



However I do not know how I can do this symbolic computations through Mathematica. I tried to find a reference or any computation of this kind that I can use as an example, but couldn't succeed. Any help that you can do is highly appreciated.










share|improve this question



















  • 1




    What code have you tried thus far e,g, to set up the equations?
    – Daniel Lichtblau
    2 hours ago












up vote
2
down vote

favorite









up vote
2
down vote

favorite











I am trying to verify well known Frenet–Serret formulas in general setting using Mathematica.
I need to consider a general space curve $r(s)=(x(s),y(s),z(s))$ in $mathbbR^3$ and define its unit tangent $T$ and unit normal $N$ vectors by $$T=dfracdrds$$ and $$dfracdTds=kappa N.$$ Then I define the unit binomial vector $B$ in such a way that $$dfracdNds=-kappa T+tau B$$ and now I need to find an expression for $B$ only interms of derivative of $r(s)$ using this formula as the definition. The difficulty to do this computation by hand arise as formulas for $kappa, tau$ are too long.



However I do not know how I can do this symbolic computations through Mathematica. I tried to find a reference or any computation of this kind that I can use as an example, but couldn't succeed. Any help that you can do is highly appreciated.










share|improve this question















I am trying to verify well known Frenet–Serret formulas in general setting using Mathematica.
I need to consider a general space curve $r(s)=(x(s),y(s),z(s))$ in $mathbbR^3$ and define its unit tangent $T$ and unit normal $N$ vectors by $$T=dfracdrds$$ and $$dfracdTds=kappa N.$$ Then I define the unit binomial vector $B$ in such a way that $$dfracdNds=-kappa T+tau B$$ and now I need to find an expression for $B$ only interms of derivative of $r(s)$ using this formula as the definition. The difficulty to do this computation by hand arise as formulas for $kappa, tau$ are too long.



However I do not know how I can do this symbolic computations through Mathematica. I tried to find a reference or any computation of this kind that I can use as an example, but couldn't succeed. Any help that you can do is highly appreciated.







symbolic computational-geometry vector-calculus geometric-computation






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 2 mins ago









chris

12k440107




12k440107










asked 4 hours ago









Bumblebee

20217




20217







  • 1




    What code have you tried thus far e,g, to set up the equations?
    – Daniel Lichtblau
    2 hours ago












  • 1




    What code have you tried thus far e,g, to set up the equations?
    – Daniel Lichtblau
    2 hours ago







1




1




What code have you tried thus far e,g, to set up the equations?
– Daniel Lichtblau
2 hours ago




What code have you tried thus far e,g, to set up the equations?
– Daniel Lichtblau
2 hours ago










2 Answers
2






active

oldest

votes

















up vote
2
down vote













You can use FrenetSerretSystem:



FrenetSerretSystem[x[s], y[s], z[s], s][[-1, -1]] //TeXForm



$leftfracy'(s) z''(s)-y''(s) z'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s)
z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2,fracx''(s) z'(s)-x'(s) z''(s)sqrtleft(x'(s)
y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s)
z'(s)right)^2,fracx'(s) y''(s)-x''(s) y'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s)
z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2right$







share|improve this answer



























    up vote
    0
    down vote













    Since N is a built-in symbol, we will use n instead of N. The required formulas are



    r = x[s], y[s], z[s];
    T = D[r, s]
    [Kappa] = Norm[D[T, s]]
    n = D[T, s]/[Kappa]
    [Tau] = Norm[([Kappa]*T + D[n, s])]
    B = ([Kappa]*T + D[n, s])/[Tau]





    share|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: "387"
      ;
      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: false,
      noModals: false,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













       

      draft saved


      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f184819%2fhow-do-i-verify-a-vector-identity-using-mathematica%23new-answer', 'question_page');

      );

      Post as a guest






























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes








      up vote
      2
      down vote













      You can use FrenetSerretSystem:



      FrenetSerretSystem[x[s], y[s], z[s], s][[-1, -1]] //TeXForm



      $leftfracy'(s) z''(s)-y''(s) z'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s)
      z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2,fracx''(s) z'(s)-x'(s) z''(s)sqrtleft(x'(s)
      y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s)
      z'(s)right)^2,fracx'(s) y''(s)-x''(s) y'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s)
      z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2right$







      share|improve this answer
























        up vote
        2
        down vote













        You can use FrenetSerretSystem:



        FrenetSerretSystem[x[s], y[s], z[s], s][[-1, -1]] //TeXForm



        $leftfracy'(s) z''(s)-y''(s) z'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s)
        z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2,fracx''(s) z'(s)-x'(s) z''(s)sqrtleft(x'(s)
        y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s)
        z'(s)right)^2,fracx'(s) y''(s)-x''(s) y'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s)
        z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2right$







        share|improve this answer






















          up vote
          2
          down vote










          up vote
          2
          down vote









          You can use FrenetSerretSystem:



          FrenetSerretSystem[x[s], y[s], z[s], s][[-1, -1]] //TeXForm



          $leftfracy'(s) z''(s)-y''(s) z'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s)
          z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2,fracx''(s) z'(s)-x'(s) z''(s)sqrtleft(x'(s)
          y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s)
          z'(s)right)^2,fracx'(s) y''(s)-x''(s) y'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s)
          z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2right$







          share|improve this answer












          You can use FrenetSerretSystem:



          FrenetSerretSystem[x[s], y[s], z[s], s][[-1, -1]] //TeXForm



          $leftfracy'(s) z''(s)-y''(s) z'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s)
          z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2,fracx''(s) z'(s)-x'(s) z''(s)sqrtleft(x'(s)
          y''(s)-x''(s) y'(s)right)^2+left(x''(s) z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s)
          z'(s)right)^2,fracx'(s) y''(s)-x''(s) y'(s)sqrtleft(x'(s) y''(s)-x''(s) y'(s)right)^2+left(x''(s)
          z'(s)-x'(s) z''(s)right)^2+left(y'(s) z''(s)-y''(s) z'(s)right)^2right$








          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 26 mins ago









          Carl Woll

          63k282163




          63k282163




















              up vote
              0
              down vote













              Since N is a built-in symbol, we will use n instead of N. The required formulas are



              r = x[s], y[s], z[s];
              T = D[r, s]
              [Kappa] = Norm[D[T, s]]
              n = D[T, s]/[Kappa]
              [Tau] = Norm[([Kappa]*T + D[n, s])]
              B = ([Kappa]*T + D[n, s])/[Tau]





              share|improve this answer
























                up vote
                0
                down vote













                Since N is a built-in symbol, we will use n instead of N. The required formulas are



                r = x[s], y[s], z[s];
                T = D[r, s]
                [Kappa] = Norm[D[T, s]]
                n = D[T, s]/[Kappa]
                [Tau] = Norm[([Kappa]*T + D[n, s])]
                B = ([Kappa]*T + D[n, s])/[Tau]





                share|improve this answer






















                  up vote
                  0
                  down vote










                  up vote
                  0
                  down vote









                  Since N is a built-in symbol, we will use n instead of N. The required formulas are



                  r = x[s], y[s], z[s];
                  T = D[r, s]
                  [Kappa] = Norm[D[T, s]]
                  n = D[T, s]/[Kappa]
                  [Tau] = Norm[([Kappa]*T + D[n, s])]
                  B = ([Kappa]*T + D[n, s])/[Tau]





                  share|improve this answer












                  Since N is a built-in symbol, we will use n instead of N. The required formulas are



                  r = x[s], y[s], z[s];
                  T = D[r, s]
                  [Kappa] = Norm[D[T, s]]
                  n = D[T, s]/[Kappa]
                  [Tau] = Norm[([Kappa]*T + D[n, s])]
                  B = ([Kappa]*T + D[n, s])/[Tau]






                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 34 mins ago









                  Alex Trounev

                  3,2701312




                  3,2701312



























                       

                      draft saved


                      draft discarded















































                       


                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f184819%2fhow-do-i-verify-a-vector-identity-using-mathematica%23new-answer', 'question_page');

                      );

                      Post as a guest













































































                      Popular posts from this blog

                      How to check contact read email or not when send email to Individual?

                      Christian Cage

                      How to properly install USB display driver for Fresco Logic FL2000DX on Ubuntu?