☜ | ## $%SIN## M[UMPS] by Example | ☞ |

2-Jul–96, 6:54:35 Routine Save for Trigonometry Library function $%SIN^MATH ; ; Unless otherwise noted, the code below ; was approved in document X11/95–12 ; ; If corrections have been applied, ; first the original line appears, ; with three semicolons at the beginning of the line. ; ; Then the source of the correction is acknowledged, ; then the corrected line appears, followed by a ; line containing three semicolons. ; SIN(X,PREC) ; New L,LIM,K,SIGN,VALUE ; ;;; Set:X[":" X=$%DMSDEC^MATH(X,12) ; Winfried Gerum (8 June 1995) ; Comment: The official description does not mention than ; the function may also be called with the first ; parameter in degrees, minutes and seconds. Set:X[":" X=$%DMSDEC^MATH(X) ;;; ; Set PREC=$Get(PREC,11) Set X=X#(2*$%PI^MATH()) Set (VALUE,L)=X,SIGN=–1 Set LIM=$Select((PREC+3)'>11:PREC+3,1:11),@("LIM=1E-"_LIM) For K=3:2 Do Quit:($Translate(L,"-")<LIM) Set SIGN=SIGN*–1 . Set L=L/(K–1)*X/K*X,VALUE=VALUE+(SIGN*L) . Quit Quit VALUE ;=== ; ; SIN(X) ; ; Winfried Gerum (8 June 1995) ; Comment: This version of the function is ; optimized for speed, not for precision. ; The 'precision' parameter is not supported, ; and the precision is at best 1 in 10**–9. ; Note that this function does not accept its ; parameter in degrees, minutes and seconds. ; Quit $%COS^MATH(–$%PI^MATH()/2+X) ;=== ; ; ;

Copyright © Standard Documents; 1977-2022 MUMPS Development Committee;

Copyright © Examples: 1995-2022 Ed de Moel;

Copyright © Annotations: 2003-2008 Jacquard Systems Research

Copyright © Annotations: 2008-2022 Ed de Moel.

*The information in this page is
NOT authoritative and subject to be modified
at any moment.Please consult the
appropriate (draft) language standard for an
authoritative definition.*

*Some specifications are "approved
for inclusion in a future standard". Note
that the MUMPS Development Committee cannot
guarantee that such future standards will
indeed be published.*

This page most recently updated on 30-Nov-2011, 20:07:44 .

For comments, contact Ed de Moel (demoel@jacquardsystems.com)