UNPKG

@stdlib/esm

Version:

ES module distribution for Stdlib, a standard library for JavaScript and Node.js.

3 lines 6.75 kB
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0 import r from"./gammaln.js";import t from"./floor.js";import o from"./gamma.js";import n from"./abs.js";import e from"./exp.js";import a from"./pow.js";import m from"./ln.js";import f from"./../../../constants/math/float64-sqrt-eps.js";import i from"./../../../constants/math/float64-max.js";import s from"./../../../constants/math/float64-sqrt-two-pi.js";import u from"./../../../constants/math/float64-max-ln.js";import c from"./../../../constants/math/float64-pinf.js";import p from"./erfc.js";import l from"./sqrt.js";import j from"./../../../constants/math/float64-pi.js";import v from"./../../../constants/math/float64-min-ln.js";import h from"./../tools/evalpoly.js";import g from"./../../../constants/math/float64-two-pi.js";import b from"./../tools/sum-series.js";import k from"./gamma-lanczos-sum-expg-scaled.js";import x from"./log1p.js";import w from"./max.js";import d from"./min.js";import q from"./../../../constants/math/float64-gamma-lanczos-g.js";import z from"./../../../constants/math/float64-e.js";import N from"./powm1.js";import V from"./gamma1pm1.js";import y from"./../tools/continued-fraction.js";var A=e;function B(r,t){var o,n,e;if(0!==(n=A(-t)))for(o=n,e=1;e<r;++e)o/=e,n+=o*=t;return n}var C=p,D=l,E=e,F=j;function G(r,t){var o,n,e,a;if(0!==(e=C(D(t)))&&r>1){for(o=E(-t)/D(F*t),o*=t,.5,n=o/=.5,a=2;a<r;++a)o/=a-.5,n+=o*=t;e+=n}return e}var H=e,I=a,J=m,K=u,L=v;function M(r,t){var o;return o=r*J(t),t>=1?o<K&&-t>L?I(t,r)*H(-t):r>=1?I(t/H(t/r),r):H(o-t):o>L?I(t,r)*H(-t):t/r<K?I(t/H(t/r),r):H(o-t)}function O(r){return 0===r?-.3333333333333333:r*(.08333333333333333+r*(r*(.0011574074074074073+r*(.0003527336860670194+r*(r*(3919263178522438e-20+r*(r*(r*(8.296711340953087e-7+r*(r*(6.707853543401498e-9+r*(1.0261809784240309e-8+r*(9.14769958223679e-10*r-4.382036018453353e-9)))-1.7665952736826078e-7))-185406221071516e-20)-21854485106799924e-22))-.0001787551440329218)))-.014814814814814815))-.3333333333333333}function P(r){return 0===r?-.001851851851851852:r*(r*(.0026455026455026454+r*(r*(.00020576131687242798+r*(r*(r*(764916091608111e-20+r*(r*(4.647127802807434e-9+r*(1.378633446915721e-7+r*(1.1951628599778148e-8*r-5.752545603517705e-8)))-16120900894563446e-22))-18098550334489977e-21)-4.018775720164609e-7))-.0009902263374485596))-.003472222222222222)-.001851851851851852}function Q(r){return 0===r?.004133597883597883:.004133597883597883+r*(r*(.0007716049382716049+r*(20093878600823047e-22+r*(r*(52923448829120125e-21+r*(r*(3.423578734096138e-8+r*(13721957309062932e-22+r*(1.4280614206064242e-7*r-6.298992138380055e-7)))-12760635188618728e-21))-.00010736653226365161)))-.0026813271604938273)}function R(r){return 0===r?.0006494341563786008:.0006494341563786008+r*(.00022947209362139917+r*(r*(.00026772063206283885+r*(r*(r*(11082654115347302e-21+r*(14230900732435883e-22*r-56749528269915965e-22))-2.396505113867297e-7)-7561801671883977e-20))-.0004691894943952557))}function S(r){return 0===r?-.0008618882909167117:r*(.0007840392217200666+r*(r*(r*(6641498215465122e-20+r*(11375726970678419e-21*r-3968365047179435e-20))-14638452578843418e-22)-.0002990724803031902))-.0008618882909167117}function T(r){return 0===r?-.00033679855336635813:r*(r*(.0002772753244959392+r*(r*(6797780477937208e-20+r*(1.419062920643967e-7+r*(r*(8018470256334202e-21+-2291481176508095e-21*r)-13594048189768693e-21)))-.00019932570516188847))-6972813758365858e-20)-.00033679855336635813}function U(r){return 0===r?.0005313079364639922:.0005313079364639922+r*(r*(.0002708782096718045+r*(7.902353232660328e-7+r*(r*(561168275310625e-19+-18329116582843375e-21*r)-8153969367561969e-20)))-.0005921664373536939)}function W(r){return 0===r?.00034436760689237765:.00034436760689237765+r*(5171790908260592e-20+r*(r*(.0002812695154763237+-.00010976582244684731*r)-.00033493161081142234))}function X(r){return 0===r?-.0006526239185953094:r*(.0008394987206720873+-.000438297098541721*r)-.0006526239185953094}var Y=h,Z=p,$=l,_=e,rr=m,tr=g,or=O,nr=P,er=Q,ar=R,mr=S,fr=T,ir=U,sr=W,ur=X,cr=[0,0,0,0,0,0,0,0,0,0];function pr(r,t){var o,n,e,a,m;return a=r*(e=-rr(1+(n=(t-r)/r))+n),m=$(2*e),t<r&&(m=-m),cr[0]=or(m),cr[1]=nr(m),cr[2]=er(m),cr[3]=ar(m),cr[4]=mr(m),cr[5]=fr(m),cr[6]=ir(m),cr[7]=sr(m),cr[8]=ur(m),cr[9]=-.0005967612901927463,o=Y(cr,1/r),o*=_(-a)/$(tr*r),t<r&&(o=-o),o+=Z($(a))/2}function lr(r,t){var o=1,n=r,e=t;return function(){var r=o;return o*=e/(n+=1),r}}var jr=b,vr=lr;function hr(r,t,o){var n;return o=o||0,n=vr(r,t),jr(n,{initialValue:o})}var gr=k,br=r,kr=o,xr=x,wr=l,dr=n,qr=e,zr=a,Nr=w,Vr=d,yr=m,Ar=u,Br=v,Cr=q,Dr=z;function Er(r,t){var o,n,e,a,m,f,i;return i=(t-r-Cr+.5)/(e=r+Cr-.5),r<1?t<=Br?qr(r*yr(t)-t-br(r)):zr(t,r)*qr(-t)/kr(r):(dr(i*i*r)<=100&&r>150?(o=r*(xr(i)-i)+t*(.5-Cr)/e,o=qr(o)):(a=r*yr(t/e),Vr(a,m=r-t)<=Br||Nr(a,m)>=Ar?(n=m/r,Vr(a,m)/2>Br&&Nr(a,m)/2<Ar?o=(f=zr(t/e,r/2)*qr(m/2))*f:Vr(a,m)/4>Br&&Nr(a,m)/4<Ar&&t>r?(o=(f=zr(t/e,r/4)*qr(m/4))*f,o*=o):o=n>Br&&n<Ar?zr(t*qr(n)/e,r):qr(a+m)):o=zr(t/e,r)*qr(m)),o*=wr(e/Dr)/gr(r))}function Fr(r,t){var o,n,e,a;return o=-t,t=-t,n=r+1,e=1,function(){return a=o/n,o*=t,o/=e+=1,n+=1,a}}var Gr=N,Hr=b,Ir=V,Jr=Fr;function Kr(r,t,o){var n,e,a,m;return e=((n=Ir(r))+1)/r,n-=a=Gr(t,r),n/=r,m=Jr(r,t),n=-(a+=1)*Hr(m,{initialValue:((o?e:0)-n)/a}),o&&(n=-n),[n,e]}function Lr(r,t){var o=t-r+1,n=r,e=0;return function(){return[(e+=1)*(n-e),o+=2]}}var Mr=y,Or=Lr;function Pr(r,t){var o=Or(r,t);return 1/(t-r+1+Mr(o))}var Qr=r,Rr=t,Sr=o,Tr=n,Ur=e,Wr=a,Xr=m,Yr=f,Zr=i,$r=s,_r=u,rt=c,tt=B,ot=G,nt=M,et=pr,at=hr,mt=Er,ft=Kr,it=Pr,st=170;function ut(r,t,o,n){var e,a,m,f,i,s,u,c,p,l,j,v,h;if(r<0||t<=0)return NaN;if(a=void 0===o||o,u=n,c=0,t>=st&&!a)return u&&4*t<r?(c=t*Xr(r)-r,c+=Xr(it(t,r))):!u&&t>4*r?(c=t*Xr(r)-r,c+=Xr(at(t,r,f=0)/t)):0===(c=ut(t,r,!0,u))?u?(c=Xr(c=1+1/(12*t)+1/(288*t*t))-t+(t-.5)*Xr(t),c+=Xr($r)):(c=t*Xr(r)-r,c+=Xr(at(t,r,f=0)/t)):c=Xr(c)+Qr(t),c>_r?rt:Ur(c);switch(t<30&&t<=r+1&&r<_r?i=!(p=(v=Rr(t))===t)&&.5===Tr(v-t):p=i=!1,p&&r>.6?(u=!u,m=0):i&&r>.2?(u=!u,m=1):r<Yr&&t>1?m=6:r<.5?m=-.4/Xr(r)<t?2:3:r<1.1?m=.75*r<t?2:3:(s=!1,a&&t>20&&(l=Tr((r-t)/t),t>200?20/t>l*l&&(s=!0):l<.4&&(s=!0)),s?m=5:r-1/(3*r)<t?m=2:(m=4,u=!u)),m){case 0:c=tt(t,r),!1===a&&(c*=Sr(t));break;case 1:c=ot(t,r),!1===a&&(c*=Sr(t));break;case 2:0!==(c=a?mt(t,r):nt(t,r))&&(f=0,e=!1,u&&(f=a?1:Sr(t),a||c>=1||Zr*c>f?(f/=c,a||t<1||Zr/t>f?(f*=-t,e=!0):f=0):f=0)),c*=at(t,r,f)/t,e&&(u=!1,c=-c);break;case 3:c=(j=ft(t,r,u=!u))[0],h=j[1],u=!1,a&&(c/=h);break;case 4:0!==(c=a?mt(t,r):nt(t,r))&&(c*=it(t,r));break;case 5:c=et(t,r),r>=t&&(u=!u);break;case 6:c=a?Wr(r,t)/Sr(t+1):Wr(r,t)/t,c*=1-t*r/(t+1)}return a&&c>1&&(c=1),u&&(c=(a?1:Sr(t))-c),c}var ct=ut;export default ct; //# sourceMappingURL=gammainc.js.map