Alternative way to define the Normal Vector












0












$begingroup$


My calculus book defines the Normal vector in terms of the Tangent vector like so:



$overrightarrow{r}(t) =$ the original vector function



$$overrightarrow{T}(t) = frac{overrightarrow{r'}(t)}{|overrightarrow{r'}(t)|}$$



$$overrightarrow{N}(t) = frac{overrightarrow{T'}(t)}{|overrightarrow{T'}(t)|}$$



Since $overrightarrow{T}(t)$ is just $overrightarrow{r'}(t)$ normalized, can I say that
$$overrightarrow{N}(t) = frac{overrightarrow{r''}(t)}{|overrightarrow{r''}(t)|}$$
without changing anything?










share|cite|improve this question











$endgroup$












  • $begingroup$
    Is this because the quotient could be a function of t? So, in the specific case where the first derivative of r is a constant, I would be correct?
    $endgroup$
    – J Atkin
    Dec 12 '18 at 16:55
















0












$begingroup$


My calculus book defines the Normal vector in terms of the Tangent vector like so:



$overrightarrow{r}(t) =$ the original vector function



$$overrightarrow{T}(t) = frac{overrightarrow{r'}(t)}{|overrightarrow{r'}(t)|}$$



$$overrightarrow{N}(t) = frac{overrightarrow{T'}(t)}{|overrightarrow{T'}(t)|}$$



Since $overrightarrow{T}(t)$ is just $overrightarrow{r'}(t)$ normalized, can I say that
$$overrightarrow{N}(t) = frac{overrightarrow{r''}(t)}{|overrightarrow{r''}(t)|}$$
without changing anything?










share|cite|improve this question











$endgroup$












  • $begingroup$
    Is this because the quotient could be a function of t? So, in the specific case where the first derivative of r is a constant, I would be correct?
    $endgroup$
    – J Atkin
    Dec 12 '18 at 16:55














0












0








0





$begingroup$


My calculus book defines the Normal vector in terms of the Tangent vector like so:



$overrightarrow{r}(t) =$ the original vector function



$$overrightarrow{T}(t) = frac{overrightarrow{r'}(t)}{|overrightarrow{r'}(t)|}$$



$$overrightarrow{N}(t) = frac{overrightarrow{T'}(t)}{|overrightarrow{T'}(t)|}$$



Since $overrightarrow{T}(t)$ is just $overrightarrow{r'}(t)$ normalized, can I say that
$$overrightarrow{N}(t) = frac{overrightarrow{r''}(t)}{|overrightarrow{r''}(t)|}$$
without changing anything?










share|cite|improve this question











$endgroup$




My calculus book defines the Normal vector in terms of the Tangent vector like so:



$overrightarrow{r}(t) =$ the original vector function



$$overrightarrow{T}(t) = frac{overrightarrow{r'}(t)}{|overrightarrow{r'}(t)|}$$



$$overrightarrow{N}(t) = frac{overrightarrow{T'}(t)}{|overrightarrow{T'}(t)|}$$



Since $overrightarrow{T}(t)$ is just $overrightarrow{r'}(t)$ normalized, can I say that
$$overrightarrow{N}(t) = frac{overrightarrow{r''}(t)}{|overrightarrow{r''}(t)|}$$
without changing anything?







calculus vectors






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Dec 12 '18 at 16:44







J Atkin

















asked Dec 12 '18 at 16:35









J AtkinJ Atkin

1205




1205












  • $begingroup$
    Is this because the quotient could be a function of t? So, in the specific case where the first derivative of r is a constant, I would be correct?
    $endgroup$
    – J Atkin
    Dec 12 '18 at 16:55


















  • $begingroup$
    Is this because the quotient could be a function of t? So, in the specific case where the first derivative of r is a constant, I would be correct?
    $endgroup$
    – J Atkin
    Dec 12 '18 at 16:55
















$begingroup$
Is this because the quotient could be a function of t? So, in the specific case where the first derivative of r is a constant, I would be correct?
$endgroup$
– J Atkin
Dec 12 '18 at 16:55




$begingroup$
Is this because the quotient could be a function of t? So, in the specific case where the first derivative of r is a constant, I would be correct?
$endgroup$
– J Atkin
Dec 12 '18 at 16:55










3 Answers
3






active

oldest

votes


















1












$begingroup$

The specific reason why this does not work in the simple way you attempted
is that $r''$ includes both the normal acceleration (which is in the direction you want) and the tangential acceleration (which is perpendicular to the direction you want).



You can separate out these two components by projecting $r''$ onto the tangential direction (that is, onto the direction of $r'$). This gives the tangential component of $r''$:
$$ frac{r' cdot r''}{lVert r'rVert^2} r'.$$



Subtracting this from the total acceleration, what remains is the normal acceleration:
$$ r'' - frac{r' cdot r''}{lVert r'rVert^2} r'.$$



And if we want a unit vector then we need to divide by the magnitude:
$$ frac{r'' - frac{r' cdot r''}{lVert r'rVert^2} r'}
{leftlVert r'' - frac{r' cdot r''}{lVert r'rVert^2} r' rightrVert}.$$



This may help to explain why you might want to use $T$ as an intermediate step.






share|cite|improve this answer









$endgroup$





















    1












    $begingroup$

    No, you cannot. Yes, you will get an unit vector but, in general, it will not be orthogonal to $overrightarrow{T}(t)$.






    share|cite|improve this answer









    $endgroup$













    • $begingroup$
      What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
      $endgroup$
      – J Atkin
      Dec 12 '18 at 16:48










    • $begingroup$
      When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
      $endgroup$
      – José Carlos Santos
      Dec 12 '18 at 17:08



















    1












    $begingroup$

    No. $mathbf{N}(t) = frac{mathbf{T}'(t)}{|mathbf{T}'(t)|} = frac{frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}}{|mathbf{T}'(t)|}$ (using the quotient rule of differentiation). Since the denominator is just a scalar, analyze the numerator: $frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2} = frac{mathbf{r}''(t)}{|mathbf{r}'(t)|} - mathbf{r}'(t)frac{(|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}$. The expression reduces to a vector in the direction of $mathbf{r}''(t)$ minus a vector in the direction of $mathbf{r}'(t)$. Since these vectors are not in general pointing in the same direction, the resulting vector will not generally be in the direction of $mathbf{r}''(t)$. Therefore, it won't be $frac{mathbf{r}''(t)}{|mathbf{r}''(t)|}$.



    Note: by $(|mathbf{r}'(t)|)'(t)$ I mean the function $frac{d|mathbf{r}'(t)|}{dt}$.






    share|cite|improve this answer









    $endgroup$














      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',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      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%2f3036916%2falternative-way-to-define-the-normal-vector%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      3 Answers
      3






      active

      oldest

      votes








      3 Answers
      3






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      1












      $begingroup$

      The specific reason why this does not work in the simple way you attempted
      is that $r''$ includes both the normal acceleration (which is in the direction you want) and the tangential acceleration (which is perpendicular to the direction you want).



      You can separate out these two components by projecting $r''$ onto the tangential direction (that is, onto the direction of $r'$). This gives the tangential component of $r''$:
      $$ frac{r' cdot r''}{lVert r'rVert^2} r'.$$



      Subtracting this from the total acceleration, what remains is the normal acceleration:
      $$ r'' - frac{r' cdot r''}{lVert r'rVert^2} r'.$$



      And if we want a unit vector then we need to divide by the magnitude:
      $$ frac{r'' - frac{r' cdot r''}{lVert r'rVert^2} r'}
      {leftlVert r'' - frac{r' cdot r''}{lVert r'rVert^2} r' rightrVert}.$$



      This may help to explain why you might want to use $T$ as an intermediate step.






      share|cite|improve this answer









      $endgroup$


















        1












        $begingroup$

        The specific reason why this does not work in the simple way you attempted
        is that $r''$ includes both the normal acceleration (which is in the direction you want) and the tangential acceleration (which is perpendicular to the direction you want).



        You can separate out these two components by projecting $r''$ onto the tangential direction (that is, onto the direction of $r'$). This gives the tangential component of $r''$:
        $$ frac{r' cdot r''}{lVert r'rVert^2} r'.$$



        Subtracting this from the total acceleration, what remains is the normal acceleration:
        $$ r'' - frac{r' cdot r''}{lVert r'rVert^2} r'.$$



        And if we want a unit vector then we need to divide by the magnitude:
        $$ frac{r'' - frac{r' cdot r''}{lVert r'rVert^2} r'}
        {leftlVert r'' - frac{r' cdot r''}{lVert r'rVert^2} r' rightrVert}.$$



        This may help to explain why you might want to use $T$ as an intermediate step.






        share|cite|improve this answer









        $endgroup$
















          1












          1








          1





          $begingroup$

          The specific reason why this does not work in the simple way you attempted
          is that $r''$ includes both the normal acceleration (which is in the direction you want) and the tangential acceleration (which is perpendicular to the direction you want).



          You can separate out these two components by projecting $r''$ onto the tangential direction (that is, onto the direction of $r'$). This gives the tangential component of $r''$:
          $$ frac{r' cdot r''}{lVert r'rVert^2} r'.$$



          Subtracting this from the total acceleration, what remains is the normal acceleration:
          $$ r'' - frac{r' cdot r''}{lVert r'rVert^2} r'.$$



          And if we want a unit vector then we need to divide by the magnitude:
          $$ frac{r'' - frac{r' cdot r''}{lVert r'rVert^2} r'}
          {leftlVert r'' - frac{r' cdot r''}{lVert r'rVert^2} r' rightrVert}.$$



          This may help to explain why you might want to use $T$ as an intermediate step.






          share|cite|improve this answer









          $endgroup$



          The specific reason why this does not work in the simple way you attempted
          is that $r''$ includes both the normal acceleration (which is in the direction you want) and the tangential acceleration (which is perpendicular to the direction you want).



          You can separate out these two components by projecting $r''$ onto the tangential direction (that is, onto the direction of $r'$). This gives the tangential component of $r''$:
          $$ frac{r' cdot r''}{lVert r'rVert^2} r'.$$



          Subtracting this from the total acceleration, what remains is the normal acceleration:
          $$ r'' - frac{r' cdot r''}{lVert r'rVert^2} r'.$$



          And if we want a unit vector then we need to divide by the magnitude:
          $$ frac{r'' - frac{r' cdot r''}{lVert r'rVert^2} r'}
          {leftlVert r'' - frac{r' cdot r''}{lVert r'rVert^2} r' rightrVert}.$$



          This may help to explain why you might want to use $T$ as an intermediate step.







          share|cite|improve this answer












          share|cite|improve this answer



          share|cite|improve this answer










          answered Dec 12 '18 at 17:12









          David KDavid K

          55.5k345121




          55.5k345121























              1












              $begingroup$

              No, you cannot. Yes, you will get an unit vector but, in general, it will not be orthogonal to $overrightarrow{T}(t)$.






              share|cite|improve this answer









              $endgroup$













              • $begingroup$
                What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
                $endgroup$
                – J Atkin
                Dec 12 '18 at 16:48










              • $begingroup$
                When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
                $endgroup$
                – José Carlos Santos
                Dec 12 '18 at 17:08
















              1












              $begingroup$

              No, you cannot. Yes, you will get an unit vector but, in general, it will not be orthogonal to $overrightarrow{T}(t)$.






              share|cite|improve this answer









              $endgroup$













              • $begingroup$
                What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
                $endgroup$
                – J Atkin
                Dec 12 '18 at 16:48










              • $begingroup$
                When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
                $endgroup$
                – José Carlos Santos
                Dec 12 '18 at 17:08














              1












              1








              1





              $begingroup$

              No, you cannot. Yes, you will get an unit vector but, in general, it will not be orthogonal to $overrightarrow{T}(t)$.






              share|cite|improve this answer









              $endgroup$



              No, you cannot. Yes, you will get an unit vector but, in general, it will not be orthogonal to $overrightarrow{T}(t)$.







              share|cite|improve this answer












              share|cite|improve this answer



              share|cite|improve this answer










              answered Dec 12 '18 at 16:45









              José Carlos SantosJosé Carlos Santos

              172k22132239




              172k22132239












              • $begingroup$
                What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
                $endgroup$
                – J Atkin
                Dec 12 '18 at 16:48










              • $begingroup$
                When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
                $endgroup$
                – José Carlos Santos
                Dec 12 '18 at 17:08


















              • $begingroup$
                What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
                $endgroup$
                – J Atkin
                Dec 12 '18 at 16:48










              • $begingroup$
                When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
                $endgroup$
                – José Carlos Santos
                Dec 12 '18 at 17:08
















              $begingroup$
              What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
              $endgroup$
              – J Atkin
              Dec 12 '18 at 16:48




              $begingroup$
              What is the major change? AFAIK the only reason to use T over r' is that it is that it is of unit length, which I think doesn't change the derivative. But this may be a misconception.
              $endgroup$
              – J Atkin
              Dec 12 '18 at 16:48












              $begingroup$
              When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
              $endgroup$
              – José Carlos Santos
              Dec 12 '18 at 17:08




              $begingroup$
              When you differentiate a vectorial function $f$ such that each $f(x)$ has norm $1$, then, for each $x$, $f(x)$ and $f'(x)$ are orthogonal. This is not true anymore if you drotp the hypothesis that each $f(x)$ has norm $1$.
              $endgroup$
              – José Carlos Santos
              Dec 12 '18 at 17:08











              1












              $begingroup$

              No. $mathbf{N}(t) = frac{mathbf{T}'(t)}{|mathbf{T}'(t)|} = frac{frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}}{|mathbf{T}'(t)|}$ (using the quotient rule of differentiation). Since the denominator is just a scalar, analyze the numerator: $frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2} = frac{mathbf{r}''(t)}{|mathbf{r}'(t)|} - mathbf{r}'(t)frac{(|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}$. The expression reduces to a vector in the direction of $mathbf{r}''(t)$ minus a vector in the direction of $mathbf{r}'(t)$. Since these vectors are not in general pointing in the same direction, the resulting vector will not generally be in the direction of $mathbf{r}''(t)$. Therefore, it won't be $frac{mathbf{r}''(t)}{|mathbf{r}''(t)|}$.



              Note: by $(|mathbf{r}'(t)|)'(t)$ I mean the function $frac{d|mathbf{r}'(t)|}{dt}$.






              share|cite|improve this answer









              $endgroup$


















                1












                $begingroup$

                No. $mathbf{N}(t) = frac{mathbf{T}'(t)}{|mathbf{T}'(t)|} = frac{frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}}{|mathbf{T}'(t)|}$ (using the quotient rule of differentiation). Since the denominator is just a scalar, analyze the numerator: $frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2} = frac{mathbf{r}''(t)}{|mathbf{r}'(t)|} - mathbf{r}'(t)frac{(|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}$. The expression reduces to a vector in the direction of $mathbf{r}''(t)$ minus a vector in the direction of $mathbf{r}'(t)$. Since these vectors are not in general pointing in the same direction, the resulting vector will not generally be in the direction of $mathbf{r}''(t)$. Therefore, it won't be $frac{mathbf{r}''(t)}{|mathbf{r}''(t)|}$.



                Note: by $(|mathbf{r}'(t)|)'(t)$ I mean the function $frac{d|mathbf{r}'(t)|}{dt}$.






                share|cite|improve this answer









                $endgroup$
















                  1












                  1








                  1





                  $begingroup$

                  No. $mathbf{N}(t) = frac{mathbf{T}'(t)}{|mathbf{T}'(t)|} = frac{frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}}{|mathbf{T}'(t)|}$ (using the quotient rule of differentiation). Since the denominator is just a scalar, analyze the numerator: $frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2} = frac{mathbf{r}''(t)}{|mathbf{r}'(t)|} - mathbf{r}'(t)frac{(|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}$. The expression reduces to a vector in the direction of $mathbf{r}''(t)$ minus a vector in the direction of $mathbf{r}'(t)$. Since these vectors are not in general pointing in the same direction, the resulting vector will not generally be in the direction of $mathbf{r}''(t)$. Therefore, it won't be $frac{mathbf{r}''(t)}{|mathbf{r}''(t)|}$.



                  Note: by $(|mathbf{r}'(t)|)'(t)$ I mean the function $frac{d|mathbf{r}'(t)|}{dt}$.






                  share|cite|improve this answer









                  $endgroup$



                  No. $mathbf{N}(t) = frac{mathbf{T}'(t)}{|mathbf{T}'(t)|} = frac{frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}}{|mathbf{T}'(t)|}$ (using the quotient rule of differentiation). Since the denominator is just a scalar, analyze the numerator: $frac{mathbf{r}''(t)|mathbf{r}'(t)| - mathbf{r}'(t) (|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2} = frac{mathbf{r}''(t)}{|mathbf{r}'(t)|} - mathbf{r}'(t)frac{(|mathbf{r}'|)'(t)}{|mathbf{r}'(t)|^2}$. The expression reduces to a vector in the direction of $mathbf{r}''(t)$ minus a vector in the direction of $mathbf{r}'(t)$. Since these vectors are not in general pointing in the same direction, the resulting vector will not generally be in the direction of $mathbf{r}''(t)$. Therefore, it won't be $frac{mathbf{r}''(t)}{|mathbf{r}''(t)|}$.



                  Note: by $(|mathbf{r}'(t)|)'(t)$ I mean the function $frac{d|mathbf{r}'(t)|}{dt}$.







                  share|cite|improve this answer












                  share|cite|improve this answer



                  share|cite|improve this answer










                  answered Dec 12 '18 at 17:11









                  CyborgOctopusCyborgOctopus

                  1957




                  1957






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Mathematics Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      Use MathJax to format equations. MathJax reference.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3036916%2falternative-way-to-define-the-normal-vector%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      How to change which sound is reproduced for terminal bell?

                      Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents

                      Can I use Tabulator js library in my java Spring + Thymeleaf project?