flo.avm 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. #
  2. # This module contains some floating point functions and constants.
  3. #
  4. # Copyright (C) 2007-2010 Dennis Furey
  5. #
  6. # N (206)
  7. # Q (207)
  8. # Z (310)
  9. # abs (62)
  10. # acos (65)
  11. # ari (1389)
  12. # asin (65)
  13. # atan (63)
  14. # atanh (71)
  15. # bus (58)
  16. # correlation (2857)
  17. # cos (59)
  18. # covariance (1356)
  19. # cu_prod (172)
  20. # cu_sum (168)
  21. # derivative (131)
  22. # div (59)
  23. # eps (61)
  24. # eudist (372)
  25. # exp (58)
  26. # fleq (121)
  27. # float (342)
  28. # floatz (582)
  29. # geo (1530)
  30. # inf (58)
  31. # integral (138)
  32. # iprod (212)
  33. # levin_limit (271)
  34. # levin_sum (104)
  35. # ln (58)
  36. # max (129)
  37. # mean (581)
  38. # min (129)
  39. # minus (58)
  40. # nan (57)
  41. # negative (122)
  42. # ninf (58)
  43. # nth_deriv (1082)
  44. # nth_diff (950)
  45. # oprod (564)
  46. # pi (61)
  47. # plus (57)
  48. # pow (58)
  49. # printf (93)
  50. # rand (105)
  51. # root_finder (1004)
  52. # sgn (376)
  53. # sin (59)
  54. # sqr (65)
  55. # sqrt (66)
  56. # stdev (1372)
  57. # strtod (82)
  58. # tan (57)
  59. # tanh (65)
  60. # times (59)
  61. # variance (1304)
  62. # vid (59)
  63. # zeroid (79)
  64. #
  65. # compressed with granularity 99
  66. #
  67. #
  68. # This program is free software; you can redistribute it and/or modify
  69. # it under the terms of the GNU General Public License as published by
  70. # the Free Software Foundation; version 3.
  71. #
  72. # This program is distributed in the hope that it will be useful,
  73. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  74. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  75. # GNU General Public License for more details.
  76. #
  77. # You should have received a copy of the GNU General Public License
  78. # along with this program; if not, write to the Free Software Foundation,
  79. # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  80. #
  81. {kvWZtwzzxb{kzaJEIv[cvowhsfCxAww{kggzbAwav[Ez[ujvvWZ\clJ[JZFAx?vtjzkjHsfMT@AkyO
  82. Uzm{Kfzw^{Kfkzgbekzdn?=xLap{zgfjjgj[z_FGZ\`BF[cnf`mveUcuxBgrgfvggf[cvywkvDF]y]t
  83. z\TLNNd[<ZBgfvkfwfvjfCoCvxfvozz\lA]=_N]ko<RU]fpdVjBgdVkfxlA]]ZeXgGGKKYvbVH>^<Hb
  84. TBBfnBg]fvBg]fxbTEzgyEgGaHrxsfF\><^d=gFBg=gnBg=fx^fMzhY^pdeghiGzsf<d<VRBfBldVdV
  85. yD>t[g\q[bHztphbkJrfdVdV]z]fBl^<T[gh`jzg@jkHnuEgoKfdP]dA^B]z\Mzet`iCHg>vkMHzjNV
  86. wsfddT^B=ThcnuDgrPgfkfuPkzKw`bj{vgD><^==vzPrcgF{ftVjOEz[K{oztaSk{fhdd@kzNC[zNgj
  87. Bg]f{F]xUv[cmW{xztCs{k{fffFcuxj=z[Jfgg]ftVyoH=THN]xUwF[cmW{i`Zdz[Gz{zfnffCnCovC
  88. nCgnvjg]glWBmFU]h=THQF]xUwV[cwPlTIZmVjSGz{zfnfh=Y=O{lAp@gn]fzg]hD[op^fEbC\lA\mQ
  89. N]y]yj=aNZ>RgevjSgx{rffdebFez[BTjgf]ftVjCt@>PN<DfcEbCch=TNRiTLXkdVk\Rgexgcwz[vf
  90. ffF^fClC^d]fvdVhBg\R=Nd<Z^fXKEbBLqTDk<=ftDVkhSfxBjuyc{vgFf<o<RU\DVkFBfBg>OG_d<Z
  91. AdfBgPS^BkTVj<E=ftmMZ={csc{fhfeEb=\ViFBdVevkujVz\>btDJBm\BkVBg\BK^[z=U{cc{ffff^
  92. d=fn]dVyDkzBKcer_ITlCfBm\=gnJJT[azTCsczZ[zfnfn<BpdTVvFcuy{{ez?RwQ>=@CLBmoBlD[Ex
  93. ?>S{\[Z[uu{vgFgD[F<WxF]x]{zez[XoH^iBt>A=x?Eh=T=tFUz[t[{\SZ[uuyvfffdFf<x^lAp@[cq
  94. D[DZYFLnu{TLA<_BTbRD[<[<mCu{c{tA{cr[{VgFgDFiNebF]y]vlApA\<>iSEQmO^e^@=Ta\d[<[>=
  95. Cu{cszE{czz[vgFgHiNfF_<R@C=bGvfqPkM<d<=bex=ZC^]x=XDAcuzL[zEZX[U{Zfnfnf>>\Eb_>d{
  96. xhjEQT<Fa\BTHS<Sc^VClAw]z[FSu^Su{{sfhfhnv\f<<cuxfE[rP<\F\\U^=VlAux<]xEuU[{f[zEZ
  97. [s{{fpfhfnd<]y]veP[aR<TfD<U^=X=U=dU{{bET[cnatcyE{[q{fhfhf^h=TLXebCRC<=^dbUj<@Sc
  98. uy\\]xEUUzlKp>[pczZ[ZgFvgFFUdfszGTt<V^d>cvCmczLAfV\Atm{g<{LU{Uyc{rfnfhrfF\Fq{{I
  99. Ll<<DAx=THSzUa\UzPAsTmyd@SqB[u{scrgP^i>f\GV[cszG_j[BTUz[>f<H[eahJRCyj[j\m[uCuey
  100. c{fnff^fmN]x=uz[CUlGA^fD[DZ<<=X<bvv@Blt?A{NB[co={`M[a{{vdnfnfj@=Ub]x]uq_\E<@=Y=
  101. ExWvjFJjB[c\^Cmc^Uyzu{vSA{y{fngnfiMb=lApA_P[EbG^V=QVjOvj\AzPLA\m<H[{xM=z[>ZauZo
  102. y[ZiFgNfr>dBTkg\ptfDE?JBg]QVjUyzBTTTMz[a\]xMVM^SEZZ[Uy[iff^ffh\>d{{Sd<<^edVjo]f
  103. thS{nFdB]y]xy<RugFc^SxvCr[u{[FiFiFgN<cuyIPt=b]gnb]ftBUz[l<?<R@amubM<<l@eyjj@QOA
  104. yc{sZpiJiFg<D[BZRMOZTW>UdVh]D[^[\U]a]lf<w<Rovjf\E[PmzSk{zFhfgFnp=THMjMIx]{ZTVdb
  105. AvMZF]wZ<>Jaa[fuYuzt@An[m[{CyfgIfnfmbBZr?{`=UIx]f<cleZ<EwS<DZypBgeD>M{rUVMZEzYA
  106. uv{phhfnddFe_OF[clD?{`Beccam`^A]oIoTVjJFAmq<bj[eAzHauxs{vfnOiFd=tON]x]tcux=dHL?
  107. czL{``k?lVibB[_hTDmZj[{F{vCd[zk{NnnfNg{c=<SLN]x=t<D<A{`Yz`l\JBfV<=Zqd<Dz>HS{uJ[
  108. ap=>CmxkcSneDn`f[coUbFLAbTcuy\q{t\JBjW{zRX[<Dz[cl<]xac@Z]xCzIs]Dfff]y]xzF^U\V]x
  109. ]znCuxv^BzV[cxppA]{AvClClAfX>=O@D[{{{Zf_Nh=TLYKL>F\lAp@ZFCrCg\={zFCxcmuD]=]E{<R
  110. UbWD><oAs{=a{{yxfffUdryL<BTjNLA]=ftCuytTS\=xnDdgCmb=^dc\Euz[REzXa{[yvfpfF]{JFF_
  111. uBVJgd[@S{\cn@P=>>C^d<<=lVCrCsuCzLauU[S{zfff\ZS_E\Kz>d=fx=Wb[anmU\@m<<u<R@B[tFC
  112. {kc{nSpSyu{xgPfyEzoD[cl<VjU`L]xadEL=\BVEZ[\=[{t>d{e[cwezR[uu{wfffyR=Z>FCrC]flf@
  113. =VbZ>F]cxAz[Cuxt@[pK<F_uQ=Xy=YuyccS^gQgJFB[]<R@BBf<Uh\><<]xEXGAd[TZkB[e_\M{^UXR
  114. E{{=[czYqnfffHbHAub^BdfDLAvR=c<R@Bgd@SAAMcq<Ewo=cuxE{xA{_z{neLfoDuzF\B\=bAb]BVJ
  115. g_cuV?AwCvZjD[<[L[cmc{zBSs{tffdD\<O\=^f>>F\Bg\HQq\EPdCjC<@=UbnCpA\mX[czUxCscsfp
  116. h?z<=<<VjCQq?^UgIub=]<RE\ad[<[z<AtZ[U{yfpfdS\Vh_cKacx]QXF\UpZP=ZC{zb>A]{crz[vgF
  117. FctVertQqSzeb]T<fl>bTLSau{bDHS{]uu{c{viFI=JBiQiTJt[cqIlx<<>ecz[nS\B>[clNR=]yu{u
  118. {vgFG{]jILy?Qd[TZL?mT<HS<]x>S=d[TZCtNS{tSczZ[zgO<FAtYw_rkQlA]=\rx>S<SeTLA\m={]`
  119. [ctUy][uYccyfndeJ?PpmQepybVIzczMbAbU\cuxB]y]xEc]a{{czSuu{ph_KyhH>qDzqpF\ZItZ<df
  120. \\gd[DZH=TNR<M?amz[^=[z[ZSu{zgND]ZPdRtCvUR\?EqIb<=<=<SLLU]`tBR]y]ZEzS>=[{c{a{cS
  121. QG?czCnRIJqaS@jON=bFF]^>c<RBSvCrZEcuZGCs{cuYc{f`d<SP[_QdyUR?`s@`F^<DMbTuX@=T\Rf
  122. Cr[<DZ[cn<Su{_scqQ>[bCDTtqAuOJdtl>D>dBRU^<LA^=XMd[DZUz_C{mf[cyFvCKuAPcIQtWl?@<<
  123. e^jU^Tu<SLLH[\B[ao`C{awOP<P{{i`VwaQn_k`T<>jd=bF<AlD[UwtM[{u[XODCu[{u{oorwQlHWf<
  124. <<F^clAdmczuX[ctE[ZF^CzKcuxuqE[DaQqJxJFv<JEbT=auz<cd[H[nSlnnTS_CvCnCguYGNUjQcqH
  125. B\p<E>dU{E[HX=TTci_uoF>[@E{<SLNkwpAaJqeSqcTlt\<]x>SDBU\Cl_AyuHbZeAubGf{{cWlIASu
  126. QeS`\rLAvR<F`R@cwGmDHLFS^d]fuz[KatJDiOSaSaSOPU]U\JNHSxy@<cal>Bgd[LS[vy[=j=QWWSa
  127. Q<lf\\><cqUwl<utBgLA^Zo{zyP_OPU=i]QWZF<QbZ{oIh<==fbY=gz[coo^vRyr\qbLW[RD<MKWQFC
  128. nBlfl=Xz]xUvtnTcMUqOIIdIWeDv[Jt<cnC\<=F{<R?@gho[aLwf?AOIGxD=b{ExoF>\]HU]vj>D{Pt
  129. Hp`jdH?nCc@pQSPl?VFdBg\xleWbBiEGP{zZPwr<MM<<VkKkIMqWBCQF[a{ofIkPiTVxIXrE\zPiW<\
  130. ]xcs{LtPmwh>=hFmUNN[R=aIlA\Ccux<oeba>=zFrO<qYo]nU^VCrChP[Q\=UwNEdYSAzDfU<R@BR[z
  131. y>OJNJAkMRy<<BVGMz[CneMhQGoRKOq>d>d[B[_qDN<M?bPq`td@lA\mZj<g\qFULnTbT[zg\NzGNhn
  132. >fCuyfyCPJF>D<]x=tVk<va>@=UbBguxfBTBBgZIADf<Vgqd@<BoqJ<[JGN>_E`<oJ>H]P[kOqO^_Eh
  133. n>D<