<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>I do not agree with your answer. Doing *by hand* the shift to a
      principal period  of sin () solves the problem. For example, here
      is a plot of sin(x) vs sin(x-floor(x/2/%pi)*%pi*2) for large
      values of x:<br>
    </p>
    <p>x = (10^[1:16])*%pi<br>
      sx = sin(x-floor(x/2/%pi)*%pi*2)<br>
      plot("ln",x,sin(x),'-o',x,sx,'-o')<br>
      legend("$\Large\sin x$","$\Large\sin
      \left(x-2\pi\left\lfloor\frac{x}{2\pi}\right\rfloor\right)$",3)</p>
    <img moz-do-not-send="false"
      src="cid:part1.7ADF83AB.BAD12A27@utc.fr" alt="error" width="437"
      height="377">
    <p>I suppose that the hardware implementation used by the compiler
      when using the standard math library does not use this simple
      trick because it would decrease the floating point performance.</p>
    <br>
    <div class="moz-cite-prefix">S.<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Le 06/01/2021 à 09:14, Jean-Yves
      Baudais a écrit :<br>
    </div>
    <blockquote type="cite"
      cite="mid:18f181de-0582-c968-f189-bb9a9f4190d4@insa-rennes.fr">Hello,
      <br>
      <br>
      Le 05/01/2021 à 09:19, Federico Miyara a écrit :
      <br>
      <blockquote type="cite">--> sin(%pi)
        <br>
          ans  =
        <br>
            0.0000000000000001224647
        <br>
      </blockquote>
      <br>
      <br>
      You face the limited precision of all numerical calculus. See
      <br>
      --> help %eps
      <br>
      <br>
      It has no sense to use 23 digits with a precision of 2.22E-16, the
      7th last digits are noise.
      <br>
      <br>
      <br>
      <blockquote type="cite">--> sin(1e10*%pi)
        <br>
          ans  =
        <br>
           -0.0000022393627619559233
        <br>
        <br>
        --> sin(1e15*%pi)
        <br>
          ans  =
        <br>
           -0.2362090532517409080526
        <br>
      </blockquote>
      <br>
      <br>
      All is consistent with the definition of the precision. A toy
      example:
      <br>
      --> a=2;
      <br>
      --> b=sqrt(2);
      <br>
      --> a-b^2
      <br>
      <br>
      You expect zero because you do symbolic calculus, not Scilab.
      <br>
      <br>
      <br>
      <blockquote type="cite">The Wolfram Alpha site yields the correct
        value 0 in all cases (using their own pi).
        <br>
      </blockquote>
      <br>
      <br>
      Because it uses symbolic calculus. So, if you want more precision
      with Scilab you should change the standard used, but maybe some
      tricks in your code can solve the problem... Or maybe you need
      symbolic calculus tool.
      <br>
      <br>
      --Jean-Yves
      <br>
      _______________________________________________
      <br>
      users mailing list
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:users@lists.scilab.org">users@lists.scilab.org</a>
      <br>
<a class="moz-txt-link-freetext" href="https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users">https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users</a>
      <br>
    </blockquote>
    <pre class="moz-signature" cols="72">-- 
Stéphane Mottelet
Ingénieur de recherche
EA 4297 Transformations Intégrées de la Matière Renouvelable
Département Génie des Procédés Industriels
Sorbonne Universités - Université de Technologie de Compiègne
CS 60319, 60203 Compiègne cedex
Tel : +33(0)344234688
<a class="moz-txt-link-freetext" href="http://www.utc.fr/~mottelet">http://www.utc.fr/~mottelet</a>
</pre>
  </body>
</html>