Code covered by the BSD License

### Highlights fromslatec

from slatec by Ben Barrowes
The slatec library converted into matlab functions.

[de1result,x]=de1(x);
function [de1result,x]=de1(x);
de1result=[];
persistent ae10cs ae11cs ae12cs ae13cs ae14cs e11cs e12cs eta first firstCall ntae10 ntae11 ntae12 ntae13 ntae14 nte11 nte12 xmax xmaxt ; if isempty(firstCall),firstCall=1;end;

;
if isempty(eta), eta=0; end;
if isempty(ntae10), ntae10=0; end;
if isempty(ntae11), ntae11=0; end;
if isempty(ntae12), ntae12=0; end;
if isempty(ntae13), ntae13=0; end;
if isempty(ntae14), ntae14=0; end;
if isempty(nte11), nte11=0; end;
if isempty(nte12), nte12=0; end;
%***BEGIN PROLOGUE  DE1
%***PURPOSE  Compute the exponential integral E1(X).
%***LIBRARY   SLATEC (FNLIB)
%***CATEGORY  C5
%***TYPE      doubleprecision (E1-S, DE1-D)
%***KEYWORDS  E1 FUNCTION, EXPONENTIAL INTEGRAL, FNLIB,
%             SPECIAL FUNCTIONS
%***AUTHOR  Fullerton, W., (LANL)
%***DESCRIPTION
%
% DE1 calculates the doubleprecision exponential integral, E1(X), for
% positive doubleprecision argument X and the Cauchy principal value
% for negative X.  If principal values are used everywhere, then, for
% all X,
%
%    E1(X) = -Ei(-X)
% or
%    Ei(X) = -E1(-X).
%
%
% Series for AE10       on the interval -3.12500E-02 to  0.
%                                        with weighted error   4.62E-32
%                                         log weighted error  31.34
%                               significant figures required  29.70
%                                    decimal places required  32.18
%
%
% Series for AE11       on the interval -1.25000E-01 to -3.12500E-02
%                                        with weighted error   2.22E-32
%                                         log weighted error  31.65
%                               significant figures required  30.75
%                                    decimal places required  32.54
%
%
% Series for AE12       on the interval -2.50000E-01 to -1.25000E-01
%                                        with weighted error   5.19E-32
%                                         log weighted error  31.28
%                               significant figures required  30.82
%                                    decimal places required  32.09
%
%
% Series for E11        on the interval -4.00000E+00 to -1.00000E+00
%                                        with weighted error   8.49E-34
%                                         log weighted error  33.07
%                               significant figures required  34.13
%                                    decimal places required  33.80
%
%
% Series for E12        on the interval -1.00000E+00 to  1.00000E+00
%                                        with weighted error   8.08E-33
%                                         log weighted error  32.09
%                        approx significant figures required  30.4
%                                    decimal places required  32.79
%
%
% Series for AE13       on the interval  2.50000E-01 to  1.00000E+00
%                                        with weighted error   6.65E-32
%                                         log weighted error  31.18
%                               significant figures required  30.69
%                                    decimal places required  32.03
%
%
% Series for AE14       on the interval  0.          to  2.50000E-01
%                                        with weighted error   5.07E-32
%                                         log weighted error  31.30
%                               significant figures required  30.40
%                                    decimal places required  32.20
%
%***REFERENCES  (NONE)
%***ROUTINES CALLED  D1MACH, DCSEVL, INITDS, XERMSG
%***REVISION HISTORY  (YYMMDD)
%   770701  DATE WRITTEN
%   890531  Changed all specific intrinsics to generic.  (WRB)
%   891115  Modified prologue description.  (WRB)
%   891115  REVISION DATE from Version 3.2
%   891214  Prologue converted to Version 4.0 format.  (BAB)
%   900315  CALLs to XERROR changed to CALLs to XERMSG.  (THJ)
%   920618  Removed space from variable names.  (RWC, WRB)
%***end PROLOGUE  DE1
if isempty(ae10cs), ae10cs=zeros(1,50); end;
if isempty(ae11cs), ae11cs=zeros(1,60); end;
if isempty(ae12cs), ae12cs=zeros(1,41); end;
if isempty(e11cs), e11cs=zeros(1,29); end;
if isempty(e12cs), e12cs=zeros(1,25); end;
if isempty(ae13cs), ae13cs=zeros(1,50); end;
if isempty(ae14cs), ae14cs=zeros(1,64); end;
if isempty(xmax), xmax=0; end;
if isempty(xmaxt), xmaxt=0; end;
if isempty(first), first=false; end;
if firstCall,   ae10cs(1)=[+.3284394579616699087873844201881d-1];  end;
if firstCall,   ae10cs(2)=[-.1669920452031362851476184343387d-1];  end;
if firstCall,   ae10cs(3)=[+.2845284724361346807424899853252d-3];  end;
if firstCall,   ae10cs(4)=[-.7563944358516206489487866938533d-5];  end;
if firstCall,   ae10cs(5)=[+.2798971289450859157504843180879d-6];  end;
if firstCall,   ae10cs(6)=[-.1357901828534531069525563926255d-7];  end;
if firstCall,   ae10cs(7)=[+.8343596202040469255856102904906d-9];  end;
if firstCall,   ae10cs(8)=[-.6370971727640248438275242988532d-10];  end;
if firstCall,   ae10cs(9)=[+.6007247608811861235760831561584d-11];  end;
if firstCall,   ae10cs(10)=[-.7022876174679773590750626150088d-12];  end;
if firstCall,   ae10cs(11)=[+.1018302673703687693096652346883d-12];  end;
if firstCall,   ae10cs(12)=[-.1761812903430880040406309966422d-13];  end;
if firstCall,   ae10cs(13)=[+.3250828614235360694244030353877d-14];  end;
if firstCall,   ae10cs(14)=[-.5071770025505818678824872259044d-15];  end;
if firstCall,   ae10cs(15)=[+.1665177387043294298172486084156d-16];  end;
if firstCall,   ae10cs(16)=[+.3166753890797514400677003536555d-16];  end;
if firstCall,   ae10cs(17)=[-.1588403763664141515133118343538d-16];  end;
if firstCall,   ae10cs(18)=[+.4175513256138018833003034618484d-17];  end;
if firstCall,   ae10cs(19)=[-.2892347749707141906710714478852d-18];  end;
if firstCall,   ae10cs(20)=[-.2800625903396608103506340589669d-18];  end;
if firstCall,   ae10cs(21)=[+.1322938639539270903707580023781d-18];  end;
if firstCall,   ae10cs(22)=[-.1804447444177301627283887833557d-19];  end;
if firstCall,   ae10cs(23)=[-.7905384086522616076291644817604d-20];  end;
if firstCall,   ae10cs(24)=[+.4435711366369570103946235838027d-20];  end;
if firstCall,   ae10cs(25)=[-.4264103994978120868865309206555d-21];  end;
if firstCall,   ae10cs(26)=[-.3920101766937117541553713162048d-21];  end;
if firstCall,   ae10cs(27)=[+.1527378051343994266343752326971d-21];  end;
if firstCall,   ae10cs(28)=[+.1024849527049372339310308783117d-22];  end;
if firstCall,   ae10cs(29)=[-.2134907874771433576262711405882d-22];  end;
if firstCall,   ae10cs(30)=[+.3239139475160028267061694700366d-23];  end;
if firstCall,   ae10cs(31)=[+.2142183762299889954762643168296d-23];  end;
if firstCall,   ae10cs(32)=[-.8234609419601018414700348082312d-24];  end;
if firstCall,   ae10cs(33)=[-.1524652829645809479613694401140d-24];  end;
if firstCall,   ae10cs(34)=[+.1378208282460639134668480364325d-24];  end;
if firstCall,   ae10cs(35)=[+.2131311202833947879523224999253d-26];  end;
if firstCall,   ae10cs(36)=[-.2012649651526484121817466763127d-25];  end;
if firstCall,   ae10cs(37)=[+.1995535662263358016106311782673d-26];  end;
if firstCall,   ae10cs(38)=[+.2798995808984003464948686520319d-26];  end;
if firstCall,   ae10cs(39)=[-.5534511845389626637640819277823d-27];  end;
if firstCall,   ae10cs(40)=[-.3884995396159968861682544026146d-27];  end;
if firstCall,   ae10cs(41)=[+.1121304434507359382850680354679d-27];  end;
if firstCall,   ae10cs(42)=[+.5566568152423740948256563833514d-28];  end;
if firstCall,   ae10cs(43)=[-.2045482929810499700448533938176d-28];  end;
if firstCall,   ae10cs(44)=[-.8453813992712336233411457493674d-29];  end;
if firstCall,   ae10cs(45)=[+.3565758433431291562816111116287d-29];  end;
if firstCall,   ae10cs(46)=[+.1383653872125634705539949098871d-29];  end;
if firstCall,   ae10cs(47)=[-.6062167864451372436584533764778d-30];  end;
if firstCall,   ae10cs(48)=[-.2447198043989313267437655119189d-30];  end;
if firstCall,   ae10cs(49)=[+.1006850640933998348011548180480d-30];  end;
if firstCall,   ae10cs(50)=[+.4623685555014869015664341461674d-31];  end;
if firstCall,   ae11cs(1)=[+.20263150647078889499401236517381d+0];  end;
if firstCall,   ae11cs(2)=[-.73655140991203130439536898728034d-1];  end;
if firstCall,   ae11cs(3)=[+.63909349118361915862753283840020d-2];  end;
if firstCall,   ae11cs(4)=[-.60797252705247911780653153363999d-3];  end;
if firstCall,   ae11cs(5)=[-.73706498620176629330681411493484d-4];  end;
if firstCall,   ae11cs(6)=[+.48732857449450183453464992488076d-4];  end;
if firstCall,   ae11cs(7)=[-.23837064840448290766588489460235d-5];  end;
if firstCall,   ae11cs(8)=[-.30518612628561521027027332246121d-5];  end;
if firstCall,   ae11cs(9)=[+.17050331572564559009688032992907d-6];  end;
if firstCall,   ae11cs(10)=[+.23834204527487747258601598136403d-6];  end;
if firstCall,   ae11cs(11)=[+.10781772556163166562596872364020d-7];  end;
if firstCall,   ae11cs(12)=[-.17955692847399102653642691446599d-7];  end;
if firstCall,   ae11cs(13)=[-.41284072341950457727912394640436d-8];  end;
if firstCall,   ae11cs(14)=[+.68622148588631968618346844526664d-9];  end;
if firstCall,   ae11cs(15)=[+.53130183120506356147602009675961d-9];  end;
if firstCall,   ae11cs(16)=[+.78796880261490694831305022893515d-10];  end;
if firstCall,   ae11cs(17)=[-.26261762329356522290341675271232d-10];  end;
if firstCall,   ae11cs(18)=[-.15483687636308261963125756294100d-10];  end;
if firstCall,   ae11cs(19)=[-.25818962377261390492802405122591d-11];  end;
if firstCall,   ae11cs(20)=[+.59542879191591072658903529959352d-12];  end;
if firstCall,   ae11cs(21)=[+.46451400387681525833784919321405d-12];  end;
if firstCall,   ae11cs(22)=[+.11557855023255861496288006203731d-12];  end;
if firstCall,   ae11cs(23)=[-.10475236870835799012317547189670d-14];  end;
if firstCall,   ae11cs(24)=[-.11896653502709004368104489260929d-13];  end;
if firstCall,   ae11cs(25)=[-.47749077490261778752643019349950d-14];  end;
if firstCall,   ae11cs(26)=[-.81077649615772777976249734754135d-15];  end;
if firstCall,   ae11cs(27)=[+.13435569250031554199376987998178d-15];  end;
if firstCall,   ae11cs(28)=[+.14134530022913106260248873881287d-15];  end;
if firstCall,   ae11cs(29)=[+.49451592573953173115520663232883d-16];  end;
if firstCall,   ae11cs(30)=[+.79884048480080665648858587399367d-17];  end;
if firstCall,   ae11cs(31)=[-.14008632188089809829248711935393d-17];  end;
if firstCall,   ae11cs(32)=[-.14814246958417372107722804001680d-17];  end;
if firstCall,   ae11cs(33)=[-.55826173646025601904010693937113d-18];  end;
if firstCall,   ae11cs(34)=[-.11442074542191647264783072544598d-18];  end;
if firstCall,   ae11cs(35)=[+.25371823879566853500524018479923d-20];  end;
if firstCall,   ae11cs(36)=[+.13205328154805359813278863389097d-19];  end;
if firstCall,   ae11cs(37)=[+.62930261081586809166287426789485d-20];  end;
if firstCall,   ae11cs(38)=[+.17688270424882713734999261332548d-20];  end;
if firstCall,   ae11cs(39)=[+.23266187985146045209674296887432d-21];  end;
if firstCall,   ae11cs(40)=[-.67803060811125233043773831844113d-22];  end;
if firstCall,   ae11cs(41)=[-.59440876959676373802874150531891d-22];  end;
if firstCall,   ae11cs(42)=[-.23618214531184415968532592503466d-22];  end;
if firstCall,   ae11cs(43)=[-.60214499724601478214168478744576d-23];  end;
if firstCall,   ae11cs(44)=[-.65517906474348299071370444144639d-24];  end;
if firstCall,   ae11cs(45)=[+.29388755297497724587042038699349d-24];  end;
if firstCall,   ae11cs(46)=[+.22601606200642115173215728758510d-24];  end;
if firstCall,   ae11cs(47)=[+.89534369245958628745091206873087d-25];  end;
if firstCall,   ae11cs(48)=[+.24015923471098457555772067457706d-25];  end;
if firstCall,   ae11cs(49)=[+.34118376888907172955666423043413d-26];  end;
if firstCall,   ae11cs(50)=[-.71617071694630342052355013345279d-27];  end;
if firstCall,   ae11cs(51)=[-.75620390659281725157928651980799d-27];  end;
if firstCall,   ae11cs(52)=[-.33774612157467324637952920780800d-27];  end;
if firstCall,   ae11cs(53)=[-.10479325703300941711526430332245d-27];  end;
if firstCall,   ae11cs(54)=[-.21654550252170342240854880201386d-28];  end;
if firstCall,   ae11cs(55)=[-.75297125745288269994689298432000d-30];  end;
if firstCall,   ae11cs(56)=[+.19103179392798935768638084000426d-29];  end;
if firstCall,   ae11cs(57)=[+.11492104966530338547790728833706d-29];  end;
if firstCall,   ae11cs(58)=[+.43896970582661751514410359193600d-30];  end;
if firstCall,   ae11cs(59)=[+.12320883239205686471647157725866d-30];  end;
if firstCall,   ae11cs(60)=[+.22220174457553175317538581162666d-31];  end;
if firstCall,   ae12cs(1)=[+.63629589796747038767129887806803d+0];  end;
if firstCall,   ae12cs(2)=[-.13081168675067634385812671121135d+0];  end;
if firstCall,   ae12cs(3)=[-.84367410213053930014487662129752d-2];  end;
if firstCall,   ae12cs(4)=[+.26568491531006685413029428068906d-2];  end;
if firstCall,   ae12cs(5)=[+.32822721781658133778792170142517d-3];  end;
if firstCall,   ae12cs(6)=[-.23783447771430248269579807851050d-4];  end;
if firstCall,   ae12cs(7)=[-.11439804308100055514447076797047d-4];  end;
if firstCall,   ae12cs(8)=[-.14405943433238338455239717699323d-5];  end;
if firstCall,   ae12cs(9)=[+.52415956651148829963772818061664d-8];  end;
if firstCall,   ae12cs(10)=[+.38407306407844323480979203059716d-7];  end;
if firstCall,   ae12cs(11)=[+.85880244860267195879660515759344d-8];  end;
if firstCall,   ae12cs(12)=[+.10219226625855003286339969553911d-8];  end;
if firstCall,   ae12cs(13)=[+.21749132323289724542821339805992d-10];  end;
if firstCall,   ae12cs(14)=[-.22090238142623144809523503811741d-10];  end;
if firstCall,   ae12cs(15)=[-.63457533544928753294383622208801d-11];  end;
if firstCall,   ae12cs(16)=[-.10837746566857661115340539732919d-11];  end;
if firstCall,   ae12cs(17)=[-.11909822872222586730262200440277d-12];  end;
if firstCall,   ae12cs(18)=[-.28438682389265590299508766008661d-14];  end;
if firstCall,   ae12cs(19)=[+.25080327026686769668587195487546d-14];  end;
if firstCall,   ae12cs(20)=[+.78729641528559842431597726421265d-15];  end;
if firstCall,   ae12cs(21)=[+.15475066347785217148484334637329d-15];  end;
if firstCall,   ae12cs(22)=[+.22575322831665075055272608197290d-16];  end;
if firstCall,   ae12cs(23)=[+.22233352867266608760281380836693d-17];  end;
if firstCall,   ae12cs(24)=[+.16967819563544153513464194662399d-19];  end;
if firstCall,   ae12cs(25)=[-.57608316255947682105310087304533d-19];  end;
if firstCall,   ae12cs(26)=[-.17591235774646878055625369408853d-19];  end;
if firstCall,   ae12cs(27)=[-.36286056375103174394755328682666d-20];  end;
if firstCall,   ae12cs(28)=[-.59235569797328991652558143488000d-21];  end;
if firstCall,   ae12cs(29)=[-.76030380926310191114429136895999d-22];  end;
if firstCall,   ae12cs(30)=[-.62547843521711763842641428479999d-23];  end;
if firstCall,   ae12cs(31)=[+.25483360759307648606037606400000d-24];  end;
if firstCall,   ae12cs(32)=[+.25598615731739857020168874666666d-24];  end;
if firstCall,   ae12cs(33)=[+.71376239357899318800207052800000d-25];  end;
if firstCall,   ae12cs(34)=[+.14703759939567568181578956800000d-25];  end;
if firstCall,   ae12cs(35)=[+.25105524765386733555198634666666d-26];  end;
if firstCall,   ae12cs(36)=[+.35886666387790890886583637333333d-27];  end;
if firstCall,   ae12cs(37)=[+.39886035156771301763317759999999d-28];  end;
if firstCall,   ae12cs(38)=[+.21763676947356220478805333333333d-29];  end;
if firstCall,   ae12cs(39)=[-.46146998487618942367607466666666d-30];  end;
if firstCall,   ae12cs(40)=[-.20713517877481987707153066666666d-30];  end;
if firstCall,   ae12cs(41)=[-.51890378563534371596970666666666d-31];  end;
if firstCall,   e11cs(1)=[-.16113461655571494025720663927566180d+2];  end;
if firstCall,   e11cs(2)=[+.77940727787426802769272245891741497d+1];  end;
if firstCall,   e11cs(3)=[-.19554058188631419507127283812814491d+1];  end;
if firstCall,   e11cs(4)=[+.37337293866277945611517190865690209d+0];  end;
if firstCall,   e11cs(5)=[-.56925031910929019385263892220051166d-1];  end;
if firstCall,   e11cs(6)=[+.72110777696600918537847724812635813d-2];  end;
if firstCall,   e11cs(7)=[-.78104901449841593997715184089064148d-3];  end;
if firstCall,   e11cs(8)=[+.73880933562621681878974881366177858d-4];  end;
if firstCall,   e11cs(9)=[-.62028618758082045134358133607909712d-5];  end;
if firstCall,   e11cs(10)=[+.46816002303176735524405823868362657d-6];  end;
if firstCall,   e11cs(11)=[-.32092888533298649524072553027228719d-7];  end;
if firstCall,   e11cs(12)=[+.20151997487404533394826262213019548d-8];  end;
if firstCall,   e11cs(13)=[-.11673686816697793105356271695015419d-9];  end;
if firstCall,   e11cs(14)=[+.62762706672039943397788748379615573d-11];  end;
if firstCall,   e11cs(15)=[-.31481541672275441045246781802393600d-12];  end;
if firstCall,   e11cs(16)=[+.14799041744493474210894472251733333d-13];  end;
if firstCall,   e11cs(17)=[-.65457091583979673774263401588053333d-15];  end;
if firstCall,   e11cs(18)=[+.27336872223137291142508012748799999d-16];  end;
if firstCall,   e11cs(19)=[-.10813524349754406876721727624533333d-17];  end;
if firstCall,   e11cs(20)=[+.40628328040434303295300348586666666d-19];  end;
if firstCall,   e11cs(21)=[-.14535539358960455858914372266666666d-20];  end;
if firstCall,   e11cs(22)=[+.49632746181648636830198442666666666d-22];  end;
if firstCall,   e11cs(23)=[-.16208612696636044604866560000000000d-23];  end;
if firstCall,   e11cs(24)=[+.50721448038607422226431999999999999d-25];  end;
if firstCall,   e11cs(25)=[-.15235811133372207813973333333333333d-26];  end;
if firstCall,   e11cs(26)=[+.44001511256103618696533333333333333d-28];  end;
if firstCall,   e11cs(27)=[-.12236141945416231594666666666666666d-29];  end;
if firstCall,   e11cs(28)=[+.32809216661066001066666666666666666d-31];  end;
if firstCall,   e11cs(29)=[-.84933452268306432000000000000000000d-33];  end;
if firstCall,   e12cs(1)=[-.3739021479220279511668698204827d-1];  end;
if firstCall,   e12cs(2)=[+.4272398606220957726049179176528d-1];  end;
if firstCall,   e12cs(3)=[-.130318207984970054415392055219726d+0];  end;
if firstCall,   e12cs(4)=[+.144191240246988907341095893982137d-1];  end;
if firstCall,   e12cs(5)=[-.134617078051068022116121527983553d-2];  end;
if firstCall,   e12cs(6)=[+.107310292530637799976115850970073d-3];  end;
if firstCall,   e12cs(7)=[-.742999951611943649610283062223163d-5];  end;
if firstCall,   e12cs(8)=[+.453773256907537139386383211511827d-6];  end;
if firstCall,   e12cs(9)=[-.247641721139060131846547423802912d-7];  end;
if firstCall,   e12cs(10)=[+.122076581374590953700228167846102d-8];  end;
if firstCall,   e12cs(11)=[-.548514148064092393821357398028261d-10];  end;
if firstCall,   e12cs(12)=[+.226362142130078799293688162377002d-11];  end;
if firstCall,   e12cs(13)=[-.863589727169800979404172916282240d-13];  end;
if firstCall,   e12cs(14)=[+.306291553669332997581032894881279d-14];  end;
if firstCall,   e12cs(15)=[-.101485718855944147557128906734933d-15];  end;
if firstCall,   e12cs(16)=[+.315482174034069877546855328426666d-17];  end;
if firstCall,   e12cs(17)=[-.923604240769240954484015923200000d-19];  end;
if firstCall,   e12cs(18)=[+.255504267970814002440435029333333d-20];  end;
if firstCall,   e12cs(19)=[-.669912805684566847217882453333333d-22];  end;
if firstCall,   e12cs(20)=[+.166925405435387319431987199999999d-23];  end;
if firstCall,   e12cs(21)=[-.396254925184379641856000000000000d-25];  end;
if firstCall,   e12cs(22)=[+.898135896598511332010666666666666d-27];  end;
if firstCall,   e12cs(23)=[-.194763366993016433322666666666666d-28];  end;
if firstCall,   e12cs(24)=[+.404836019024630033066666666666666d-30];  end;
if firstCall,   e12cs(25)=[-.807981567699845120000000000000000d-32];  end;
if firstCall,   ae13cs(1)=[-.60577324664060345999319382737747d+0];  end;
if firstCall,   ae13cs(2)=[-.11253524348366090030649768852718d+0];  end;
if firstCall,   ae13cs(3)=[+.13432266247902779492487859329414d-1];  end;
if firstCall,   ae13cs(4)=[-.19268451873811457249246838991303d-2];  end;
if firstCall,   ae13cs(5)=[+.30911833772060318335586737475368d-3];  end;
if firstCall,   ae13cs(6)=[-.53564132129618418776393559795147d-4];  end;
if firstCall,   ae13cs(7)=[+.98278128802474923952491882717237d-5];  end;
if firstCall,   ae13cs(8)=[-.18853689849165182826902891938910d-5];  end;
if firstCall,   ae13cs(9)=[+.37494319356894735406964042190531d-6];  end;
if firstCall,   ae13cs(10)=[-.76823455870552639273733465680556d-7];  end;
if firstCall,   ae13cs(11)=[+.16143270567198777552956300060868d-7];  end;
if firstCall,   ae13cs(12)=[-.34668022114907354566309060226027d-8];  end;
if firstCall,   ae13cs(13)=[+.75875420919036277572889747054114d-9];  end;
if firstCall,   ae13cs(14)=[-.16886433329881412573514526636703d-9];  end;
if firstCall,   ae13cs(15)=[+.38145706749552265682804250927272d-10];  end;
if firstCall,   ae13cs(16)=[-.87330266324446292706851718272334d-11];  end;
if firstCall,   ae13cs(17)=[+.20236728645867960961794311064330d-11];  end;
if firstCall,   ae13cs(18)=[-.47413283039555834655210340820160d-12];  end;
if firstCall,   ae13cs(19)=[+.11221172048389864324731799928920d-12];  end;
if firstCall,   ae13cs(20)=[-.26804225434840309912826809093395d-13];  end;
if firstCall,   ae13cs(21)=[+.64578514417716530343580369067212d-14];  end;
if firstCall,   ae13cs(22)=[-.15682760501666478830305702849194d-14];  end;
if firstCall,   ae13cs(23)=[+.38367865399315404861821516441408d-15];  end;
if firstCall,   ae13cs(24)=[-.94517173027579130478871048932556d-16];  end;
if firstCall,   ae13cs(25)=[+.23434812288949573293896666439133d-16];  end;
if firstCall,   ae13cs(26)=[-.58458661580214714576123194419882d-17];  end;
if firstCall,   ae13cs(27)=[+.14666229867947778605873617419195d-17];  end;
if firstCall,   ae13cs(28)=[-.36993923476444472706592538274474d-18];  end;
if firstCall,   ae13cs(29)=[+.93790159936721242136014291817813d-19];  end;
if firstCall,   ae13cs(30)=[-.23893673221937873136308224087381d-19];  end;
if firstCall,   ae13cs(31)=[+.61150624629497608051934223837866d-20];  end;
if firstCall,   ae13cs(32)=[-.15718585327554025507719853288106d-20];  end;
if firstCall,   ae13cs(33)=[+.40572387285585397769519294491306d-21];  end;
if firstCall,   ae13cs(34)=[-.10514026554738034990566367122773d-21];  end;
if firstCall,   ae13cs(35)=[+.27349664930638667785806003131733d-22];  end;
if firstCall,   ae13cs(36)=[-.71401604080205796099355574271999d-23];  end;
if firstCall,   ae13cs(37)=[+.18705552432235079986756924211199d-23];  end;
if firstCall,   ae13cs(38)=[-.49167468166870480520478020949333d-24];  end;
if firstCall,   ae13cs(39)=[+.12964988119684031730916087125333d-24];  end;
if firstCall,   ae13cs(40)=[-.34292515688362864461623940437333d-25];  end;
if firstCall,   ae13cs(41)=[+.90972241643887034329104820906666d-26];  end;
if firstCall,   ae13cs(42)=[-.24202112314316856489934847999999d-26];  end;
if firstCall,   ae13cs(43)=[+.64563612934639510757670475093333d-27];  end;
if firstCall,   ae13cs(44)=[-.17269132735340541122315987626666d-27];  end;
if firstCall,   ae13cs(45)=[+.46308611659151500715194231466666d-28];  end;
if firstCall,   ae13cs(46)=[-.12448703637214131241755170133333d-28];  end;
if firstCall,   ae13cs(47)=[+.33544574090520678532907007999999d-29];  end;
if firstCall,   ae13cs(48)=[-.90598868521070774437543935999999d-30];  end;
if firstCall,   ae13cs(49)=[+.24524147051474238587273216000000d-30];  end;
if firstCall,   ae13cs(50)=[-.66528178733552062817107967999999d-31];  end;
if firstCall,   ae14cs(1)=[-.1892918000753016825495679942820d+0];  end;
if firstCall,   ae14cs(2)=[-.8648117855259871489968817056824d-1];  end;
if firstCall,   ae14cs(3)=[+.7224101543746594747021514839184d-2];  end;
if firstCall,   ae14cs(4)=[-.8097559457557386197159655610181d-3];  end;
if firstCall,   ae14cs(5)=[+.1099913443266138867179251157002d-3];  end;
if firstCall,   ae14cs(6)=[-.1717332998937767371495358814487d-4];  end;
if firstCall,   ae14cs(7)=[+.2985627514479283322825342495003d-5];  end;
if firstCall,   ae14cs(8)=[-.5659649145771930056560167267155d-6];  end;
if firstCall,   ae14cs(9)=[+.1152680839714140019226583501663d-6];  end;
if firstCall,   ae14cs(10)=[-.2495030440269338228842128765065d-7];  end;
if firstCall,   ae14cs(11)=[+.5692324201833754367039370368140d-8];  end;
if firstCall,   ae14cs(12)=[-.1359957664805600338490030939176d-8];  end;
if firstCall,   ae14cs(13)=[+.3384662888760884590184512925859d-9];  end;
if firstCall,   ae14cs(14)=[-.8737853904474681952350849316580d-10];  end;
if firstCall,   ae14cs(15)=[+.2331588663222659718612613400470d-10];  end;
if firstCall,   ae14cs(16)=[-.6411481049213785969753165196326d-11];  end;
if firstCall,   ae14cs(17)=[+.1812246980204816433384359484682d-11];  end;
if firstCall,   ae14cs(18)=[-.5253831761558460688819403840466d-12];  end;
if firstCall,   ae14cs(19)=[+.1559218272591925698855028609825d-12];  end;
if firstCall,   ae14cs(20)=[-.4729168297080398718476429369466d-13];  end;
if firstCall,   ae14cs(21)=[+.1463761864393243502076199493808d-13];  end;
if firstCall,   ae14cs(22)=[-.4617388988712924102232173623604d-14];  end;
if firstCall,   ae14cs(23)=[+.1482710348289369323789239660371d-14];  end;
if firstCall,   ae14cs(24)=[-.4841672496239229146973165734417d-15];  end;
if firstCall,   ae14cs(25)=[+.1606215575700290408116571966188d-15];  end;
if firstCall,   ae14cs(26)=[-.5408917538957170947895023784252d-16];  end;
if firstCall,   ae14cs(27)=[+.1847470159346897881370231402310d-16];  end;
if firstCall,   ae14cs(28)=[-.6395830792759094470500610425050d-17];  end;
if firstCall,   ae14cs(29)=[+.2242780721699759457250233276170d-17];  end;
if firstCall,   ae14cs(30)=[-.7961369173983947552744555308646d-18];  end;
if firstCall,   ae14cs(31)=[+.2859308111540197459808619929272d-18];  end;
if firstCall,   ae14cs(32)=[-.1038450244701137145900697137446d-18];  end;
if firstCall,   ae14cs(33)=[+.3812040607097975780866841008319d-19];  end;
if firstCall,   ae14cs(34)=[-.1413795417717200768717562723696d-19];  end;
if firstCall,   ae14cs(35)=[+.5295367865182740958305442594815d-20];  end;
if firstCall,   ae14cs(36)=[-.2002264245026825902137211131439d-20];  end;
if firstCall,   ae14cs(37)=[+.7640262751275196014736848610918d-21];  end;
if firstCall,   ae14cs(38)=[-.2941119006868787883311263523362d-21];  end;
if firstCall,   ae14cs(39)=[+.1141823539078927193037691483586d-21];  end;
if firstCall,   ae14cs(40)=[-.4469308475955298425247020718489d-22];  end;
if firstCall,   ae14cs(41)=[+.1763262410571750770630491408520d-22];  end;
if firstCall,   ae14cs(42)=[-.7009968187925902356351518262340d-23];  end;
if firstCall,   ae14cs(43)=[+.2807573556558378922287757507515d-23];  end;
if firstCall,   ae14cs(44)=[-.1132560944981086432141888891562d-23];  end;
if firstCall,   ae14cs(45)=[+.4600574684375017946156764233727d-24];  end;
if firstCall,   ae14cs(46)=[-.1881448598976133459864609148108d-24];  end;
if firstCall,   ae14cs(47)=[+.7744916111507730845444328478037d-25];  end;
if firstCall,   ae14cs(48)=[-.3208512760585368926702703826261d-25];  end;
if firstCall,   ae14cs(49)=[+.1337445542910839760619930421384d-25];  end;
if firstCall,   ae14cs(50)=[-.5608671881802217048894771735210d-26];  end;
if firstCall,   ae14cs(51)=[+.2365839716528537483710069473279d-26];  end;
if firstCall,   ae14cs(52)=[-.1003656195025305334065834526856d-26];  end;
if firstCall,   ae14cs(53)=[+.4281490878094161131286642556927d-27];  end;
if firstCall,   ae14cs(54)=[-.1836345261815318199691326958250d-27];  end;
if firstCall,   ae14cs(55)=[+.7917798231349540000097468678144d-28];  end;
if firstCall,   ae14cs(56)=[-.3431542358742220361025015775231d-28];  end;
if firstCall,   ae14cs(57)=[+.1494705493897103237475066008917d-28];  end;
if firstCall,   ae14cs(58)=[-.6542620279865705439739042420053d-29];  end;
if firstCall,   ae14cs(59)=[+.2877581395199171114340487353685d-29];  end;
if firstCall,   ae14cs(60)=[-.1271557211796024711027981200042d-29];  end;
if firstCall,   ae14cs(61)=[+.5644615555648722522388044622506d-30];  end;
if firstCall,   ae14cs(62)=[-.2516994994284095106080616830293d-30];  end;
if firstCall,   ae14cs(63)=[+.1127259818927510206370368804181d-30];  end;
if firstCall,   ae14cs(64)=[-.5069814875800460855562584719360d-31];  end;
if firstCall,   first=[true];  end;
firstCall=0;
%***FIRST EXECUTABLE STATEMENT  DE1
if( first )
eta = 0.1.*real(d1mach(3));
[ntae10 ,ae10cs,dumvar3,eta]=initds(ae10cs,50,eta);
[ntae11 ,ae11cs,dumvar3,eta]=initds(ae11cs,60,eta);
[ntae12 ,ae12cs,dumvar3,eta]=initds(ae12cs,41,eta);
[nte11 ,e11cs,dumvar3,eta]=initds(e11cs,29,eta);
[nte12 ,e12cs,dumvar3,eta]=initds(e12cs,25,eta);
[ntae13 ,ae13cs,dumvar3,eta]=initds(ae13cs,50,eta);
[ntae14 ,ae14cs,dumvar3,eta]=initds(ae14cs,64,eta);
%
xmaxt = -log(d1mach(1));
xmax = xmaxt - log(xmaxt);
end;
first = false;
%
if( x>(-1.0d0) )
%
if( x<=1.0d0 )
if( x==0.0D0 )
xermsg('SLATEC','DE1','X IS 0',2,2);
end;
de1result =(-log(abs(x))-0.6875d0+x) + dcsevl(x,e12cs,nte12);
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
%
elseif( x<=4.0d0 ) ;
de1result = exp(-x)./x.*(1.0d0+dcsevl((8.0d0./x-5.0d0)./3.0d0,ae13cs,ntae13));
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
%
elseif( x>xmax ) ;
%
xermsg('SLATEC','DE1','X SO BIG E1 UNDERFLOWS',1,1);
de1result = 0.0d0;
else;
de1result = exp(-x)./x.*(1.0d0+dcsevl(8.0d0./x-1.0d0,ae14cs,ntae14));
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
end;
elseif( x>(-32.0d0) ) ;
%
if( x<=(-8.0d0) )
de1result = exp(-x)./x.*(1.0d0+dcsevl((64.0d0./x+5.0d0)./3.0d0,ae11cs,ntae11));
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
%
elseif( x>(-4.0d0) ) ;
%
de1result = -log(-x) + dcsevl((2.0d0.*x+5.0d0)./3.0d0,e11cs,nte11);
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
else;
de1result = exp(-x)./x.*(1.0d0+dcsevl(16.0d0./x+3.0d0,ae12cs,ntae12));
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
end;
else;
de1result = exp(-x)./x.*(1.0d0+dcsevl(64.0d0./x+1.0d0,ae10cs,ntae10));
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
return;
end;
%
csnil=dbstack(1); csnil=csnil(1).name(1)~='@';
if csnil&&~isempty(inputname(1)), assignin('caller','FUntemp',x); evalin('caller',[inputname(1),'=FUntemp;']); end
end
%DECK DEABM

Contact us