c..function fermi4 is a series and spline fit for the order 4 integral c..function fermi5 is a series and spline fit for the order 5 integral double precision function fermi4(x) include 'implno.dek' include 'const.dek' c.. c..this routine applies series expansions and spline fits to get the c..fermi-dirac integral of order 4 evaluated at x. c.. c..declare integer i,ifirst,ifd parameter (ifd=423) double precision x,y,z,alfax(ifd),fxa(ifd),fcof(ifd),con1,con2, 1 yp1,ypn parameter (con1 = 2.0d0*pi*pi/3.0d0, 1 con2 = 7.0d0*pi*pi*pi*pi/15.0d0) data ifirst/0/ c.. c..this table of f_(4) was computed from cloutman's program and checked c..with a gaussian quadrature summation. the corresponding values of alpha c..are given below. data (fxa(i), i= 1, 45)/ 1 2.409461902092D+05, 2.373931209670D+05, 2.338825910615D+05, 2 2.304142127560D+05, 2.269876007064D+05, 2.236023719535D+05, 3 2.202581459156D+05, 2.169545443810D+05, 2.136911915005D+05, 4 2.104677137801D+05, 2.072837400729D+05, 2.041389015723D+05, 5 2.010328318042D+05, 1.979651666194D+05, 1.949355441861D+05, 6 1.919436049828D+05, 1.889889917902D+05, 1.860713496841D+05, 7 1.831903260280D+05, 1.803455704650D+05, 1.775367349111D+05, 8 1.747634735470D+05, 1.720254428111D+05, 1.693223013918D+05, 9 1.666537102197D+05, 1.640193324608D+05, 1.614188335084D+05, & 1.588518809757D+05, 1.563181446887D+05, 1.538172966781D+05, 1 1.513490111723D+05, 1.489129645896D+05, 1.465088355308D+05, 2 1.441363047718D+05, 1.417950552558D+05, 1.394847720862D+05, 3 1.372051425188D+05, 1.349558559545D+05, 1.327366039316D+05, 4 1.305470801183D+05, 1.283869803055D+05, 1.262560023991D+05, 5 1.241538464124D+05, 1.220802144586D+05, 1.200348107437D+05/ data (fxa(i), i= 46, 90)/ 1 1.180173415584D+05, 1.160275152710D+05, 1.140650423200D+05, 2 1.121296352061D+05, 1.102210084851D+05, 1.083388787604D+05, 3 1.064829646753D+05, 1.046529869056D+05, 1.028486681522D+05, 4 1.010697331334D+05, 9.931590857745D+04, 9.758692321526D+04, 5 9.588250777263D+04, 9.420239496289D+04, 9.254631947937D+04, 6 9.091401798791D+04, 8.930522911932D+04, 8.771969346194D+04, 7 8.615715355409D+04, 8.461735387662D+04, 8.310004084534D+04, 8 8.160496280359D+04, 8.013187001470D+04, 7.868051465450D+04, 9 7.725065080383D+04, 7.584203444102D+04, 7.445442343439D+04, & 7.308757753479D+04, 7.174125836804D+04, 7.041522942749D+04, 1 6.910925606647D+04, 6.782310549081D+04, 6.655654675136D+04, 2 6.530935073644D+04, 6.408129016440D+04, 6.287213957607D+04, 3 6.168167532731D+04, 6.050967558143D+04, 5.935592030180D+04, 4 5.822019124425D+04, 5.710227194962D+04, 5.600194773627D+04, 5 5.491900569253D+04, 5.385323466925D+04, 5.280442527228D+04/ data (fxa(i), i= 91,135)/ 1 5.177236985497D+04, 5.075686251068D+04, 4.975769906524D+04, 2 4.877467706953D+04, 4.780759579189D+04, 4.685625621071D+04, 3 4.592046100679D+04, 4.500001455602D+04, 4.409472292176D+04, 4 4.320439384739D+04, 4.232883674875D+04, 4.146786270674D+04, 5 4.062128445971D+04, 3.978891639604D+04, 3.897057454660D+04, 6 3.816607657729D+04, 3.737524178147D+04, 3.659789107254D+04, 7 3.583384697638D+04, 3.508293362389D+04, 3.434497674346D+04, 8 3.361980365349D+04, 3.290724325489D+04, 3.220712602356D+04, 9 3.151928400291D+04, 3.084355079637D+04, 3.017976155984D+04, & 2.952775299427D+04, 2.888736333807D+04, 2.825843235969D+04, 1 2.764080135007D+04, 2.703431311516D+04, 2.643881196841D+04, 2 2.585414372329D+04, 2.528015568577D+04, 2.471669664682D+04, 3 2.416361687493D+04, 2.362076810859D+04, 2.308800354881D+04, 4 2.256517785159D+04, 2.205214712046D+04, 2.154876889895D+04, 5 2.105490216310D+04, 2.057040731396D+04, 2.009514617010D+04/ data (fxa(i), i=136,180)/ 1 1.962898196010D+04, 1.917177931504D+04, 1.872340426103D+04, 2 1.828372421169D+04, 1.785260796065D+04, 1.742992567407D+04, 3 1.701554888310D+04, 1.660935047643D+04, 1.621120469277D+04, 4 1.582098711334D+04, 1.543857465437D+04, 1.506384555964D+04, 5 1.469667939293D+04, 1.433695703054D+04, 1.398456065382D+04, 6 1.363937374163D+04, 1.330128106286D+04, 1.297016866892D+04, 7 1.264592388626D+04, 1.232843530887D+04, 1.201759279075D+04, 8 1.171328743847D+04, 1.141541160360D+04, 1.112385887527D+04, 9 1.083852407266D+04, 1.055930323747D+04, 1.028609362645D+04, & 1.001879370392D+04, 9.757303134227D+03, 9.501522774280D+03, 1 9.251354666042D+03, 9.006702029035D+03, 8.767469252843D+03, 2 8.533561889614D+03, 8.304886646563D+03, 8.081351378478D+03, 3 7.862865080222D+03, 7.649337879235D+03, 7.440681028042D+03, 4 7.236806896755D+03, 7.037628965577D+03, 6.843061817308D+03, 5 6.653021129848D+03, 6.467423668705D+03, 6.286187279500D+03/ data (fxa(i), i=181,225)/ 1 6.109230880468D+03, 5.936474454971D+03, 5.767839044000D+03, 2 5.603246738683D+03, 5.442620672793D+03, 5.285885015250D+03, 3 5.132964962639D+03, 4.983786731706D+03, 4.838277551877D+03, 4 4.696365657761D+03, 4.557980281660D+03, 4.423051646082D+03, 5 4.291510956248D+03, 4.163290392606D+03, 4.038323103338D+03, 6 3.916543196879D+03, 3.797885734423D+03, 3.682286722441D+03, 7 3.569683105192D+03, 3.460012757240D+03, 3.353214475968D+03, 8 3.249227974098D+03, 3.147993872201D+03, 3.049453691224D+03, 9 2.953549845001D+03, 2.860225632778D+03, 2.769425231732D+03, & 2.681093689496D+03, 2.595176916676D+03, 2.511621679382D+03, 1 2.430375591750D+03, 2.351387108470D+03, 2.274605517314D+03, 2 2.199980931667D+03, 2.127464283055D+03, 2.057007313684D+03, 3 1.988562568967D+03, 1.922083390066D+03, 1.857523906430D+03, 4 1.794839028329D+03, 1.733984439406D+03, 1.674916589212D+03, 5 1.617592685759D+03, 1.561970688066D+03, 1.508009298712D+03/ data (fxa(i), i=226,270)/ 1 1.455667956387D+03, 1.404906828455D+03, 1.355686803506D+03, 2 1.307969483925D+03, 1.261717178454D+03, 1.216892894766D+03, 3 1.173460332032D+03, 1.131383873502D+03, 1.090628579082D+03, 4 1.051160177922D+03, 1.012945061003D+03, 9.759502737298D+02, 5 9.401435085303D+02, 9.054930974574D+02, 8.719680047973D+02, 6 8.395378196839D+02, 8.081727487172D+02, 7.778436085894D+02, 7 7.485218187161D+02, 7.201793938749D+02, 6.927889368506D+02, 8 6.663236310876D+02, 6.407572333506D+02, 6.160640663921D+02, 9 5.922190116298D+02, 5.691975018317D+02, 5.469755138110D+02, & 5.255295611306D+02, 5.048366868176D+02, 4.848744560890D+02, 1 4.656209490879D+02, 4.470547536319D+02, 4.291549579736D+02, 2 4.119011435742D+02, 3.952733778900D+02, 3.792522071739D+02, 3 3.638186492908D+02, 3.489541865493D+02, 3.346407585486D+02, 4 3.208607550436D+02, 3.075970088263D+02, 2.948327886273D+02, 5 2.825517920353D+02, 2.707381384377D+02, 2.593763619820D+02/ data (fxa(i), i=271,315)/ 1 2.484514045600D+02, 2.379486088137D+02, 2.278537111672D+02, 2 2.181528348822D+02, 2.088324831409D+02, 1.998795321555D+02, 3 1.912812243069D+02, 1.830251613132D+02, 1.750992974287D+02, 4 1.674919326758D+02, 1.601917061105D+02, 1.531875891228D+02, 5 1.464688787736D+02, 1.400251911696D+02, 1.338464548774D+02, 6 1.279229043787D+02, 1.222450735680D+02, 1.168037892940D+02, 7 1.115901649467D+02, 1.065955940923D+02, 1.018117441568D+02, 8 9.723055015974D+01, 9.284420850135D+01, 8.864517080310D+01, 9 8.462613780455D+01, 8.078005331777D+01, 7.710009824135D+01, & 7.357968463567D+01, 7.021244986126D+01, 6.699225078218D+01, 1 6.391315803596D+01, 6.096945037217D+01, 5.815560906112D+01, 2 5.546631237467D+01, 5.289643014074D+01, 5.044101837314D+01, 3 4.809531397856D+01, 4.585472954215D+01, 4.371484819336D+01, 4 4.167141855337D+01, 3.972034976576D+01, 3.785770661159D+01, 5 3.607970471030D+01, 3.438270580757D+01, 3.276321315127D+01/ data (fxa(i), i=316,360)/ 1 3.121786695657D+01, 2.974343996112D+01, 2.833683307115D+01, 2 2.699507109917D+01, 2.571529859399D+01, 2.449477576351D+01, 3 2.333087449073D+01, 2.222107444318D+01, 2.116295927613D+01, 4 2.015421292939D+01, 1.919261601784D+01, 1.827604231548D+01, 5 1.740245533259D+01, 1.656990498575D+01, 1.577652436011D+01, 6 1.502052656330D+01, 1.430020167023D+01, 1.361391375804D+01, 7 1.296009803009D+01, 1.233725802811D+01, 1.174396293133D+01, 8 1.117884494135D+01, 1.064059675154D+01, 1.012796909954D+01, 9 9.639768401463D+00, 9.174854466284D+00, 8.732138288906D+00, & 8.310579920262D+00, 7.909186412825D+00, 7.527009839842D+00, 1 7.163145386570D+00, 6.816729511766D+00, 6.486938177680D+00, 2 6.172985146738D+00, 5.874120343157D+00, 5.589628277656D+00, 3 5.318826533483D+00, 5.061064311950D+00, 4.815721035683D+00, 4 4.582205007805D+00, 4.359952125284D+00, 4.148424644704D+00, 5 3.947109998713D+00, 3.755519661468D+00, 3.573188061375D+00/ data (fxa(i), i=361,405)/ 1 3.399671539489D+00, 3.234547351955D+00, 3.077412714894D+00, 2 2.927883890191D+00, 2.785595310663D+00, 2.650198743134D+00, 3 2.521362487956D+00, 2.398770613594D+00, 2.282122224888D+00, 4 2.171130763673D+00, 2.065523340471D+00, 1.965040095991D+00, 5 1.869433591243D+00, 1.778468225078D+00, 1.691919678030D+00, 6 1.609574381361D+00, 1.531229010246D+00, 1.456690000082D+00, 7 1.385773084935D+00, 1.318302857174D+00, 1.254112347374D+00, 8 1.193042623617D+00, 1.134942409337D+00, 1.079667718892D+00, 9 1.027081510095D+00, 9.770533529286D-01, 9.294591137506D-01, & 8.841806542689D-01, 8.411055446439D-01, 8.001267900692D-01, 1 7.611425702242D-01, 7.240559910124D-01, 6.887748480254D-01, 2 6.552114011964D-01, 6.232821601281D-01, 5.929076796058D-01, 3 5.640123648231D-01, 5.365242858725D-01, 5.103750010692D-01, 4 4.854993886988D-01, 4.618354867952D-01, 4.393243405727D-01, 5 4.179098571555D-01, 3.975386672613D-01, 3.781599935117D-01/ data (fxa(i), i=406,423)/ 1 3.597255250575D-01, 3.421892982224D-01, 3.255075828777D-01, 2 3.096387742804D-01, 2.945432901124D-01, 2.801834724766D-01, 3 2.665234946125D-01, 2.535292721076D-01, 2.411683783906D-01, 4 2.294099643011D-01, 2.182246815426D-01, 2.075846098316D-01, 5 1.974631875678D-01, 1.878351458551D-01, 1.786764457134D-01, 6 1.699642183288D-01, 1.616767081951D-01, 1.537932190085D-01/ c..initialize the spline fits if (ifirst .eq. 0) then ifirst = 1 do i=1,ifd alfax(i) = -16.05d0 + float(i-1)*(0.05d0) enddo yp1 = 10.0d0*(-3.0d0*fxa(1) + 4.0d0*fxa(2) - fxa(3)) ypn = 10.0d0*(fxa(ifd-2) - 4.0d0*fxa(ifd-1) + 3.0d0*fxa(ifd)) call spline(alfax,fxa,ifd,yp1,ypn,fcof) end if c..very non degenerate, two term expansion; cox and giuli 24.47 if (x .lt. -5.0d0) then z = exp(x) fermi4 = 24.0d0 * z * (1.0d0 - 3.125d-2 * z) c..partially degenerate; spline interpolate in alpha space; a good table guess else if (x .ge. -5.0d0 .and. x .le. 16.0d0) then y = -x i = (y + 16.05d0)*20.0d0 call splinth(alfax,fxa,fcof,ifd,y,z,i) fermi4 = z c..very degenerate, three term expansion; cox and giuli 24.38 and 24.39 else if (x .gt. 16.0d0) then z = x * x fermi4 = x * (0.2d0*z*z + con1*z + con2) end if return end double precision function fermi5(x) include 'implno.dek' include 'const.dek' c.. c..this routine applies series expansions and spline fits to get the c..fermi-dirac integral of order 5 evaluated at x. c.. c..declare integer i,ifirst,ifd parameter (ifd=423) double precision x,y,z,alfax(ifd),fxa(ifd),fcof(ifd),con1,con2, 1 con3,con4,yp1,ypn parameter (con1 = 1.0d0/6.0d0, 1 con2 = 5.0d0*pi*pi/6.0d0, 2 con3 = 7.0d0*pi*pi*pi*pi/6.0d0, 3 con4 = 31.0d0*pi*pi*pi*pi*pi*pi/126.0d0) data ifirst/0/ c.. c..this table of f_(5) was computed from cloutman's program and checked c..with a gaussian quadrature summation. the corresponding values of alpha c..are given below. data (fxa(i), i= 1, 45)/ 1 3.424335566068D+06, 3.364544042462D+06, 3.305635460647D+06, 2 3.247599234305D+06, 3.190424873754D+06, 3.134101985350D+06, 3 3.078620270891D+06, 3.023969527024D+06, 2.970139644653D+06, 4 2.917120608350D+06, 2.864902495768D+06, 2.813475477053D+06, 5 2.762829814260D+06, 2.712955860775D+06, 2.663844060728D+06, 6 2.615484948419D+06, 2.567869147742D+06, 2.520987371607D+06, 7 2.474830421369D+06, 2.429389186258D+06, 2.384654642808D+06, 8 2.340617854293D+06, 2.297269970155D+06, 2.254602225450D+06, 9 2.212605940278D+06, 2.171272519229D+06, 2.130593450820D+06, & 2.090560306946D+06, 2.051164742318D+06, 2.012398493918D+06, 1 1.974253380443D+06, 1.936721301761D+06, 1.899794238361D+06, 2 1.863464250810D+06, 1.827723479211D+06, 1.792564142659D+06, 3 1.757978538707D+06, 1.723959042822D+06, 1.690498107857D+06, 4 1.657588263511D+06, 1.625222115803D+06, 1.593392346539D+06, 5 1.562091712783D+06, 1.531313046336D+06, 1.501049253206D+06/ data (fxa(i), i= 46, 90)/ 1 1.471293313092D+06, 1.442038278858D+06, 1.413277276018D+06, 2 1.385003502217D+06, 1.357210226721D+06, 1.329890789897D+06, 3 1.303038602710D+06, 1.276647146206D+06, 1.250709971011D+06, 4 1.225220696824D+06, 1.200173011911D+06, 1.175560672608D+06, 5 1.151377502816D+06, 1.127617393508D+06, 1.104274302230D+06, 6 1.081342252608D+06, 1.058815333856D+06, 1.036687700286D+06, 7 1.014953570818D+06, 9.936072284949D+05, 9.726430199976D+05, 8 9.520553551617D+05, 9.318387064968D+05, 9.119876087073D+05, 9 8.924966582157D+05, 8.733605126866D+05, 8.545738905540D+05, & 8.361315705491D+05, 8.180283912307D+05, 8.002592505180D+05, 1 7.828191052238D+05, 7.657029705911D+05, 7.489059198305D+05, 2 7.324230836602D+05, 7.162496498471D+05, 7.003808627510D+05, 3 6.848120228691D+05, 6.695384863838D+05, 6.545556647112D+05, 4 6.398590240527D+05, 6.254440849471D+05, 6.113064218260D+05, 5 5.974416625698D+05, 5.838454880662D+05, 5.705136317711D+05/ data (fxa(i), i= 91,135)/ 1 5.574418792700D+05, 5.446260678424D+05, 5.320620860278D+05, 2 5.197458731937D+05, 5.076734191047D+05, 4.958407634945D+05, 3 4.842439956393D+05, 4.728792539330D+05, 4.617427254645D+05, 4 4.508306455968D+05, 4.401392975475D+05, 4.296650119723D+05, 5 4.194041665492D+05, 4.093531855651D+05, 3.995085395045D+05, 6 3.898667446396D+05, 3.804243626226D+05, 3.711780000795D+05, 7 3.621243082064D+05, 3.532599823671D+05, 3.445817616928D+05, 8 3.360864286839D+05, 3.277708088129D+05, 3.196317701302D+05, 9 3.116662228712D+05, 3.038711190652D+05, 2.962434521465D+05, & 2.887802565670D+05, 2.814786074112D+05, 2.743356200124D+05, 1 2.673484495715D+05, 2.605142907770D+05, 2.538303774274D+05, 2 2.472939820551D+05, 2.409024155526D+05, 2.346530267998D+05, 3 2.285432022943D+05, 2.225703657826D+05, 2.167319778935D+05, 4 2.110255357737D+05, 2.054485727245D+05, 1.999986578416D+05, 5 1.946733956552D+05, 1.894704257734D+05, 1.843874225267D+05/ data (fxa(i), i=136,180)/ 1 1.794220946145D+05, 1.745721847535D+05, 1.698354693284D+05, 2 1.652097580432D+05, 1.606928935765D+05, 1.562827512363D+05, 3 1.519772386186D+05, 1.477742952665D+05, 1.436718923322D+05, 4 1.396680322401D+05, 1.357607483525D+05, 1.319481046362D+05, 5 1.282281953323D+05, 1.245991446263D+05, 1.210591063218D+05, 6 1.176062635143D+05, 1.142388282684D+05, 1.109550412960D+05, 7 1.077531716365D+05, 1.046315163393D+05, 1.015884001473D+05, 8 9.862217518351D+04, 9.573122063837D+04, 9.291394245957D+04, 9 9.016877304365D+04, 8.749417092933D+04, 8.488862049291D+04, & 8.235063164539D+04, 7.987873953153D+04, 7.747150423075D+04, 1 7.512751046001D+04, 7.284536727838D+04, 7.062370779365D+04, 2 6.846118887075D+04, 6.635649084201D+04, 6.430831721938D+04, 3 6.231539440843D+04, 6.037647142429D+04, 5.849031960943D+04, 4 5.665573235336D+04, 5.487152481411D+04, 5.313653364170D+04, 5 5.144961670340D+04, 4.980965281091D+04, 4.821554144937D+04/ data (fxa(i), i=181,225)/ 1 4.666620250827D+04, 4.516057601428D+04, 4.369762186583D+04, 2 4.227631956970D+04, 4.089566797941D+04, 3.955468503546D+04, 3 3.825240750754D+04, 3.698789073848D+04, 3.576020839022D+04, 4 3.456845219150D+04, 3.341173168758D+04, 3.228917399169D+04, 5 3.119992353844D+04, 3.014314183907D+04, 2.911800723860D+04, 6 2.812371467481D+04, 2.715947543912D+04, 2.622451693933D+04, 7 2.531808246426D+04, 2.443943095019D+04, 2.358783674929D+04, 8 2.276258939978D+04, 2.196299339808D+04, 2.118836797275D+04, 9 2.043804686036D+04, 1.971137808319D+04, 1.900772372879D+04, & 1.832645973148D+04, 1.766697565563D+04, 1.702867448087D+04, 1 1.641097238914D+04, 1.581329855362D+04, 1.523509492952D+04, 2 1.467581604677D+04, 1.413492880452D+04, 1.361191226754D+04, 3 1.310625746450D+04, 1.261746718809D+04, 1.214505579703D+04, 4 1.168854901990D+04, 1.124748376089D+04, 1.082140790741D+04, 5 1.040988013948D+04, 1.001246974111D+04, 9.628756413462D+03/ data (fxa(i), i=226,270)/ 1 9.258330089862D+03, 8.900790752739D+03, 8.555748252369D+03, 2 8.222822127501D+03, 7.901641427839D+03, 7.591844538379D+03, 3 7.293079005610D+03, 7.005001365559D+03, 6.727276973708D+03, 4 6.459579836752D+03, 6.201592446212D+03, 5.953005613910D+03, 5 5.713518309284D+03, 5.482837498557D+03, 5.260677985757D+03, 6 5.046762255578D+03, 4.840820318097D+03, 4.642589555324D+03, 7 4.451814569602D+03, 4.268247033846D+03, 4.091645543626D+03, 8 3.921775471075D+03, 3.758408820652D+03, 3.601324086720D+03, 9 3.450306112971D+03, 3.305145953669D+03, 3.165640736731D+03, & 3.031593528623D+03, 2.902813201086D+03, 2.779114299679D+03, 1 2.660316914141D+03, 2.546246550563D+03, 2.436734005378D+03, 2 2.331615241154D+03, 2.230731264195D+03, 2.133928003939D+03, 3 2.041056194162D+03, 1.951971255968D+03, 1.866533182576D+03, 4 1.784606425883D+03, 1.706059784824D+03, 1.630766295493D+03, 5 1.558603123048D+03, 1.489451455378D+03, 1.423196398534D+03/ data (fxa(i), i=271,315)/ 1 1.359726873914D+03, 1.298935517208D+03, 1.240718579074D+03, 2 1.184975827566D+03, 1.131610452290D+03, 1.080528970283D+03, 3 1.031641133616D+03, 9.848598387042D+02, 9.401010373271D+02, 4 8.972836493373D+02, 8.563294770633D+02, 8.171631213885D+02, 5 7.797118995016D+02, 7.439057643075D+02, 7.096772254905D+02, 6 6.769612722177D+02, 6.456952974743D+02, 6.158190240183D+02, 7 5.872744319450D+02, 5.600056878479D+02, 5.339590755655D+02, 8 5.090829285006D+02, 4.853275634997D+02, 4.626452162786D+02, 9 4.409899783817D+02, 4.203177356589D+02, 4.005861082473D+02, & 3.817543920415D+02, 3.637835016366D+02, 3.466359147300D+02, 1 3.302756179625D+02, 3.146680541844D+02, 2.997800711276D+02, 2 2.855798714672D+02, 2.720369642530D+02, 2.591221176937D+02, 3 2.468073132733D+02, 2.350657011816D+02, 2.238715570379D+02, 4 2.132002398884D+02, 2.030281514558D+02, 1.933326966217D+02, 5 1.840922451182D+02, 1.752860944097D+02, 1.668944337410D+02/ data (fxa(i), i=316,360)/ 1 1.588983093303D+02, 1.512795906854D+02, 1.440209380185D+02, 2 1.371057707392D+02, 1.305182370012D+02, 1.242431842795D+02, 3 1.182661309557D+02, 1.125732388875D+02, 1.071512869393D+02, 4 1.019876454496D+02, 9.707025161373D+01, 9.238758575584D+01, 5 8.792864846935D+01, 8.368293860087D+01, 7.964043205530D+01, 6 7.579156139885D+01, 7.212719623720D+01, 6.863862434620D+01, 7 6.531753353263D+01, 6.215599420295D+01, 5.914644261817D+01, 8 5.628166481306D+01, 5.355478115869D+01, 5.095923154711D+01, 9 4.848876117771D+01, 4.613740692496D+01, 4.389948426766D+01, & 4.176957476031D+01, 3.974251402746D+01, 3.781338026243D+01, 1 3.597748321219D+01, 3.423035363065D+01, 3.256773318289D+01, 2 3.098556478364D+01, 2.947998335330D+01, 2.804730697573D+01, 3 2.668402844217D+01, 2.538680716604D+01, 2.415246145429D+01, 4 2.297796112079D+01, 2.186042042815D+01, 2.079709134457D+01, 5 1.978535710301D+01, 1.882272604990D+01, 1.790682577170D+01/ data (fxa(i), i=361,405)/ 1 1.703539748745D+01, 1.620629069619D+01, 1.541745806849D+01, 2 1.466695057151D+01, 1.395291281777D+01, 1.327357862776D+01, 3 1.262726679729D+01, 1.201237706047D+01, 1.142738623984D+01, 4 1.087084457536D+01, 1.034137222435D+01, 9.837655924723D+00, 5 9.358445814253D+00, 8.902552398883D+00, 8.468843663309D+00, 6 8.056242317450D+00, 7.663723172604D+00, 7.290310641404D+00, 7 6.935076355911D+00, 6.597136898421D+00, 6.275651639814D+00, 8 5.969820680489D+00, 5.678882889129D+00, 5.402114034783D+00, 9 5.138825007908D+00, 4.888360126251D+00, 4.650095521594D+00, & 4.423437603587D+00, 4.207821597064D+00, 4.002710149380D+00, 1 3.807592004482D+00, 3.621980740572D+00, 3.445413568355D+00, 2 3.277450187014D+00, 3.117671695176D+00, 2.965679554264D+00, 3 2.821094601739D+00, 2.683556111886D+00, 2.552720901844D+00, 4 2.428262480756D+00, 2.309870239973D+00, 2.197248682333D+00, 5 2.090116688683D+00, 1.988206819826D+00, 1.891264652223D+00/ data (fxa(i), i=406,423)/ 1 1.799048145813D+00, 1.711327042428D+00, 1.627882293313D+00, 2 1.548505514377D+00, 1.472998467815D+00, 1.401172568861D+00, 3 1.332848416434D+00, 1.267855346545D+00, 1.206031007362D+00, 4 1.147220954882D+00, 1.091278268232D+00, 1.038063183630D+00, 5 9.874427461190D-01, 9.392904782154D-01, 8.934860646434D-01, 6 8.499150523872D-01, 8.084685653161D-01, 7.690430326758D-01/ c..initialize the spline fits if (ifirst .eq. 0) then ifirst = 1 do i=1,ifd alfax(i) = -16.05d0 + float(i-1)*(0.05d0) enddo yp1 = 10.0d0*(-3.0d0*fxa(1) + 4.0d0*fxa(2) - fxa(3)) ypn = 10.0d0*(fxa(ifd-2) - 4.0d0*fxa(ifd-1) + 3.0d0*fxa(ifd)) call spline(alfax,fxa,ifd,yp1,ypn,fcof) end if c..very non degenerate, two term expansion; cox and giuli 24.47 if (x .lt. -5.0d0) then z = exp(x) fermi5 = 120.0d0 * z * (1.0d0 - 1.5625d-2 * z) c..partially degenerate; spline interpolate in alpha space; a good table guess else if (x .ge. -5.0d0 .and. x .le. 16.0d0) then y = -x i = (y + 16.05d0)*20.0d0 call splinth(alfax,fxa,fcof,ifd,y,z,i) fermi5 = z c..very degenerate, three term expansion; cox and giuli 24.38 and 24.39 else if (x .gt. 16.0d0) then z = x * x fermi5 = con4 + con3*z + con2*z*z + con1*z*z*z end if return end