SRRAT: use MRAT reader functions instead of CADDAR, etc.
[maxima.git] / tests / rtest_expintegral.mac
blob7538382641ed0c6f6cf819693f840fcd3ef2307c
1 /*******************************************************************************
3   Test file for the Exponential Integrals
5   by Dieter Kaiser (2008)
6 *******************************************************************************/
8 kill(all);
9 done;
11 /* Define a test function for single values */
13 closeto(e,tol):=block([numer:true,abse],abse:abs(e),if(abse<tol) then true else abse);
14 closeto(e,tol):=block([numer:true,abse],abse:abs(e),if(abse<tol) then true else abse);
16 (test_value(actual, ref, digits) := closeto(realpart(actual)-realpart(ref), 10^(-digits)) and closeto(imagpart(actual)-imagpart(ref), 10^(-digits)), done);
17 done;
19 /*******************************************************************************
20  At first we check the special values of the Exponential Integrals 
21 *******************************************************************************/
23 errcatch(expintegral_e(0,0));
24 [];
25 errcatch(expintegral_e(0,0.0));
26 [];
27 errcatch(expintegral_e(0,0.0b0));
28 [];
30 errcatch(expintegral_ei(0));
31 [];
32 errcatch(expintegral_ei(0.0));
33 [];
34 errcatch(expintegral_ei(0.0b0));
35 [];
37 expintegral_li(0);
39 expintegral_li(0.0);
40 0.0;
41 expintegral_li(0.0b0);
42 0.0b0;
44 errcatch(expintegral_li(1));
45 [];
46 errcatch(expintegral_li(1.0));
47 [];
48 errcatch(expintegral_li(1.0b0));
49 [];
51 expintegral_si(0);
53 expintegral_si(0.0);
54 0.0;
55 expintegral_si(0.0b0);
56 0.0b0;
58 expintegral_shi(0);
60 expintegral_shi(0.0);
61 0.0;
62 expintegral_shi(0.0b0);
63 0.0b0;
65 errcatch(expintegral_ci(0));
66 [];
67 errcatch(expintegral_ci(0.0));
68 [];
69 errcatch(expintegral_ci(0.0b0));
70 [];
72 errcatch(expintegral_chi(0));
73 [];
74 errcatch(expintegral_chi(0.0));
75 [];
76 errcatch(expintegral_chi(0.0b0));
77 [];
79 /*******************************************************************************
80    Simplifications for the Exponential Integrals 
81 *******************************************************************************/
83 expintegral_e(-1,z);
84 %e^(-z)*(z+1)/z^2;
86 expintegral_e(-1,10);
87 11*%e^-10/100;
89 expintegral_e(-1,10+%i);
90 (%i+11)*%e^(-%i-10)/(%i+10)^2;
92 expintegral_e(0,z);
93 %e^(-z)/z;
95 expintegral_e(0,10);
96 %e^-10/10;
98 expintegral_e(0,10+%i);
99 %e^(-10-%i)/(10+%i);
101 /* The case Ev(0) simplifies to 1/(v-1) only for Re(v)>1  */
103 (assume(v>1), expintegral_e(v,0));
104 1/(v-1);
106 expintegral_e(3/2+%i,0);
107 1/(%i+1/2);
109 errcatch(expintegral_e(1/2+%i,0));
112 /* We don't simplify for infinities as an argument */
114 expintegral_e(-1,inf);
115 expintegral_e(-1,inf);
117 expintegral_e(v,infinity);
118 expintegral_e(v,infinity);
120 expintegral_e(minf,z);
121 expintegral_e(minf,z);
123 /* Realpart and imagpart for expintegral_e */
125 (assume(x_pos>0),done);
126 done;
128 /* a positive real value */
129 realpart(expintegral_e(v,x_pos));
130 expintegral_e(v,x_pos);
131 imagpart(expintegral_e(v,x_pos));
134 /* a complex value */
135 realpart(expintegral_e(v,1+%i));
136 1/2*(expintegral_e(v,1-%i)+expintegral_e(v,1+%i));
137 imagpart(expintegral_e(v,1+%i));
138 1/2*%i*(expintegral_e(v,1-%i)-expintegral_e(v,1+%i));
140 /* Realpart and imagpart for expintegral_ei */
142 /* a real value */
143 realpart(expintegral_ei(x));
144 expintegral_ei(x);
145 imagpart(expintegral_ei(x));
148 /* a complex value */
149 realpart(expintegral_ei(1+%i));
150 1/2*(expintegral_ei(1-%i)+expintegral_ei(1+%i));
151 imagpart(expintegral_ei(1+%i));
152 1/2*%i*(expintegral_ei(1-%i)-expintegral_ei(1+%i));
154 /* Realpart and imagpart for expintegral_si 
155    expintegral_si has in addition reflection symmetry and
156    for a pure imaginary argument the result is pure imaginary */
158 /* a real value */
159 realpart(expintegral_si(x));
160 expintegral_si(x);
161 imagpart(expintegral_si(x));
164 /* an imaginary value */
165 realpart(expintegral_si(%i));
167 imagpart(expintegral_si(%i));
168 -%i*expintegral_si(%i);
170 /* a complex value */
171 realpart(expintegral_si(1+%i));
172 1/2*(expintegral_si(1-%i)+expintegral_si(1+%i));
173 imagpart(expintegral_si(1+%i));
174 1/2*%i*(expintegral_si(1-%i)-expintegral_si(1+%i));
176 /* Limits of expintegral_si */
178 limit(expintegral_si(x),x,inf);
179 %pi/2;
181 limit(expintegral_si(x),x,minf);
182 -%pi/2;
184 /* Limits of expintegral_shi */
186 limit(expintegral_shi(x),x,inf);
187 inf;
189 limit(expintegral_shi(x),x,minf);
190 minf;
192 /* Limits of expintegral_chi */
194 limit(expintegral_chi(x),x,inf);
195 inf;
197 limit(expintegral_chi(x),x,minf);
198 inf;
200 /*******************************************************************************
201    For a negative integer parameter we expand in a series
202 *******************************************************************************/
204 expintegral_e(-5,z);
205 120*(z^5/120+z^4/24+z^3/6+z^2/2+z+1)*%e^-z/z^6;
207 /*******************************************************************************
208    For a half integral parameter we can expand in terms of the
209    Erfc or Erf function using the flag expintexpand.
210 *******************************************************************************/
212 expintexpand:true;
213 true;
215 expintegral_e(1/2,z);
216 sqrt(%pi)/sqrt(z)*erfc(sqrt(z));
218 expintegral_e(-1/2,z);
219 sqrt(%pi)/(2*z^(3/2))*erfc(sqrt(z))+%e^(-z)/z;
221 /* Expansion in terms of Erf for z = 1/2 
222    We test the Expansion against a pure numerical evaluation.
223    The expansion works for complex argument too. 
224    Attention: We have no support for Complex arguments of the Erf function. */
226 expintexpand:erf;
227 erf;
229 expintegral_e(5/2,1/2);
230 2*sqrt(%pi)*(1-erf(1/sqrt(2)))/(3*sqrt(2));
232 /* We test the expansion against a pure numerical evaluation */
233 test_value(%,expintegral_e(2.5,0.5),15),numer;
234 true;
236 expintegral_e(-5/2,1/2);
238 8*sqrt(2)*(15*sqrt(%pi)*(1-erf(1/sqrt(2)))/8+21/(4*sqrt(2)*sqrt(%e)));
241 2^(7/2)*(15*sqrt(%pi)*(1-erf(1/sqrt(2)))/8+(5/sqrt(2)+1/2^(5/2))/sqrt(%e));
243 test_value(%,expintegral_e(-2.5,0.5),13),numer;
244 true;
246 /*******************************************************************************
247    For a parameter which is a positive integer we can expand
248    the function in terms of the Exponential Integral Ei.
249 *******************************************************************************/
251 expintegral_e(3,z);
252 -z^2*(log(z)+(log(-1/z)-log(-z))/2+expintegral_ei(-z))/2-(z/2-1/2)*%e^-z;
254 /* We compare this with numerical values */
256 ratsimp(expintegral_e(3,1/2));
257 (sqrt(%e)*(2*log(2)+log(-1/2)-2*expintegral_ei(-1/2)-log(-2))+4)/(16*sqrt(%e));
259 test_value(%,expintegral_e(3,0.5),15),numer;
260 true;
262 (expand:expintegral_e(10,1/2),done);
263 done;
265 test_value(expand,expintegral_e(10,0.5),15),numer;
266 true;
268 (expand:expintegral_e(100,1/2),done);
269 done;
271 test_value(expand,expintegral_e(100,0.5),15),numer;
272 true;
274 expintexpand:false;
275 false;
277 /*******************************************************************************
278    Do tests for additional float evaluation 
279 *******************************************************************************/
281 test_value(
282   expintegral_e(1,-1.700598-0.612828*%i),
283   1.229787425764198*%i-3.675726471068782,15);
284 true;
286 test_value(
287   expintegral_e(1,-1.5-%i*18.0),
288   0.181696882955049 + 0.16898654452488*%i,15);
289 true;
291 test_value(
292   expintegral_e(1,-1.5-%i*180.0),
293   .01998793885396577-.01484463667769751*%i,15);
294 true;
296 test_value(
297   expintegral_e(1,-15.0-%i*50.0),
298   62936.65453487506*%i-462.2396897671588,10);
299 true;
301 test_value(
302   expintegral_e(1,-15.0-%i*180.0),
303   15302.16784585461-9678.322938932864*%i,10);
304 true;
306 test_value(
307   expintegral_e(1,-150.0-%i*540.0),
308   2.479041623323267e+62*%i+2.105063890337474e+61,13-62);
309 true;
311 test_value(
312   expintegral_e(1,1.5+%i*18),
313   .01021327940204757-.006754558125326895*%i,15);
314 true;
316 test_value(
317   expintegral_e(1,15.0+%i*180.0),
318   1.129118870333903e-9*%i+1.261123517801268e-9,15);
319 true;
321 test_value(
322   expintegral_e(1,150.0+%i*540.0),
323   7.503677061484707e-69-1.036533879419174e-68*%i,15-69);
324 true;
330 /*******************************************************************************
331    Do tests for Bigfloat evaluation (values from functions.wolfram.com) 
332 *******************************************************************************/
334 /* Remember actual fpprec */
335 (oldfpprec:fpprec, fpprec:64, done);
336 done;
338 test_value(
339   expintegral_e(1,0.25b0),
340   1.044282634443738194536438161232282251891528374744802718635140468b0,
341   63);
342 true;
344 test_value(
345   expintegral_e(1,0.50b0),
346   0.5597735947761608117467959393150852352268468903163535152482932191b0,
347   63);
348 true;
350 test_value(
351   expintegral_e(1,1.50b0),
352   0.1000195824066326519019093399116669782617300061403505850505670604b0,
353   63);
354 true;
356 test_value(
357   expintegral_e(1,2.50b0),
358   0.02491491787026973549562801227460963594584838471142737701193454450b0,
359   64);
360 true;
362 test_value(
363   expintegral_e(1,0.5b0+%i),
364   - 0.0713947110424527235558849799368449390033695834555289289265924760b0 +
365   - 0.3574937736521626512548586934573247791553769710980144511429423771b0*%i,
366   62);
367 true;
369 test_value(
370   expintegral_ei(-0.5b0),
371   -0.5597735947761608117467959393150852352268468903163535152482932191b0,
372   63);
373 true;
375 test_value(
376   expintegral_ei(0.5b0),
377   0.4542199048631735799205238126628023652814055543526420451628177867b0,
378   63);
379 true;
381 test_value(
382   expintegral_ei(1.5b0),
383   3.301285449129797837957411316134742787656606985453422100762913970b0,
384   63);
385 true;
387 test_value(
388   expintegral_ei(1.5b0+%i),
389   2.799671509755731161198928033788660326920401659332834224954077897b0 + 
390   2.737079221508684508327603325281307039723914975958035767630503279b0*%i,
391   63);
392 true;
394 test_value(
395   expintegral_li(-0.5b0),
396   0.058454819131659372625658464865614145649609292000300491927658936b0 + 
397   3.265670174417890088883763125722547571780846521093778812746639381b0*%i,
398   63);
399 true;
401 test_value(
402   expintegral_li(0.5b0),
403   -0.3786710430610879767272071846365609805512340409782139969444209417b0,
404   63);
405 true;
407 test_value(
408   expintegral_li(1.5b0),
409   0.1250649863152963559943500047955129365420883239309922910956161087b0,
410   63);
411 true;
413 test_value(
414   expintegral_li(1.5b0+%i),
415   0.955549209862142878221358892328220253212569406502554250070344843b0 + 
416   1.567751569664112401647194996566519972267813732803503976674771406b0*%i,
417   62);
418 true;
420 test_value(
421   expintegral_si(-0.5b0),
422   -0.4931074180430666891616267075727646536413371384287211316602426140b0,
423   63);
424 true;
426 test_value(
427   expintegral_si(0.5b0),
428   0.4931074180430666891616267075727646536413371384287211316602426140b0,
429   63);
430 true;
432 test_value(
433   expintegral_si(1.5b0),
434   1.324683531172119680370472846875214042814140454625112248480722201b0,
435   62.3b0);
436 true;
438 test_value(
439   expintegral_si(1.5b0+%i),
440   1.5324237219775529809013400344036774093828247429181012177841253510b0 + 
441   0.6883092845662321107998443833405013522538814097236134325126725862b0*%i,
442   63);
443 true;
445 test_value(
446   expintegral_ci(-0.5b0),
447   -0.177784078806612901335810271070569078090519474812621968666825358b0 + 
448   3.141592653589793238462643383279502884197169399375105820974944592b0*%i,
449   63);
450 true;
452 test_value(
453   expintegral_ci(0.5b0),
454    -0.1777840788066129013358102710705690780905194748126219686668253576b0,
455   63);
456 true;
458 test_value(
459   expintegral_ci(1.5b0),
460   0.4703563171953998866750821522365605516152327005730752953941674282b0,
461   62.2b0);
462 true;
464 test_value(
465   expintegral_ci(1.5b0+%i),
466   0.7839176551092182755417770543442248219437012644680041434724902541b0 - 
467   0.0812194103150585766889706525256841552731980806778019973545925276b0*%i,
468   63);
469 true;
471 test_value(
472   expintegral_shi(-0.5b0),
473   -0.5069967498196671958336598759889438002541262223344977802055555029b0,
474   63);
475 true;
477 test_value(
478   expintegral_shi(0.5b0),
479   0.5069967498196671958336598759889438002541262223344977802055555029b0,
480   63);
481 true;
483 test_value(
484   expintegral_shi(1.5b0),
485   1.700652515768215244929660328023204882959168495796886342906740515b0,
486   63);
487 true;
489 test_value(
490   expintegral_shi(1.5b0+%i),
491   1.405456250564077987167827011345745730833834776665624179949753110b0 + 
492   1.324296049597592107364382165946694647067190542728881672301521998b0*%i,
493   63);
494 true;
496 test_value(
497   expintegral_chi(-0.5b0),
498   -0.052776844956493615913136063326141434972720667981855735042737716b0 + 
499   3.141592653589793238462643383279502884197169399375105820974944592b0*%i,
500   63);
501 true;
503 test_value(
504   expintegral_chi(0.5b0),
505   -0.05277684495649361591313606332614143497272066798185573504273771621b0,
506   63);
507 true;
509 test_value(
510   expintegral_chi(1.5b0),
511   1.600632933361582593027750988111537904697438489656535757856173455b0,
512   63);
513 true;
515 test_value(
516   expintegral_chi(1.5b0+%i),
517   1.394215259191653174031101022442914596086566882667210045004324787b0 + 
518   1.412783171911092400963221159334612392656724433229154095328981281b0*%i,
519   63);
520 true;
523 /* restore fpprec */
524 (fpprec:oldfpprec, done);
525 done;
527 /*******************************************************************************
528    Do tests for additional big float evaluation 
529 *******************************************************************************/
531 /* Remember actual fpprec */
532 (oldfpprec:fpprec, fpprec:64, done);
533 done;
535 test_value(
536   expintegral_e(1,-1.5B0-%i*18.0B0),
537   1.689865445248795461022355866185975300284302677290211138169639712b-1*%i
538  +1.816968829550486868009237590887639256845378383882275967782801257b-1,63);
539 true;
541 test_value(
542   expintegral_e(1,-15.0B0-%i*50.0B0),
543   6.293665453487508854049428479450922789578087068032898765875144175b4*%i
544  -4.62239689767167158016168999268727094583699040537958778438547305b2,59);
545 true;
547 test_value(
548   expintegral_e(1,-1.5B0-%i*180.0B0),
549   1.998793885396577954161433015440646790143523658773070463290940391b-2
550  -1.48446366776975235341069111717359420933661819609933627048078479b-2*%i,64);
551 true;
553 test_value(
554   expintegral_e(1,-15.0B0-%i*180.0B0),
555   1.530216784585460659290957316900806622008438558612666623998533076b4
556  -9.678322938932862392009065659301165442754946683378713459319981218b3*%i,59);
557 true;
559 test_value(
560   expintegral_e(1,-150.0B0-%i*540.0B0),
561   2.47904162332326778788226522449358779416653162097669293288256403b62*%i
562  +2.105063890337477483794346786409993155624883726578689067616685218b61,1);
563 true;
565 test_value(
566   expintegral_e(1,1.5B0+%i*18.0B0),
567   1.021327940204755864240745590773899499558121729025330486880547885b-2
568  -6.754558125326884112691473105665013998699325818242672495399974279b-3*%i,65);
569 true;
571 test_value(
572   expintegral_e(1,15.0B0+%i*180.0B0),
573   1.129118870333903101943908390287222351537018836722867882019975027b-9*%i
574  +1.261123517801267593713906360450736314138456246082714062225342743b-9,72);
575 true;
577 test_value(
578   expintegral_e(1,150.0B0+%i*540.0B0),
579   7.50367706148470796758191535417179842322266910293477644515984948b-69
580  -1.03653387941917390868865781356557208741441722016128718318801276b-68*%i,-64-69);
581 true;
584 /* restore fpprec */
585 (fpprec:oldfpprec, done);
586 done;
588 /*******************************************************************************
589    Do tests for a parameter not an positive integer (double float arithmetic)
590 *******************************************************************************/
592 test_value(
593   expintegral_e(0.5,0.5),
594   0.7953794908467029,
595   15);
596 true;
598 /* functions.wolfram.com get a small imaginary part.
599    Our algorithm gives a pure real result. That's correct. */
601 test_value(
602   expintegral_e(1.5,0.5),
603   0.4176818285785640 + 0.10d-16*%i,
604   15);
605 true;
607 test_value(
608   expintegral_e(1.5,1.5),
609   0.08475846798926254 + 0.10d-17*%i,
610   15);
611 true;
613 /* The algorithm works for an Complex parameter (not Bigfloat) too */
615 test_value(
616   expintegral_e(-0.25+%i,0.5),
617   0.7029675553348383 - 1.0854583859408265*%i,
618   15);
619 true;
621 test_value(
622   expintegral_e(0.5+%i,0.5),
623   0.5037890474837921 - 0.4713445822591324*%i,
624   15);
625 true;
627 test_value(
628   expintegral_e(0.5+%i,1.5),
629   0.10617497621984483 - 0.04370294969886679*%i,
630   15);
631 true;
633 /* For a negative integer as parameter the function will be expanded in a
634    finite series. We compare this result with the direct numerically 
635    evaluation of the function. */
637 test_value(expintegral_e(-3,0.5)-expintegral_e(-3.0,0.5),0.0,13);
638 true;
640 /*******************************************************************************
641    Do tests for a parameter not an integer (Bigfloat arithmetic)
642 *******************************************************************************/
644 /* Remember actual fpprec */
645 (oldfpprec:fpprec, fpprec:64, done);
646 done;
648 test_value(
649   expintegral_e(0.5,0.5b0),
650   0.7953794908467028960691560442509551305541581704269437959894550131b0,
651   61);
652 true;
654 /* functions.wolfram.com get a small imaginary part.
655    Our algorithm gives a pure real result. That's correct. */
657 test_value(
658   expintegral_e(1.5,0.5b0),
659   0.4176818285785639511384430257314057763296781005474301153763293043b0 + 
660   0.10b-64*%i,
661   62);
662 true;
664 test_value(
665   expintegral_e(1.5,1.5b0),
666   0.08475846798926253566550159750486026149596073485977905694436004042b0 + 
667   0.10b-65*%i,
668   63);
669 true;
671 /* restore fpprec */
672 (fpprec:oldfpprec, done);
673 done;
675 /*******************************************************************************
676    We check the transformation to another representation
677 *******************************************************************************/
679 /* to prevent the simplification of 1/2*(log(z)-log(1/z))=0 which is wrong
680    for z a negative and real value we switch of logexpand */
682 (oldlogexpand:logexpand, logexpand:false);
683 false;
685 expintrep:gamma_incomplete;
686 gamma_incomplete;
688 expintegral_e(n,z);
689 gamma_incomplete(1-n,z)*z^(n-1);
691 expintegral_e(n,z);
692 z^(n-1)*gamma_incomplete(1-n,z);
694 expintegral_e1(z);
695 gamma_incomplete(0,z);
697 expintegral_ei(z);
698 (log(z)-log(1/z))/2-log(-z)-gamma_incomplete(0,-z);
700 expintegral_li(z);
701 (log(log(z))-log(1/log(z)))/2-log(-log(z))-gamma_incomplete(0,-log(z));
703 expintegral_si(z);
704 %i*(-log(%i*z)+log(-%i*z)-gamma_incomplete(0,%i*z)+gamma_incomplete(0,-%i*z))/2;
706 expintegral_ci(z);
707 log(z)-(log(%i*z)+log(-%i*z)+gamma_incomplete(0,%i*z)+gamma_incomplete(0,-%i*z))/2;
709 expintegral_shi(z);
710 (log(z)-log(-z)+gamma_incomplete(0,z)-gamma_incomplete(0,-z))/2;
712 expintegral_chi(z);
713 (-log(z)+log(-z)+gamma_incomplete(0,z)+gamma_incomplete(0,-z))/-2;
715 expintrep:false;
716 false;
718 (logexpand:oldlogexpand,done);
719 done;
721 /* Do the functions have the appropriate symmetrie? 
722    
723    With the exception of exponential_ci we get for all tests a double float
724    zero or a Bigfloat zero. Because we use numercial evaluation this is not
725    natural and perhaps an effect only true with the GCL Compiler.
726    For the function expintegral_ci we get a small imaginary contribution which
727    is nearby zero.
729    Can this be verified by other Compilers?
732 z:0.5+%i;
733 0.5+%i;
735 expintegral_e(1,z) - conjugate(expintegral_e(1,conjugate(z)));
736 0.0;
738 expintegral_e(2,z) - conjugate(expintegral_e(2,conjugate(z)));
739 0.0;
741 expintegral_e(5,z) - conjugate(expintegral_e(5,conjugate(z)));
742 0.0;
744 expintegral_e(10,z) - conjugate(expintegral_e(10,conjugate(z)));
745 0.0;
747 expintegral_e1(z) - conjugate(expintegral_e1(conjugate(z)));
748 0.0;
750 expintegral_ei(z) - conjugate(expintegral_ei(conjugate(z)));
751 0.0;
753 expintegral_li(z) - conjugate(expintegral_li(conjugate(z)));
754 0.0;
756 expintegral_si(z) - conjugate(expintegral_si(conjugate(z)));
757 0.0;
759 test_value(
760   expintegral_ci(z) - conjugate(expintegral_ci(conjugate(z))),
761   0.0,15);
762 true;
764 expintegral_shi(z) - conjugate(expintegral_shi(conjugate(z)));
765 0.0;
767 expintegral_chi(z) - conjugate(expintegral_chi(conjugate(z)));
768 0.0;
770 /* The same for Bigfloats */
772 z:0.5b0+%i;
773 0.5b0+%i;
775 expintegral_e(1,z) - conjugate(expintegral_e(1,conjugate(z)));
776 0.0b0;
778 expintegral_e(2,z) - conjugate(expintegral_e(2,conjugate(z)));
779 0.0b0;
781 expintegral_e(5,z) - conjugate(expintegral_e(5,conjugate(z)));
782 0.0b0;
784 expintegral_e(10,z) - conjugate(expintegral_e(10,conjugate(z)));
785 0.0b0;
787 expintegral_e1(z) - conjugate(expintegral_e1(conjugate(z)));
788 0.0b0;
790 expintegral_ei(z) - conjugate(expintegral_ei(conjugate(z)));
791 0.0b0;
793 expintegral_li(z) - conjugate(expintegral_li(conjugate(z)));
794 0.0b0;
796 expintegral_si(z) - conjugate(expintegral_si(conjugate(z)));
797 0.0b0;
799 expintegral_ci(z) - conjugate(expintegral_ci(conjugate(z)));
800 0.0b0;
802 expintegral_shi(z) - conjugate(expintegral_shi(conjugate(z)));
803 0.0b0;
805 expintegral_chi(z) - conjugate(expintegral_chi(conjugate(z)));
806 0.0b0;
808 kill(z);
809 done;
811 /******************************************************************************
813    Define test functions to do the tests with the numerical data
814    of the tables of A&S.
816    This routine is based on the algorithm to test the Wronskians in the
817    file rtest14.mac which was implemented by Raymond Toy.
819 ******************************************************************************/
821 (test_table(func,table,rows,eps) :=
822 block([badpoints : [],
823        abserr    : 0,
824        maxerr    : -1,
825        numer     : true],
826   for i:1 thru rows step 1 do
827   (
828     z      : table[i,0],
829     result : rectform(func(z)),
830     answer : table[i,1],
831     abserr : abs(result-answer),
832     maxerr : max(maxerr,abserr),
833     if abserr > eps then
834     (
835       badpoints : cons ([z,result,answer,abserr],badpoints)
836     )
837   ),
838   if badpoints # [] then
839     cons(maxerr,badpoints)
840   else
841     badpoints
842 ),done);
843 done;
845 /* Test function for a table with Complex values */
847 (test_complex_table(func,table,rows,eps) :=
848 block([badpoints : [],
849        abserr    : 0,
850        maxerr    : -1,
851        numer     : true],
852   for i:1 thru rows step 1 do
853   (
854     z      : table[i,0]+%i*table[i,1],
855     result : rectform(func(z)),
856     answer : (table[i,2]+%i*table[i,3]),
857     abserr : abs(result-answer),
858     maxerr : max(maxerr,abserr),
859     if abserr > eps then
860     (
861       badpoints : cons ([z,result,answer,abserr],badpoints)
862     )
863   ),
864   if badpoints # [] then
865     cons(maxerr,badpoints)
866   else
867     badpoints
868 ),done);
869 done;
871 /*****************************************************************************/
873 /* Values for E[-2](z), E[-3](z) and E[-4](z) */
875 block(
876 em2 : make_array(flonum,5,2),
877 fillarray(em2,[
878 0.0,0.0,               /* the first entry isn't tested */
879 0.5,15.7697971525285,
880 1.0,1.83939720585721
881 ]),done);
882 done;
884 block(
885 em3 : make_array(flonum,5,2),
886 fillarray(em3,[
887 0.0,   0.0,               /* the first entry isn't tested */
888 0.5,  95.8318442345961,
889 1.0,  5.88607105874308
890 ]),done);
891 done;
893 block(
894 em4 : make_array(flonum,5,2),
895 fillarray(em4,[
896 0.0,   0.0,               /* the first entry isn't tested */
897 0.5, 767.8678151961939,
898 1.0, 23.91216367614375
899 ]),done);
900 done;
902 /* Values for E2(z) from wolfram.functions.com */
904 block(
905 e2 : make_array(flonum,20,4),
906 fillarray(e2,[
907 0.0, 0.0,   0.0,                0.0,
908 0.5, 0.0,   0.326643862324553,  0.0,
909 1.0, 0.0,   0.148495506775922,  0.0,
910 1.5, 0.0,   0.0731007865384809, 0.0,
912 -1.5, 0.0, -0.47023910335663,   -4.71238898038469,
913 -1.0, 0.0,  0.82316401210311,   -3.14159265358979,
914 -0.5, 0.0,  1.42161131826854,   -1.57079632679490,
916 0.5, 1.0,   0.005913495891524,  -0.260236353676039,
917 1.0, 1.0,   0.0191599508550726, -0.1305169650657347,
918 1.5, 1.0,   0.0152091306647864, -0.0662678635026173,
920 -1.5, 1.0,  -2.18255375782701,  -1.57830995398609,
921 -1.0, 1.0,  -1.04975484772724,  -1.27655210369426,
922 -0.5, 1.0,  -0.386354424417090, -0.872308287488887
923 ]),done);
924 done;
926 /* Do the tests with the above test data */
928 test_table(lambda([z],expintegral_e(-2,z)),'em2,2,3.5e-14);
931 test_table(lambda([z],expintegral_e(-3,z)),'em3,2,2.9e-14);
934 test_table(lambda([z],expintegral_e(-4,z)),'em4,2,1.0e-15);
937 test_complex_table(lambda([z],expintegral_e(2,z)),'e2,12,3.9e-15);
940 /*****************************************************************************
941    A&S Table 5.1 p. 238, values for Si(x)/x from 0.00 through 0.50 
942 ******************************************************************************/
944 block(
945 si_1 : make_array(flonum,51,2),
946 fillarray(si_1,[   /* We start the loop for the test with i=1. */
947 0.00,1.0000000000, /* Therefore we don't do the the test for the first value */
948 0.01,0.9999944444,
949 0.02,0.9999777781,
950 0.03,0.9999500014,
951 0.04,0.9999111154,
952 0.05,0.9998611215,
953 0.06,0.9998000216,
954 0.07,0.9997278178,
955 0.08,0.9996445127,
956 0.09,0.9995501094,
957 0.10,0.9994446111,
958 0.11,0.9993280218,
959 0.12,0.9992003455,
960 0.13,0.9990615870,
961 0.14,0.9989117512,
962 0.15,0.9987508435,
963 0.16,0.9985788696,
964 0.17,0.9983958357,
965 0.18,0.9982017486,
966 0.19,0.9979966151,
967 0.20,0.9977804427,
968 0.21,0.9975532390,
969 0.22,0.9973150122,
970 0.23,0.9970657709,
971 0.24,0.9968055242,
972 0.25,0.9965342813,
973 0.26,0.9962520519,
974 0.27,0.9959588464,
975 0.28,0.9956546750,
976 0.29,0.9953395489,
977 0.30,0.9950134793,
978 0.31,0.9946764779,
979 0.32,0.9943285570,
980 0.33,0.9939697288,
981 0.34,0.9936000064,
982 0.35,0.9932194028,
984 0.36,0.9928279320,
985 0.37,0.9924256078,
986 0.38,0.9920124449,
987 0.39,0.9915884579,
988 0.40,0.9911536619,
989 0.41,0.9907080728,
990 0.42,0.9902517063,
991 0.43,0.9897845790,
992 0.44,0.9893067074,
993 0.45,0.9888181089,
994 0.46,0.9883188008,
995 0.47,0.9878088010,
996 0.48,0.9872881278,
997 0.49,0.9867567998,
998 0.50,0.9862148361
999 ]),done);
1000 done;
1002 test_table(lambda([z],expintegral_si(z)/z),'si_1,50,1.25e-10);
1005 /******************************************************************************
1006    A&S Table 5.1 p. 239-243, values for Si(x) from 0.50 through 10.0
1007 ******************************************************************************/
1009 block(
1010 si_2 : make_array(flonum,231,2),
1011 fillarray(si_2,[
1013 0.50,0.4931074180,
1014 0.51,0.5026877506,
1015 0.52,0.5122515212,
1016 0.53,0.5217984228,
1017 0.54,0.5313281492,
1018 0.55,0.5408403951,
1019 0.56,0.5503348563,
1020 0.57,0.5598112298,
1021 0.58,0.5692692137,
1022 0.59,0.5787085069,
1023 0.60,0.5881288096,
1024 0.61,0.5975298233,
1025 0.62,0.6069112503,
1026 0.63,0.6162727944,
1027 0.64,0.6256141603,
1028 0.65,0.6349350541,
1029 0.66,0.6442351831,
1030 0.67,0.6535142557,
1031 0.68,0.6627719817,
1032 0.69,0.6720080721,
1033 0.70,0.6812222391,
1034 0.71,0.6904141965,
1035 0.72,0.6995836590,
1036 0.73,0.7087303430,
1037 0.74,0.7178539660,
1038 0.75,0.7269542472,
1039 0.76,0.7360309067,
1040 0.77,0.7450836664,
1041 0.78,0.7541122494,
1042 0.79,0.7631163804,
1043 0.80,0.7720957855,
1044 0.81,0.7810501921,
1045 0.82,0.7899793293,
1046 0.83,0.7988829277,
1047 0.84,0.8077607191,
1048 0.85,0.8166124372,
1049 0.86,0.8254378170,
1050 0.87,0.8342365953,
1051 0.88,0.8430085102,
1052 0.89,0.8517533016,
1053 0.90,0.8604707107,
1054 0.91,0.8691604808,
1055 0.92,0.8778223564,
1056 0.93,0.8864560839,
1057 0.94,0.8950614112,
1058 0.95,0.9036380880,
1059 0.96,0.9121858656,
1060 0.97,0.9207044970,
1061 0.98,0.9291937370,
1062 0.99,0.9376533420,
1064 1.00,0.9460830704,
1065 1.01,0.9544826820,
1066 1.02,0.9628519387,
1067 1.03,0.9711906039,
1068 1.04,0.9794984431,
1069 1.05,0.9877752233,
1070 1.06,0.9960207135,
1071 1.07,1.0042346846,
1072 1.08,1.0124169091,
1073 1.09,1.0205671617,
1074 1.10,1.0286852187,
1075 1.11,1.0367708583,
1076 1.12,1.0448238608,
1077 1.13,1.0528440082,
1078 1.14,1.0608310845,
1079 1.15,1.0687848757,
1080 1.16,1.0767051696,
1081 1.17,1.0845917561,
1082 1.18,1.0924444270,
1083 1.19,1.1002629760,
1084 1.20,1.1080471990,
1085 1.21,1.1157968937,
1086 1.22,1.1235118599,
1087 1.23,1.1311918994,
1088 1.24,1.1388368160,
1089 1.25,1.1464464157,
1090 1.26,1.1540205063,
1091 1.27,1.1615588978,
1092 1.28,1.1690614023,
1093 1.29,1.1765278340,
1094 1.30,1.1839580091,
1095 1.31,1.1913517459,
1096 1.32,1.1987088649,
1097 1.33,1.2060291886,
1098 1.34,1.2133125418,
1099 1.35,1.2205587513,
1100 1.36,1.2277676460,
1101 1.37,1.2349390571,
1102 1.38,1.2420728180,
1103 1.39,1.2491687640,
1104 1.40,1.2562267328,
1105 1.41,1.2632465642,
1106 1.42,1.2702281004,
1107 1.43,1.2771711854,
1108 1.44,1.2840756658,
1109 1.45,1.2909413902,
1110 1.46,1.2977682094,
1111 1.47,1.3045559767,
1112 1.48,1.3113045473,
1113 1.49,1.3180137788,
1115 1.50,1.3246835312,
1116 1.51,1.3313136664,
1117 1.52,1.3379040489,
1118 1.53,1.3444545453,
1119 1.54,1.3509650245,
1120 1.55,1.3574353577,
1121 1.56,1.3638654183,
1122 1.57,1.3702550823,
1123 1.58,1.3766042276,
1124 1.59,1.3829127345,
1125 1.60,1.3891804859,
1126 1.61,1.3954073666,
1127 1.62,1.4015932640,
1128 1.63,1.4077380678,
1129 1.64,1.4138416698,
1130 1.65,1.4199039644,
1131 1.66,1.4259248482,
1132 1.67,1.4319042202,
1133 1.68,1.4378419816,
1134 1.69,1.4437380361,
1135 1.70,1.4495922897,
1136 1.71,1.4554046507,
1137 1.72,1.4611750299,
1138 1.73,1.4669033404,
1139 1.74,1.4725894974,
1140 1.75,1.4782334189,
1141 1.76,1.4838350249,
1142 1.77,1.4893942379,
1143 1.78,1.4949109830,
1144 1.79,1.5003851872,
1145 1.80,1.5058167803,
1146 1.81,1.5112056942,
1147 1.82,1.5165518633,
1148 1.83,1.5218552243,
1149 1.84,1.5271157165,
1150 1.85,1.5323332813,
1151 1.86,1.5375078626,
1152 1.87,1.5426394066,
1153 1.88,1.5477278621,
1154 1.89,1.5527731800,
1155 1.90,1.5577753137,
1156 1.91,1.5627342192,
1157 1.92,1.5676498545,
1158 1.93,1.5725221801,
1159 1.94,1.5773511591,
1160 1.95,1.5821367567,
1161 1.96,1.5868789407,
1162 1.97,1.5915776810,
1163 1.98,1.5962329502,
1164 1.99,1.6008447231,
1166 2.0,1.6054129768,
1167 2.1,1.6486986362,
1168 2.2,1.6876248272,
1169 2.3,1.7222074818,
1170 2.4,1.7524855008,
1171 2.5,1.7785201734,
1172 2.6,1.8003944505,
1173 2.7,1.8182120765,
1174 2.8,1.8320965891,
1175 2.9,1.8421901946,
1176 3.0,1.8486525280,
1177 3.1,1.8516593077,
1178 3.2,1.8514008970,
1179 3.3,1.8480807828,
1180 3.4,1.8419139833,
1181 3.5,1.8331253987,
1182 3.6,1.8219481156,
1183 3.7,1.8086216809,
1184 3.8,1.7933903548,
1185 3.9,1.7765013604,
1186 4.0,1.7582031389,
1187 4.1,1.7387436265,
1188 4.2,1.7183685637,
1189 4.3,1.6973198507,
1190 4.4,1.6758339594,
1191 4.5,1.6541404144,
1192 4.6,1.6324603525,
1193 4.7,1.6110051718,
1194 4.8,1.5899752782,
1195 4.9,1.5695589381,
1196 5.0,1.5499312449,
1197 5.1,1.5312532047,
1198 5.2,1.5136709468,
1199 5.3,1.4973150636,
1200 5.4,1.4823000826,
1201 5.5,1.4687240727,
1202 5.6,1.4566683847,
1203 5.7,1.4461975285,
1204 5.8,1.4373591823,
1205 5.9,1.4301843341,
1206 6.0,1.4246875513,
1207 6.1,1.4208673734,
1208 6.2,1.4187068241,
1209 6.3,1.4181740348,
1210 6.4,1.4192229740,
1211 6.5,1.4217942744,
1212 6.6,1.4258161486,
1213 6.7,1.4312053853,
1214 6.8,1.4378684161,
1215 6.9,1.4457024427,
1217 7.0,1.4545966142,
1218 7.1,1.4644332441,
1219 7.2,1.4750890554,
1220 7.3,1.4864364451,
1221 7.4,1.4983447533,
1222 7.5,1.5106815309,
1223 7.6,1.5233137914,
1224 7.7,1.5361092381,
1225 7.8,1.5489374581,
1226 7.9,1.5616710702,
1227 8.0,1.5741868217,
1228 8.1,1.5863666225,
1229 8.2,1.5980985106,
1230 8.3,1.6092775419,
1231 8.4,1.6198065968,
1232 8.5,1.6295970994,
1233 8.6,1.6385696454,
1234 8.7,1.6466545309,
1235 8.8,1.6537921861,
1236 8.9,1.6599335052,
1237 9.0,1.6650400758,
1238 9.1,1.6690843056,
1239 9.2,1.6720494480,
1240 9.3,1.6739295283,
1241 9.4,1.6747291725,
1242 9.5,1.6744633423,
1243 9.6,1.6731569803,
1244 9.7,1.6708445697,
1245 9.8,1.6675696169,
1246 9.9,1.6633840566,
1247 10.,1.6583475942
1248 ]),done);
1249 done;
1251 test_table(lambda([z],expintegral_si(z)),'si_2,230,1.95e-10);
1254 /******************************************************************************
1255    A&S Table 5.1 p. 238, values for (Ci(x)-log(x)-%gamma)/x 
1256                          from 0.00 through 0.50
1257 ******************************************************************************/
1259 block(
1260 ci_1 : make_array(flonum,55,2),
1261 fillarray(ci_1,[
1262 0.00,-0.2500000000,
1263 0.01,-0.2499989583,
1264 0.02,-0.2499958333,
1265 0.03,-0.2499906250,
1266 0.04,-0.2499833339,
1267 0.05,-0.2499739598,
1268 0.06,-0.2499625030,
1269 0.07,-0.2499489639,
1270 0.08,-0.2499333429,
1271 0.09,-0.2499156402,
1272 0.10,-0.2498958564,
1273 0.11,-0.2498739923,
1274 0.12,-0.2498500480,
1275 0.13,-0.2498240244,
1276 0.14,-0.2497959223,
1277 0.15,-0.2497657422,
1278 0.16,-0.2497334850,
1279 0.17,-0.2496991516,
1280 0.18,-0.2496627429,
1281 0.19,-0.2496242598,
1282 0.20,-0.2495837035,
1283 0.21,-0.2495410749,
1284 0.22,-0.2494963752,
1285 0.23,-0.2494496056,
1286 0.24,-0.2494007674,
1287 0.25,-0.2493498618,
1288 0.26,-0.2492968902,
1289 0.27,-0.2492418540,
1290 0.28,-0.2491847546,
1291 0.29,-0.2491255938,
1292 0.30,-0.2490643727,
1293 0.31,-0.2490010933,
1294 0.32,-0.2489357573,
1295 0.33,-0.2488683662,
1296 0.34,-0.2487989219,
1297 0.35,-0.2487274263,
1298 0.36,-0.2486538813,
1299 0.37,-0.2485782887,
1300 0.38,-0.2485006507,
1301 0.39,-0.2484209693,
1302 0.40,-0.2483392466,
1303 0.41,-0.2482554849,
1304 0.42,-0.2481696860,
1305 0.43,-0.2480818528,
1306 0.44,-0.2479919870,
1307 0.45,-0.2479000913,
1308 0.46,-0.2478061685,
1309 0.47,-0.2477102206,
1310 0.48,-0.2476122500,
1311 0.49,-0.2475122600,
1312 0.50,-0.2474102526]), done);
1313 done;
1315 test_table(
1316   lambda([z],(expintegral_ci(z)-log(z)-%gamma)/z^2),'ci_1,50,1.95e-10);
1319 /******************************************************************************
1320    A&S Table 5.1 p. 239-243, values for Ci(x) from 0.50 through 10.0
1321 ******************************************************************************/
1323 block(
1324 ci_2 : make_array(flonum,235,2),
1325 fillarray(ci_2,[
1327 0.50,-0.1777840788,
1328 0.51,-0.1604532390,
1329 0.52,-0.1435537358,
1330 0.53,-0.1270707938,
1331 0.54,-0.1109904567,
1332 0.55,-0.0952995274,
1333 0.56,-0.0799855129,
1334 0.57,-0.0650365744,
1335 0.58,-0.0504414815,
1336 0.59,-0.0361895707,
1337 0.60,-0.0222707070,
1338 0.61,-0.0086752486,
1339 0.62,+0.0046059849,
1340 0.63,+0.0175817424,
1341 0.64,+0.0302603686,
1342 0.65,+0.0426498293,
1343 0.66,+0.0547577343,
1344 0.67,+0.0665913594,
1345 0.68,+0.0781576659,
1346 0.69,+0.0894633195,
1347 0.70,+0.1005147070,
1348 0.71,+0.1113179525,
1349 0.72,+0.1218789322,
1350 0.73,+0.1322032879,
1351 0.74,+0.1422964404,
1352 0.75,+0.1521636010,
1353 0.76,+0.1618097827,
1354 0.77,+0.1712398110,
1355 0.78,+0.1804583335,
1356 0.79,+0.1894698290,
1357 0.80,+0.1982786160,
1358 0.81,+0.2068888610,
1359 0.82,+0.2153045859,
1360 0.83,+0.2235296752,
1361 0.84,+0.2315678824,
1362 0.85,+0.2394228368,
1363 0.86,+0.2470980486,
1364 0.87,+0.2545969153,
1365 0.88,+0.2619227264,
1366 0.89,+0.2690786687,
1367 0.90,+0.2760678305,
1368 0.91,+0.2828932065,
1369 0.92,+0.2895577018,
1370 0.93,+0.2960641358,
1371 0.94,+0.3024152458,
1372 0.95,+0.3086136908,
1373 0.96,+0.3146620547,
1374 0.97,+0.3205628495,
1375 0.98,+0.3263185183,
1376 0.99,+0.3319314382,
1378 1.00,0.3374039229,
1379 1.01,0.3427382254,
1380 1.02,0.3479365405,
1381 1.03,0.3530010067,
1382 1.04,0.3579337091,
1383 1.05,0.3627366810,
1384 1.06,0.3674119060,
1385 1.07,0.3719613201,
1386 1.08,0.3763868132,
1387 1.09,0.3806902312,
1388 1.10,0.3848733774,
1389 1.11,0.3889380142,
1390 1.12,0.3928858645,
1391 1.13,0.3967186134,
1392 1.14,0.4004379090,
1393 1.15,0.4040453647,
1394 1.16,0.4075425593,
1395 1.17,0.4109310390,
1396 1.18,0.4142123185,
1397 1.19,0.4173878816,
1398 1.20,0.4204591829,
1399 1.21,0.4234276482,
1400 1.22,0.4262946760,
1401 1.23,0.4290616379,
1402 1.24,0.4317298802,
1403 1.25,0.4343007240,
1404 1.26,0.4367754665,
1405 1.27,0.4391553815,
1406 1.28,0.4414417205,
1407 1.29,0.4436357130,
1408 1.30,0.4457385675,
1409 1.31,0.4477514723,
1410 1.32,0.4496755955,
1411 1.33,0.4515120863,
1412 1.34,0.4532620753,
1413 1.35,0.4549266752,
1414 1.36,0.4565069811,
1415 1.37,0.4580040711,
1416 1.38,0.4594190071,
1417 1.39,0.4607528349,
1418 1.40,0.4620065851,
1419 1.41,0.4631812730,
1420 1.42,0.4642778995,
1421 1.43,0.4652974513,
1422 1.44,0.4662409014,
1423 1.45,0.4671092094,
1424 1.46,0.4679033219,
1425 1.47,0.4686241732,
1426 1.48,0.4692726848,
1427 1.49,0.4698497667,
1429 1.50,0.4703563172,
1430 1.51,0.4707932232,
1431 1.52,0.4711613608,
1432 1.53,0.4714615952,
1433 1.54,0.4716947815,
1434 1.55,0.4718617642,
1435 1.56,0.4719633785,
1436 1.57,0.4720004495,
1437 1.58,0.4719737932,
1438 1.59,0.4718842164,
1439 1.60,0.4717325169,
1440 1.61,0.4715194840,
1441 1.62,0.4712458984,
1442 1.63,0.4709125325,
1443 1.64,0.4705201507,
1444 1.65,0.4700695096,
1445 1.66,0.4695613580,
1446 1.67,0.4689964372,
1447 1.68,0.4683754812,
1448 1.69,0.4676992169,
1449 1.70,0.4669683642,
1450 1.71,0.4661836359,
1451 1.72,0.4653457385,
1452 1.73,0.4644553716,
1453 1.74,0.4635132286,
1454 1.75,0.4625199967,
1455 1.76,0.4614763568,
1456 1.77,0.4603829839,
1457 1.78,0.4592405471,
1458 1.79,0.4580497097,
1459 1.80,0.4568111294,
1460 1.81,0.4555254585,
1461 1.82,0.4541933436,
1462 1.83,0.4528154262,
1463 1.84,0.4513923427,
1464 1.85,0.4499247241,
1465 1.86,0.4484131966,
1466 1.87,0.4468583813,
1467 1.88,0.4452608948,
1468 1.89,0.4436213486,
1469 1.90,0.4419403497,
1470 1.91,0.4402185005,
1471 1.92,0.4384563991,
1472 1.93,0.4366546388,
1473 1.94,0.4348138088,
1474 1.95,0.4329344941,
1475 1.96,0.4310172752,
1476 1.97,0.4290627288,
1477 1.98,0.4270714273,
1478 1.99,0.4250439391,
1480 2.0,+0.4229808288,
1481 2.1,+0.4005119878,
1482 2.2,+0.3750745990,
1483 2.3,+0.3471756175,
1484 2.4,+0.3172916174,
1485 2.5,+0.2858711964,
1486 2.6,+0.2533366161,
1487 2.7,+0.2200848786,
1488 2.8,+0.1864883896,
1489 2.9,+0.1528953242,
1490 3.0,+0.1196297860,
1491 3.1,+0.0869918312,
1492 3.2,+0.0552574117,
1493 3.3,+0.0246782846,
1494 3.4,-0.0045180779,
1495 3.5,-0.0321285485,
1496 3.6,-0.0579743519,
1497 3.7,-0.0819010013,
1498 3.8,-0.1037781504,
1499 3.9,-0.1234993492,
1500 4.0,-0.1409816979,
1501 4.1,-0.1561653918,
1502 4.2,-0.1690131568,
1503 4.3,-0.1795095725,
1504 4.4,-0.1876602868,
1505 4.5,-0.1934911221,
1506 4.6,-0.1970470797,
1507 4.7,-0.1983912468,
1508 4.8,-0.1976036133,
1509 4.9,-0.1947798060,
1510 5.0,-0.1900297497,
1511 5.1,-0.1834762632,
1512 5.2,-0.1752536023,
1513 5.3,-0.1655059586,
1514 5.4,-0.1543859262,
1515 5.5,-0.1420529476,
1516 5.6,-0.1286717494,
1517 5.7,-0.1144107808,
1518 5.8,-0.0994406647,
1519 5.9,-0.0839326741,
1520 6.0,-0.0680572439,
1521 6.1,-0.0519825290,
1522 6.2,-0.0358730193,
1523 6.3,-0.0198882206,
1524 6.4,-0.0041814110,
1525 6.5,+0.0111015195,
1526 6.6,+0.0258231381,
1527 6.7,+0.0398554400,
1528 6.8,+0.0530807167,
1529 6.9,+0.0653923140,
1531 7.0,+0.0766952785,
1532 7.1,+0.0869068881,
1533 7.2,+0.0959570643,
1534 7.3,+0.1037886664,
1535 7.4,+0.1103576658,
1536 7.5,+0.1156332032,
1537 7.6,+0.1195975293,
1538 7.7,+0.1222458319,
1539 7.8,+0.1235859542,
1540 7.9,+0.1236380071,
1541 8.0,+0.1224338825,
1542 8.1,+0.1200166733,
1543 8.2,+0.1164400055,
1544 8.3,+0.1117672931,
1545 8.4,+0.1060709196,
1546 8.5,+0.0994313586,
1547 8.6,+0.0919362396,
1548 8.7,+0.0836793696,
1549 8.8,+0.0747597196,
1550 8.9,+0.0652803850,
1551 9.0,+0.0553475313,
1552 9.1,+0.0450693325,
1553 9.2,+0.0345549134,
1554 9.3,+0.0239133045,
1555 9.4,+0.0132524187,
1556 9.5,+0.0026780588,
1557 9.6,-0.0077070361,
1558 9.7,-0.0178040977,
1559 9.8,-0.0275191811,
1560 9.9,-0.0367639563,
1561 10.,-0.0454564330
1562 ]),done);
1563 done;
1565 test_table(lambda([z],expintegral_ci(z)),'ci_2,230,3.2e-8);
1568 /******************************************************************************
1569    A&S Table 5.1 p. 238, values for (Ei(x)-log(x)-%gamma)/x 
1570                          from 0.00 through 0.50
1571 ******************************************************************************/
1573 block(
1574 ei_1 : make_array(flonum,200,2),
1575 fillarray(ei_1,[
1576 0.00,1.000000000,
1577 0.01,1.002505566,
1578 0.02,1.005022306,
1579 0.03,1.007550283,
1580 0.04,1.010089560,
1581 0.05,1.012640202,
1582 0.06,1.015202272,
1583 0.07,1.017775836,
1584 0.08,1.020360958,
1585 0.09,1.022957705,
1586 0.10,1.025566141,
1587 0.11,1.028186335,
1588 0.12,1.030818352,
1589 0.13,1.033462259,
1590 0.14,1.036118125,
1591 0.15,1.038786018,
1592 0.16,1.041466006,
1593 0.17,1.044158158,
1594 0.18,1.046862544,
1595 0.19,1.049579234,
1596 0.20,1.052308298,
1597 0.21,1.055049807,
1598 0.22,1.057803833,
1599 0.23,1.060570446,
1600 0.24,1.063349719,
1601 0.25,1.066141726,
1602 0.26,1.068946539,
1603 0.27,1.071764232,
1604 0.28,1.074594879,
1605 0.29,1.077438555,
1606 0.30,1.080295334,
1607 0.31,1.083165293,
1608 0.32,1.086048507,
1609 0.33,1.088945053,
1610 0.34,1.091855008,
1611 0.35,1.094778451,
1612 0.36,1.097715458,
1613 0.37,1.100666108,
1614 0.38,1.103630481,
1615 0.39,1.106608656,
1616 0.40,1.109600714,
1617 0.41,1.112606735,
1618 0.42,1.115626800,
1619 0.43,1.118660991,
1620 0.44,1.121709391,
1621 0.45,1.124772082,
1622 0.46,1.127849147,
1623 0.47,1.130940671,
1624 0.48,1.134046738,
1625 0.49,1.137167432,
1626 0.50,1.140302841]),done);
1627 done;
1629 test_table(lambda([z],(expintegral_ei(z)-log(z)-%gamma)/z),'ei_1,50,5.90e-10);
1632 /******************************************************************************
1633    A&S Table 5.1 p. 239-241, values for Ei(x) from 0.50 through 2.00
1634 ******************************************************************************/
1636 block(
1637 ei_2 : make_array(flonum,235,2),
1638 fillarray(ei_2,[
1640 0.50,0.454219905,
1641 0.51,0.487032167, 
1642 0.52,0.519530633,
1643 0.53,0.551730445,
1644 0.54,0.583645931,
1645 0.55,0.615290657,
1646 0.56,0.646677490,
1647 0.57,0.677818642,
1648 0.58,0.708725720,
1649 0.59,0.739409764,
1650 0.60,0.769881290,
1651 0.61,0.800150320,
1652 0.62,0.830226417,
1653 0.63,0.860118716,
1654 0.64,0.889835949,
1655 0.65,0.919386468,
1656 0.66,0.948778277,
1657 0.67,0.978019042,
1658 0.68,1.007116121,
1659 0.69,1.036076576,
1660 0.70,1.064907195,
1661 0.71,1.093614501,
1662 0.72,1.122204777,
1663 0.73,1.150684069,
1664 0.74,1.179058208,
1665 0.75,1.207332816,
1666 0.76,1.235513319,
1667 0.77,1.263604960,
1668 0.78,1.291612805,
1669 0.79,1.319541753,
1670 0.80,1.347396548,
1671 0.81,1.375181783,
1672 0.82,1.402901910,
1673 0.83,1.430561245,
1674 0.84,1.458163978,
1675 0.85,1.485714176,
1676 0.86,1.513215791,
1677 0.87,1.540672664,
1678 0.88,1.568088534,
1679 0.89,1.595467036,
1680 0.90,1.622811714,
1681 0.91,1.650126019,
1682 0.92,1.677413317,
1683 0.93,1.704676891,
1684 0.94,1.731919946,
1685 0.95,1.759145612,
1686 0.96,1.786356947,
1687 0.97,1.813556941,
1688 0.98,1.840748519,
1689 0.99,1.867934543,
1691 1.00,1.895117816,
1692 1.01,1.922301085,
1693 1.02,1.949487042,
1694 1.03,1.976678325,
1695 1.04,2.003877525,
1696 1.05,2.031087184,
1697 1.06,2.058309800,
1698 1.07,2.085547825,
1699 1.08,2.112803672,
1700 1.09,2.140079712,
1701 1.10,2.167378280,
1702 1.11,2.194701672,
1703 1.12,2.222052152,
1704 1.13,2.249431949,
1705 1.14,2.276843260,
1706 1.15,2.304288252,
1707 1.16,2.331769062,
1708 1.17,2.359287800,
1709 1.18,2.386846549,
1710 1.19,2.414447367,
1711 1.20,2.442092285,
1712 1.21,2.469783315,
1713 1.22,2.497522442,
1714 1.23,2.525311634,
1715 1.24,2.553152836,
1716 1.25,2.581047974,
1717 1.26,2.608998956,
1718 1.27,2.637007673,
1719 1.28,2.665075997,
1720 1.29,2.693205785,
1721 1.30,2.721398880,
1722 1.31,2.749657110,
1723 1.32,2.777982287,
1724 1.33,2.806376214,
1725 1.34,2.834840677,
1726 1.35,2.863377453,
1727 1.36,2.891988308,
1728 1.37,2.920674997,
1729 1.38,2.949439263,
1730 1.39,2.978282844,
1731 1.40,3.007207464,
1732 1.41,3.036214843,
1733 1.42,3.065306691,
1734 1.43,3.094484712,
1735 1.44,3.123750601,
1736 1.45,3.153106049,
1737 1.46,3.182552741,
1738 1.47,3.212092355,
1739 1.48,3.241726566,
1740 1.49,3.271457042,
1742 1.50,3.301285449,
1743 1.51,3.331213449,
1744 1.52,3.361242701,
1745 1.53,3.391374858,
1746 1.54,3.421611576,
1747 1.55,3.451954503,
1748 1.56,3.482405289,
1749 1.57,3.512965580,
1750 1.58,3.543637024,
1751 1.59,3.574421266,
1752 1.60,3.605319949,
1753 1.61,3.636334719,
1754 1.62,3.667467221,
1755 1.63,3.698719099,
1756 1.64,3.730091999,
1757 1.65,3.761587569,
1758 1.66,3.793207456,
1759 1.67,3.824953310,
1760 1.68,3.856826782,
1761 1.69,3.888829528,
1762 1.70,3.920963201,
1763 1.71,3.953229462,
1764 1.72,3.985629972,
1765 1.73,4.018166395,
1766 1.74,4.050840400,
1767 1.75,4.083653659,
1768 1.76,4.116607847,
1769 1.77,4.149704645,
1770 1.78,4.182945736,
1771 1.79,4.216332809,
1772 1.80,4.249867557,
1773 1.81,4.283551681,
1774 1.82,4.317386883,
1775 1.83,4.351374872,
1776 1.84,4.385517364,
1777 1.85,4.419816080,
1778 1.86,4.454272746,
1779 1.87,4.488889097,
1780 1.88,4.523666872,
1781 1.89,4.558607817,
1782 1.90,4.593713687,
1783 1.91,4.628986242,
1784 1.92,4.664427249,
1785 1.93,4.700038485,
1786 1.94,4.735821734,
1787 1.95,4.771778785,
1788 1.96,4.807911438,
1789 1.97,4.844221501,
1790 1.98,4.880710791,
1791 1.99,4.917381131,
1792 2.00,4.954234356
1793 ]),done);
1794 done;
1796 test_table(lambda([z],expintegral_ei(z)),'ei_2,150,5.70e-10);
1799 /******************************************************************************
1800   A&S Table 5.1 p. 242-243, values for x*%e^(-x)*Ei(x) from 2.00 through 10.0
1801 ******************************************************************************/
1803 block(
1804 ei_3 : make_array(flonum,235,2),
1805 fillarray(ei_3,[
1807 2.0,1.340965420,
1808 2.1,1.371486802,
1809 2.2,1.397421992,
1810 2.3,1.419171534,
1811 2.4,1.437118315,
1812 2.5,1.451625159,
1813 2.6,1.463033397,
1814 2.7,1.471662153,
1815 2.8,1.477808187,
1816 2.9,1.481746162,
1817 3.0,1.483729204,
1818 3.1,1.483989691,
1819 3.2,1.482740191,
1820 3.3,1.480174491,
1821 3.4,1.476468706,
1822 3.5,1.471782389,
1823 3.6,1.466259659,
1824 3.7,1.460030313,
1825 3.8,1.453210902,
1826 3.9,1.445905765,
1827 4.0,1.438208032,
1828 4.1,1.430200557,
1829 4.2,1.421956813,
1830 4.3,1.413541719,
1831 4.4,1.405012424,
1832 4.5,1.396419030,
1833 4.6,1.387805263,
1834 4.7,1.379209093,
1835 4.8,1.370663313,
1836 4.9,1.362196054,
1837 5.0,1.353831278,
1838 5.1,1.345589212,
1839 5.2,1.337486755,
1840 5.3,1.329537845,
1841 5.4,1.321753788,
1842 5.5,1.314143566,
1843 5.6,1.306714107,
1844 5.7,1.299470536,
1845 5.8,1.292416395,
1846 5.9,1.285553849,
1847 6.0,1.278883860,
1848 6.1,1.272406357,
1849 6.2,1.266120373,
1850 6.3,1.260024184,
1851 6.4,1.254115417,
1852 6.5,1.248391155,
1853 6.6,1.242848032,
1854 6.7,1.237482309,
1855 6.8,1.232289952,
1856 6.9,1.227266684,
1857 7.0,1.222408053,
1858 7.1,1.217709472,
1859 7.2,1.213166264,
1860 7.3,1.208773699,
1861 7.4,1.204527026,
1862 7.5,1.200421500,
1863 7.6,1.196452401,
1864 7.7,1.192615063,
1865 7.8,1.188904881,
1866 7.9,1.185317334,
1867 8.0,1.181847987,
1868 8.1,1.178492509,
1869 8.2,1.175246676,
1870 8.3,1.172106376,
1871 8.4,1.169067617,
1872 8.5,1.166126526,
1873 8.6,1.163279354,
1874 8.7,1.160522476,
1875 8.8,1.157852390,
1876 8.9,1.155265719,
1877 9.0,1.152759209,
1878 9.1,1.150329724,
1879 9.2,1.147974251,
1880 9.3,1.145689889,
1881 9.4,1.143473855,
1882 9.5,1.141323476,
1883 9.6,1.139236185,
1884 9.7,1.137209523,
1885 9.8,1.135241130,
1886 9.9,1.133328746,
1887 10.,1.131470205
1888 ]),done);
1889 done;
1891 test_table(lambda([z],z*%e^(-z)*expintegral_ei(z)),'ei_3,80,8.95e-10);
1894 /******************************************************************************
1895    A&S Table 5.1 p. 238, values for (E1(x)-log(x)-%gamma)/x 
1896                          from 0.00 through 0.50
1897 ******************************************************************************/
1899 block(
1900 e1_1 : make_array(flonum,200,2),
1901 fillarray(e1_1,[
1903 0.00,1.0000000000,
1904 0.01,0.9975055452,
1905 0.02,0.9950221392,
1906 0.03,0.9925497201,
1907 0.04,0.9900882265,
1908 0.05,0.9876375971,
1909 0.06,0.9851977714,
1910 0.07,0.9827686889,
1911 0.08,0.9803502898,
1912 0.09,0.9779425142,
1913 0.10,0.9755453033,
1914 0.11,0.9731585980,
1915 0.12,0.9707823399,
1916 0.13,0.9684164710,
1917 0.14,0.9660609336,
1918 0.15,0.9637156702,
1919 0.16,0.9613806240,
1920 0.17,0.9590557383,
1921 0.18,0.9567409569,
1922 0.19,0.9544362237,
1923 0.20,0.9521414833,
1924 0.21,0.9498566804,
1925 0.22,0.9475817603,
1926 0.23,0.9453166684,
1927 0.24,0.9430613506,
1928 0.25,0.9408157528,
1929 0.26,0.9385798221,
1930 0.27,0.9363535046,
1931 0.28,0.9341367481,
1932 0.29,0.9319294997,
1933 0.30,0.9297317075,
1934 0.31,0.9275433196,
1935 0.32,0.9253642845,
1936 0.33,0.9231945510,
1937 0.34,0.9210340684,
1938 0.35,0.9188827858,
1939 0.36,0.9167406533,
1940 0.37,0.9146076209,
1941 0.38,0.9124836388,
1942 0.39,0.9103686582,
1943 0.40,0.9082626297,
1944 0.41,0.9061655048,
1945 0.42,0.9040772350,
1946 0.43,0.9019977725,
1947 0.44,0.8999270693,
1948 0.45,0.8978650778,
1949 0.46,0.8958117511,
1950 0.47,0.8937670423,
1951 0.48,0.8917309048,
1952 0.49,0.8897032920,
1953 0.50,0.8876841584
1954 ]),done);
1955 done;
1957 test_table(lambda([z],(expintegral_e1(z)+log(z)+%gamma)/z),'e1_1,50,1.65e-10);
1960 /******************************************************************************
1961    A&S Table 5.1 p. 239-241, values for E1(x) from 0.50 through 2.00
1962 ******************************************************************************/
1964 block(
1965 e1_2 : make_array(flonum,200,2),
1966 fillarray(e1_2,[
1968 0.50,0.559773595,
1969 0.51,0.547822352,
1970 0.52,0.536219798,
1971 0.53,0.524951510,
1972 0.54,0.514003886,
1973 0.55,0.503364081,
1974 0.56,0.493019959,
1975 0.57,0.482960034,
1976 0.58,0.473173433,
1977 0.59,0.463649849,
1978 0.60,0.454379503,
1979 0.61,0.445353112,
1980 0.62,0.436561854,
1981 0.63,0.427997338,
1982 0.64,0.419651581,
1983 0.65,0.411516976,
1984 0.66,0.403586275,
1985 0.67,0.395852563,
1986 0.68,0.388309243,
1987 0.69,0.380950010,
1988 0.70,0.373768843,
1989 0.71,0.366759981,
1990 0.72,0.359917914,
1991 0.73,0.353237364,
1992 0.74,0.346713279,
1993 0.75,0.340340813,
1994 0.76,0.334115321,
1995 0.77,0.328032346,
1996 0.78,0.322087610,
1997 0.79,0.316277004,
1998 0.80,0.310596579,
1999 0.81,0.305042539,
2000 0.82,0.299611236,
2001 0.83,0.294299155,
2002 0.84,0.289102918,
2003 0.85,0.284019269,
2004 0.86,0.279045070,
2005 0.87,0.274177301,
2006 0.88,0.269413046,
2007 0.89,0.264749496,
2008 0.90,0.260183939,
2009 0.91,0.255713758,
2010 0.92,0.251336425,
2011 0.93,0.247049501,
2012 0.94,0.242850627,
2013 0.95,0.238737524,
2014 0.96,0.234707988,
2015 0.97,0.230759890,
2016 0.98,0.226891167,
2017 0.99,0.223099826,
2019 1.00,0.219383934,
2020 1.01,0.215741624,
2021 1.02,0.212171083,
2022 1.03,0.208670559,
2023 1.04,0.205238352,
2024 1.05,0.201872813,
2025 1.06,0.198572347,
2026 1.07,0.195335403,
2027 1.08,0.192160479,
2028 1.09,0.189046118,
2029 1.10,0.185990905,
2030 1.11,0.182993465,
2031 1.12,0.180052467,
2032 1.13,0.177166615,
2033 1.14,0.174334651,
2034 1.15,0.171555354,
2035 1.16,0.168827535,
2036 1.17,0.166150040,
2037 1.18,0.163521748,
2038 1.19,0.160941567,
2039 1.20,0.158408437,
2040 1.21,0.155921324,
2041 1.22,0.153479226,
2042 1.23,0.151081164,
2043 1.24,0.148726188,
2044 1.25,0.146413373,
2045 1.26,0.144141815,
2046 1.27,0.141910639,
2047 1.28,0.139718989,
2048 1.29,0.137566032,
2049 1.30,0.135450958,
2050 1.31,0.133372975,
2051 1.32,0.131331314,
2052 1.33,0.129325224,
2053 1.34,0.127353972,
2054 1.35,0.125416844,
2055 1.36,0.123513146,
2056 1.37,0.121642198,
2057 1.38,0.119803337,
2058 1.39,0.117995919,
2059 1.40,0.116219313,
2060 1.41,0.114472903,
2061 1.42,0.112756090,
2062 1.43,0.111068287,
2063 1.44,0.109408923,
2064 1.45,0.107777440,
2065 1.46,0.106173291,
2066 1.47,0.104595946,
2067 1.48,0.103044882,
2068 1.49,0.101519593,
2070 1.50,0.100019582,
2071 1.51,0.098544365,
2072 1.52,0.097093466,
2073 1.53,0.095666424,
2074 1.54,0.094262786,
2075 1.55,0.092882108,
2076 1.56,0.091523960,
2077 1.57,0.090187917,
2078 1.58,0.088873566,
2079 1.59,0.087580504,
2080 1.60,0.086308334,
2081 1.61,0.085056670,
2082 1.62,0.083825133,
2083 1.63,0.082613354,
2084 1.64,0.081420970,
2085 1.65,0.080247627,
2086 1.66,0.079092978,
2087 1.67,0.077956684,
2088 1.68,0.076838412,
2089 1.69,0.075737839,
2090 1.70,0.074654644,
2091 1.71,0.073588518,
2092 1.72,0.072539154,
2093 1.73,0.071506255,
2094 1.74,0.070489527,
2095 1.75,0.069488685,
2096 1.76,0.068503447,
2097 1.77,0.067533539,
2098 1.78,0.066578691,
2099 1.79,0.065638641,
2100 1.80,0.064713129,
2101 1.81,0.063801903,
2102 1.82,0.062904715,
2103 1.83,0.062021320,
2104 1.84,0.061151482,
2105 1.85,0.060294967,
2106 1.86,0.059451545,
2107 1.87,0.058620994,
2108 1.88,0.057803091,
2109 1.89,0.056997623,
2110 1.90,0.056204378,
2111 1.91,0.055423149,
2112 1.92,0.054653731,
2113 1.93,0.053895927,
2114 1.94,0.053149540,
2115 1.95,0.052414380,
2116 1.96,0.051690257,
2117 1.97,0.050976988,
2118 1.98,0.050274392,
2119 1.99,0.049582291,
2120 2.00,0.048900511
2121 ]),done);
2122 done;
2124 test_table(lambda([z],expintegral_e1(z)),'e1_2,150,5.35e-10);
2127 /******************************************************************************
2128    A&S Table 5.1 p. 242-243, values for x*%e^x*E1(x) from 2.00 through 10.0
2129 ******************************************************************************/
2131 block(
2132 e1_3 : make_array(flonum,200,2),
2133 fillarray(e1_3,[
2135 2.0,0.722657234,
2136 2.1,0.730791502,
2137 2.2,0.738431132,
2138 2.3,0.745622149,
2139 2.4,0.752404829,
2140 2.5,0.758814592,
2141 2.6,0.764882722,
2142 2.7,0.770636987,
2143 2.8,0.776102123,
2144 2.9,0.781300252,
2145 3.0,0.786251221,
2146 3.1,0.790972900,
2147 3.2,0.795481422,
2148 3.3,0.799791408,
2149 3.4,0.803916127,
2150 3.5,0.807867661,
2151 3.6,0.811657037,
2152 3.7,0.815294342,
2153 3.8,0.818788821,
2154 3.9,0.822148967,
2155 4.0,0.825382600,
2156 4.1,0.828496926,
2157 4.2,0.831498602,
2158 4.3,0.834393794,
2159 4.4,0.837188207,
2160 4.5,0.839887144,
2161 4.6,0.842495539,
2162 4.7,0.845017971,
2163 4.8,0.847458721,
2164 4.9,0.849821778,
2165 5.0,0.852110880,
2166 5.1,0.854329519,
2167 5.2,0.856480958,
2168 5.3,0.858568275,
2169 5.4,0.860594348,
2170 5.5,0.862561885,
2171 5.6,0.864473436,
2172 5.7,0.866331399,
2173 5.8,0.868138040,
2174 5.9,0.869895494,
2175 6.0,0.871605775,
2176 6.1,0.873270793,
2177 6.2,0.874892347,
2178 6.3,0.876472150,
2179 6.4,0.878011816,
2180 6.5,0.879512881,
2181 6.6,0.880976797,
2182 6.7,0.882404955,
2183 6.8,0.883798662,
2184 6.9,0.885159176,
2185 7.0,0.886487675,
2186 7.1,0.887785294,
2187 7.2,0.889053119,
2188 7.3,0.890292173,
2189 7.4,0.891503440,
2190 7.5,0.892687854,
2191 7.6,0.893846312,
2192 7.7,0.894979666,
2193 7.8,0.896088737,
2194 7.9,0.897174302,
2195 8.0,0.898237113,
2196 8.1,0.899277888,
2197 8.2,0.900297306,
2198 8.3,0.901296033,
2199 8.4,0.902274699,
2200 8.5,0.903233900,
2201 8.6,0.904174228,
2202 8.7,0.905096235,
2203 8.8,0.906000459,
2204 8.9,0.906887415,
2205 9.0,0.907757602,
2206 9.1,0.908611483,
2207 9.2,0.909449530,
2208 9.3,0.910272177,
2209 9.4,0.911079850,
2210 9.5,0.911872958,
2211 9.6,0.912651897,
2212 9.7,0.913417043,
2213 9.8,0.914168766,
2214 9.9,0.914907418,
2215 10.,0.915633339
2216 ]),done);
2217 done;
2219 test_table(lambda([z],z*%e^z*expintegral_e1(z)),'e1_3,80,2.50e-8);
2222 /******************************************************************************
2223    A&S Table 5.6 p. 249-251, values for z*%e^z*E1(z) for Complex values
2224                              from -19 through 20 for the Real part and
2225                              from 0 through 20 for the Complex part
2226 ******************************************************************************/
2228 block(
2229 ec_1 : make_array(flonum,855,4),
2230 fillarray(ec_1,[
2232 /* Table 5.6 p. 249 */
2234 -19,00,1.059305,0.000000,
2235 -18,00,1.063087,0.000001,
2236 -17,00,1.067394,0.000002,
2237 -16,00,1.072345,0.000006,
2238 -15,00,1.078103,0.000014,
2240 -19,01,1.059090,0.003539,
2241 -18,01,1.062827,0.004010,
2242 -17,01,1.067073,0.004584,
2243 -16,01,1.071942,0.005296,
2244 -15,01,1.077584,0.006195,
2246 -19,02,1.058456,0.007000,
2247 -18,02,1.062061,0.007918,
2248 -17,02,1.066135,0.009032,
2249 -16,02,1.070774,0.010403,
2250 -15,02,1.076102,0.012118,
2252 -19,03,1.057431,0.010310,
2253 -18,03,1.060829,0.011633,
2254 -17,03,1.064636,0.013226,
2255 -16,03,1.068925,0.015172,
2256 -15,03,1.073783,0.017579,
2258 -19,04,1.056058,0.013410,
2259 -18,04,1.059190,0.015079,
2260 -17,04,1.062657,0.017075,
2261 -16,04,1.066508,0.019486,
2262 -15,04,1.070793,0.022432,
2264 -19,05,1.054391,0.016252,
2265 -18,05,1.057215,0.018202,
2266 -17,05,1.060297,0.020512,
2267 -16,05,1.063659,0.023272,
2268 -15,05,1.067318,0.026598,
2270 -19,06,1.052490,0.018806,
2271 -18,06,1.054981,0.020969,
2272 -17,06,1.057655,0.023505,
2273 -16,06,1.060510,0.026499,
2274 -15,06,1.063538,0.030055,
2276 -19,07,1.050413,0.021055,
2277 -18,07,1.052565,0.023364,
2278 -17,07,1.054829,0.026044,
2279 -16,07,1.057187,0.029167,
2280 -15,07,1.059610,0.032823,
2282 -19,08,1.048217,0.022996,
2283 -18,08,1.050037,0.025391,
2284 -17,08,1.051905,0.028141,
2285 -16,08,1.053795,0.031306,
2286 -15,08,1.055664,0.034957,
2288 -19,09,1.045956,0.024637,
2289 -18,09,1.047458,0.027066,
2290 -17,09,1.048958,0.029824,
2291 -16,09,1.050421,0.032960,
2292 -15,09,1.051797,0.036527,
2294 -19,10,1.043672,0.025993,
2295 -18,10,1.044880,0.028412,
2296 -17,10,1.046045,0.031130,
2297 -16,10,1.047129,0.034183,
2298 -15,10,1.048081,0.037609,
2300 -19,11,1.041402,0.027086,
2301 -18,11,1.042345,0.029461,
2302 -17,11,1.043212,0.032102,
2303 -16,11,1.043967,0.035034,
2304 -15,11,1.044559,0.038282,
2306 -19,12,1.039177,0.027940,
2307 -18,12,1.039882,0.030245,
2308 -17,12,1.040490,0.032781,
2309 -16,12,1.040965,0.035567,
2310 -15,12,1.041259,0.038616,
2312 -19,13,1.037018,0.028581,
2313 -18,13,1.037515,0.030796,
2314 -17,13,1.037901,0.033211,
2315 -16,13,1.038140,0.035836,
2316 -15,13,1.038192,0.038677,
2318 -19,14,1.034942,0.029034,
2319 -18,14,1.035259,0.031148,
2320 -17,14,1.035456,0.033431,
2321 -16,14,1.035501,0.035888,
2322 -15,14,1.035359,0.038520,
2324 -19,15,1.032959,0.029326,
2325 -18,15,1.033123,0.031330,
2326 -17,15,1.033162,0.033476,
2327 -16,15,1.033049,0.035765,
2328 -15,15,1.032754,0.038193,
2330 -19,16,1.031076,0.029477,
2331 -18,16,1.031110,0.031368,
2332 -17,16,1.031019,0.033377,
2333 -16,16,1.030780,0.035502,
2334 -15,16,1.030365,0.037735,
2336 -19,17,1.029296,0.029511,
2337 -18,17,1.029222,0.031288,
2338 -17,17,1.029025,0.033162,
2339 -16,17,1.028685,0.035129,
2340 -15,17,1.028180,0.037179,
2342 -19,18,1.027620,0.029445,
2343 -18,18,1.027456,0.031110,
2344 -17,18,1.027174,0.032855,
2345 -16,18,1.026756,0.034672,
2346 -15,18,1.026183,0.036552,
2348 -19,19,1.026046,0.029296,
2349 -18,19,1.025809,0.030854,
2350 -17,19,1.025459,0.032474,
2351 -16,19,1.024981,0.034150,
2352 -15,19,1.024360,0.035873,
2354 -19,20,1.024570,0.029080,
2355 -18,20,1.024275,0.030534,
2356 -17,20,1.023872,0.032037,
2357 -16,20,1.023349,0.033582,
2358 -15,20,1.022695,0.035160,
2360 -14,00,1.084892,0.000037,
2361 -13,00,1.093027,0.000092,
2362 -12,00,1.102975,0.000232,
2363 -11,00,1.115431,0.000577,
2364 -10,00,1.131470,0.001426,
2366 -14,01,1.084200,0.007359,
2367 -13,01,1.092067,0.008913,
2368 -12,01,1.101566,0.011063,
2369 -11,01,1.113230,0.014169,
2370 -10,01,1.127796,0.018879,
2372 -14,02,1.082276,0.014306,
2373 -13,02,1.089498,0.017161,
2374 -12,02,1.098025,0.020981,
2375 -11,02,1.108170,0.026241,
2376 -10,02,1.120286,0.033700,
2378 -14,03,1.079313,0.020604,
2379 -13,03,1.085635,0.024471,
2380 -12,03,1.092873,0.029507,
2381 -11,03,1.101137,0.036189,
2382 -10,03,1.110462,0.045218,
2384 -14,04,1.075560,0.026075,
2385 -13,04,1.080853,0.030637,
2386 -12,04,1.086686,0.036422,
2387 -11,04,1.093013,0.043843,
2388 -10,04,1.099666,0.053451,
2390 -14,05,1.071279,0.030642,
2391 -13,05,1.075522,0.035599,
2392 -12,05,1.079985,0.041724,
2393 -11,05,1.084526,0.049336,
2394 -10,05,1.088877,0.058817,
2396 -14,06,1.066708,0.034303,
2397 -13,06,1.069960,0.039405,
2398 -12,06,1.073185,0.045552,
2399 -11,06,1.076197,0.052967,
2400 -10,06,1.078701,0.061886,
2402 -14,07,1.062046,0.037117,
2403 -13,07,1.064412,0.042169,
2404 -12,07,1.066578,0.048115,
2405 -11,07,1.068350,0.055093,
2406 -10,07,1.069450,0.063225,
2408 -14,08,1.057448,0.039174,
2409 -13,08,1.059054,0.044041,
2410 -12,08,1.060352,0.049644,
2411 -11,08,1.061159,0.056057,
2412 -10,08,1.061235,0.063322,
2414 -14,09,1.053021,0.040580,
2415 -13,09,1.053997,0.045176,
2416 -12,09,1.054606,0.050359,
2417 -11,09,1.054687,0.056158,
2418 -10,09,1.054046,0.062566,
2420 -14,10,1.048834,0.041444,
2421 -13,10,1.049303,0.045719,
2422 -12,10,1.049380,0.050452,
2423 -11,10,1.048933,0.055640,
2424 -10,10,1.047807,0.061249,
2426 -14,11,1.044928,0.041867,
2427 -13,11,1.044997,0.045801,
2428 -12,11,1.044674,0.050084,
2429 -11,11,1.043853,0.054695,
2430 -10,11,1.042417,0.059584,
2432 -14,12,1.041320,0.041938,
2433 -13,12,1.041080,0.045531,
2434 -12,12,1.040464,0.049384,
2435 -11,12,1.039389,0.053465,
2436 -10,12,1.037766,0.057719,
2438 -14,13,1.038010,0.041734,
2439 -13,13,1.037537,0.044999,
2440 -12,13,1.036713,0.048452,
2441 -11,13,1.035473,0.052056,
2442 -10,13,1.033752,0.055758,
2444 -14,14,1.034989,0.041321,
2445 -13,14,1.034344,0.044277,
2446 -12,14,1.033378,0.047365,
2447 -11,14,1.032040,0.050547,
2448 -10,14,1.030282,0.053773,
2450 -14,15,1.032241,0.040751,
2451 -13,15,1.031474,0.043422,
2452 -12,15,1.030414,0.046180,
2453 -11,15,1.029026,0.048991,
2454 -10,15,1.027274,0.051808,
2456 -14,16,1.029747,0.040066,
2457 -13,16,1.028895,0.042477,
2458 -12,16,1.027781,0.044941,
2459 -11,16,1.026377,0.047428,
2460 -10,16,1.024658,0.049894,
2462 -14,17,1.027486,0.039301,
2463 -13,17,1.026579,0.041475,
2464 -12,17,1.025438,0.043679,
2465 -11,17,1.024043,0.045883,
2466 -10,17,1.022375,0.048049,
2468 -14,18,1.025437,0.038481,
2469 -13,18,1.024499,0.040444,
2470 -12,18,1.023352,0.042417,
2471 -11,18,1.021981,0.044374,
2472 -10,18,1.020375,0.046282,
2474 -14,19,1.023580,0.037629,
2475 -13,19,1.022628,0.039401,
2476 -12,19,1.021489,0.041170,
2477 -11,19,1.020155,0.042912,
2478 -10,19,1.018617,0.044599,
2480 -14,20,1.021896,0.036759,
2481 -13,20,1.020942,0.038361,
2482 -12,20,1.019824,0.039950,
2483 -11,20,1.018533,0.041505,
2484 -10,20,1.017066,0.043001,
2486 -09,00,1.152759,0.003489,
2487 -08,00,1.181848,0.008431,
2488 -07,00,1.222408,0.020053,
2489 -06,00,1.278884,0.046723,
2490 -05,00,1.353831,0.105839,
2492 -09,01,1.146232,0.026376,
2493 -08,01,1.169677,0.038841,
2494 -07,01,1.199049,0.060219,
2495 -06,01,1.233798,0.097331,
2496 -05,01,1.268723,0.160826,
2498 -09,02,1.134679,0.044579,
2499 -08,02,1.151385,0.060814,
2500 -07,02,1.169639,0.085335,
2501 -06,02,1.186778,0.122162,
2502 -05,02,1.196351,0.175646,
2504 -09,03,1.120694,0.057595,
2505 -08,03,1.131255,0.074701,
2506 -07,03,1.140733,0.098259,
2507 -06,03,1.146266,0.130005,
2508 -05,03,1.142853,0.170672,
2510 -09,04,1.106249,0.065948,
2511 -08,04,1.111968,0.082156,
2512 -07,04,1.115404,0.102861,
2513 -06,04,1.114273,0.128440,
2514 -05,04,1.105376,0.158134,
2516 -09,05,1.092564,0.070592,
2517 -08,05,1.094818,0.085055,
2518 -07,05,1.094475,0.102411,
2519 -06,05,1.089952,0.122397,
2520 -05,05,1.079407,0.143879,
2522 -09,06,1.080246,0.072520,
2523 -08,06,1.080188,0.084987,
2524 -07,06,1.077672,0.099188,
2525 -06,06,1.071684,0.114638,
2526 -05,06,1.061236,0.130280,
2528 -09,07,1.069494,0.072580,
2529 -08,07,1.067987,0.083120,
2530 -07,07,1.064339,0.094618,
2531 -06,07,1.057935,0.106568,
2532 -05,07,1.048279,0.118116,
2534 -09,08,1.060276,0.071425,
2535 -08,08,1.057920,0.080250,
2536 -07,08,1.053778,0.089537,
2537 -06,08,1.047493,0.098840,
2538 -05,08,1.038838,0.107508,
2540 -09,09,1.052450,0.069523,
2541 -08,09,1.049645,0.076885,
2542 -07,09,1.045382,0.084405,
2543 -06,09,1.039464,0.091717,
2544 -05,09,1.031806,0.098337,
2546 -09,10,1.045832,0.067197,
2547 -08,10,1.042834,0.073340,
2548 -07,10,1.038659,0.079462,
2549 -06,10,1.033205,0.085271,
2550 -05,10,1.026459,0.090413,
2552 -09,11,1.040241,0.064664,
2553 -08,11,1.037210,0.069803,
2554 -07,11,1.033231,0.074821,
2555 -06,11,1.028260,0.079488,
2556 -05,11,1.022317,0.083544,
2558 -09,12,1.035508,0.062063,
2559 -08,12,1.032539,0.066381,
2560 -07,12,1.028808,0.070524,
2561 -06,12,1.024300,0.074315,
2562 -05,12,1.019052,0.077561,
2564 -09,13,1.031490,0.059482,
2565 -08,13,1.028638,0.063128,
2566 -07,13,1.025171,0.066576,
2567 -06,13,1.021090,0.069688,
2568 -05,13,1.016439,0.072320,
2570 -09,14,1.028065,0.056975,
2571 -08,14,1.025359,0.060070,
2572 -07,14,1.022152,0.062962,
2573 -06,14,1.018458,0.065542,
2574 -05,14,1.014319,0.067702,
2576 -09,15,1.025132,0.054573,
2577 -08,15,1.022583,0.057215,
2578 -07,15,1.019626,0.059658,
2579 -06,15,1.016277,0.061817,
2580 -05,15,1.012577,0.063610,
2582 -09,16,1.022608,0.052291,
2583 -08,16,1.020219,0.054559,
2584 -07,16,1.017494,0.056638,
2585 -06,16,1.014452,0.058460,
2586 -05,16,1.011130,0.059962,
2588 -09,17,1.020426,0.050135,
2589 -08,17,1.018192,0.052094,
2590 -07,17,1.015681,0.053874,
2591 -06,17,1.012912,0.055424,
2592 -05,17,1.009915,0.056694,
2594 -09,18,1.018530,0.048106,
2595 -08,18,1.016444,0.049806,
2596 -07,18,1.014129,0.051341,
2597 -06,18,1.011600,0.052670,
2598 -05,18,1.008887,0.053752,
2600 -09,19,1.016874,0.046201,
2601 -08,19,1.014929,0.047684,
2602 -07,19,1.012790,0.049015,
2603 -06,19,1.010476,0.050161,
2604 -05,19,1.008009,0.051092,
2606 -09,20,1.015422,0.044413,
2607 -08,20,1.013607,0.045714,
2608 -07,20,1.011629,0.046875,
2609 -06,20,1.009505,0.047870,
2610 -05,20,1.007254,0.048675,
2612 /* Table 5.6 p. 250 */
2614 -4,00,1.438208,0.230161,
2615 -3,00,1.483729,0.469232,
2616 -2,00,1.340965,0.850337,
2617 -1,00,0.697175,1.155727,
2618 /* -0,00,0.577216,0.000000, den Test auf Null verbessern */
2620 -4,01,1.287244,0.263705,
2621 -3,01,1.251069,0.410413,
2622 -2,01,1.098808,0.561916,
2623 -1,01,0.813486,0.578697,
2624 -0,01,0.621450,0.343378,
2626 -4,02,1.185758,0.247356,
2627 -3,02,1.136171,0.328439,
2628 -2,02,1.032990,0.388428,
2629 -1,02,0.896419,0.378838,
2630 -0,02,0.798042,0.289091,
2632 -4,03,1.123282,0.217835,
2633 -3,03,1.080316,0.262814,
2634 -2,03,1.013205,0.289366,
2635 -1,03,0.936283,0.280906,
2636 -0,03,0.875873,0.237665,
2638 -4,04,1.085153,0.189003,
2639 -3,04,1.051401,0.215118,
2640 -2,04,1.006122,0.228399,
2641 -1,04,0.957446,0.222612,
2642 -0,04,0.916770,0.198713,
2644 -4,05,1.061263,0.164466,
2645 -3,05,1.035185,0.180487,
2646 -2,05,1.003172,0.187857,
2647 -1,05,0.969809,0.183963,
2648 -0,05,0.940714,0.169481,
2650 -4,06,1.045719,0.144391,
2651 -3,06,1.025396,0.154746,
2652 -2,06,1.001788,0.159189,
2653 -1,06,0.977582,0.156511,
2654 -0,06,0.955833,0.147129,
2656 -4,07,1.035205,0.128073,
2657 -3,07,1.019109,0.135079,
2658 -2,07,1.001077,0.137939,
2659 -1,07,0.982756,0.136042,
2660 -0,07,0.965937,0.129646,
2662 -4,08,1.027834,0.114732,
2663 -3,08,1.014861,0.119660,
2664 -2,08,1.000684,0.121599,
2665 -1,08,0.986356,0.120218,
2666 -0,08,0.972994,0.115678,
2668 -4,09,1.022501,0.103711,
2669 -3,09,1.011869,0.107294,
2670 -2,09,1.000454,0.108665,
2671 -1,09,0.988955,0.107634,
2672 -0,09,0.978103,0.104303,
2674 -4,10,1.018534,0.094502,
2675 -3,10,1.009688,0.097181,
2676 -2,10,1.000312,0.098184,
2677 -1,10,0.990887,0.097396,
2678 -0,10,0.981910,0.094885,
2680 -4,11,1.015513,0.086718,
2681 -3,11,1.008052,0.088770,
2682 -2,11,1.000221,0.089525,
2683 -1,11,0.992361,0.088911,
2684 -0,11,0.984819,0.086975,
2686 -4,12,1.013163,0.080069,
2687 -3,12,1.006795,0.081673,
2688 -2,12,1.000161,0.082255,
2689 -1,12,0.993508,0.081769,
2690 -0,12,0.987088,0.080245,
2692 -4,13,1.011303,0.074333,
2693 -3,13,1.005809,0.075609,
2694 -2,13,1.000119,0.076067,
2695 -1,13,0.994418,0.075676,
2696 -0,13,0.988891,0.074457,
2698 -4,14,1.009806,0.069340,
2699 -3,14,1.005022,0.070371,
2700 -2,14,1.000090,0.070738,
2701 -1,14,0.995151,0.070419,
2702 -0,14,0.990345,0.069429,
2704 -4,15,1.008585,0.064959,
2705 -3,15,1.004384,0.065803,
2706 -2,15,1.000070,0.066102,
2707 -1,15,0.995751,0.065838,
2708 -0,15,0.991534,0.065024,
2710 -4,16,1.007577,0.061086,
2711 -3,16,1.003859,0.061786,
2712 -2,16,1.000055,0.062032,
2713 -1,16,0.996246,0.061812,
2714 -0,16,0.992518,0.061135,
2716 -4,17,1.006735,0.057640,
2717 -3,17,1.003423,0.058227,
2718 -2,17,1.000043,0.058432,
2719 -1,17,0.996661,0.058246,
2720 -0,17,0.993342,0.057677,
2722 -4,18,1.006025,0.054555,
2723 -3,18,1.003057,0.055052,
2724 -2,18,1.000035,0.055224,
2725 -1,18,0.997011,0.055066,
2726 -0,18,0.994038,0.054583,
2728 -4,19,1.005420,0.051779,
2729 -3,19,1.002747,0.052202,
2730 -2,19,1.000028,0.052349,
2731 -1,19,0.997309,0.052214,
2732 -0,19,0.994631,0.051801,
2734 -4,20,1.004902,0.049267,
2735 -3,20,1.002481,0.049631,
2736 -2,20,1.000023,0.049757,
2737 -1,20,0.997565,0.049640,
2738 -0,20,0.995140,0.049284,
2740 01,00,0.596347,0.000000,
2741 02,00,0.722657,0.000000,
2742 03,00,0.786251,0.000000,
2743 04,00,0.825383,0.000000,
2744 05,00,0.852111,0.000000,
2746 01,01,0.673321,0.147864,
2747 02,01,0.747012,0.075661,
2748 03,01,0.797036,0.045686,
2749 04,01,0.831126,0.030619,
2750 05,01,0.855544,0.021985,
2752 01,02,0.777514,0.186570,
2753 02,02,0.796965,0.118228,
2754 03,02,0.823055,0.078753,
2755 04,02,0.846097,0.055494,
2756 05,02,0.864880,0.040999,
2758 01,03,0.847468,0.181226,
2759 02,03,0.844361,0.132252,
2760 03,03,0.853176,0.096659,
2761 04,03,0.865521,0.072180,
2762 05,03,0.877860,0.055341,
2764 01,04,0.891460,0.165207,
2765 02,04,0.881036,0.131686,
2766 03,04,0.880584,0.103403,
2767 04,04,0.885308,0.081408,
2768 05,04,0.892143,0.064825,
2770 01,05,0.919826,0.148271,
2771 02,05,0.907873,0.125136,
2772 03,05,0.903152,0.103577,
2773 04,05,0.903231,0.085187,
2774 05,05,0.906058,0.070209,
2776 01,06,0.938827,0.132986,
2777 02,06,0.927384,0.116656,
2778 03,06,0.921006,0.100357,
2779 04,06,0.918527,0.085460,
2780 05,06,0.918708,0.072544,
2782 01,07,0.952032,0.119807,
2783 02,07,0.941722,0.107990,
2784 03,07,0.934958,0.095598,
2785 04,07,0.931209,0.083666,
2786 05,07,0.929765,0.072792,
2788 01,08,0.961512,0.108589,
2789 02,08,0.952435,0.099830,
2790 03,08,0.945868,0.090303,
2791 04,08,0.941594,0.080755,
2792 05,08,0.939221,0.071700,
2794 01,09,0.968512,0.099045,
2795 02,09,0.960582,0.092408,
2796 03,09,0.954457,0.084986,
2797 04,09,0.950072,0.077313,
2798 05,09,0.947219,0.069799,
2800 01,10,0.973810,0.090888,
2801 02,10,0.966885,0.085758,
2802 03,10,0.961283,0.079898,
2803 04,10,0.957007,0.073688,
2804 05,10,0.953955,0.067447,
2806 01,11,0.977904,0.083871,
2807 02,11,0.971842,0.079836,
2808 03,11,0.966766,0.075147,
2809 04,11,0.962708,0.070080,
2810 05,11,0.959626,0.064878,
2812 01,12,0.981127,0.077790,
2813 02,12,0.975799,0.074567,
2814 03,12,0.971216,0.070769,
2815 04,12,0.967423,0.066599,
2816 05,12,0.964412,0.062242,
2818 01,13,0.983706,0.072484,
2819 02,13,0.979000,0.069873,
2820 03,13,0.974865,0.066762,
2821 04,13,0.971351,0.063300,
2822 05,13,0.968464,0.059630,
2824 01,14,0.985799,0.067822,
2825 02,14,0.981621,0.065679,
2826 03,14,0.977888,0.063104,
2827 04,14,0.974646,0.060206,
2828 05,14,0.971911,0.057096,
2830 01,15,0.987519,0.063698,
2831 02,15,0.983791,0.061921,
2832 03,15,0.980414,0.059767,
2833 04,15,0.977430,0.057322,
2834 05,15,0.974858,0.054671,
2836 01,16,0.988949,0.060029,
2837 02,16,0.985606,0.058539,
2838 03,16,0.982544,0.056723,
2839 04,16,0.979799,0.054644,
2840 05,16,0.977391,0.052371,
2842 01,17,0.990149,0.056745,
2843 02,17,0.987138,0.055485,
2844 03,17,0.984353,0.053941,
2845 04,17,0.981827,0.052162,
2846 05,17,0.979579,0.050200,
2848 01,18,0.991167,0.053792,
2849 02,18,0.988442,0.052717,
2850 03,18,0.985902,0.051394,
2851 04,18,0.983574,0.049861,
2852 05,18,0.981478,0.048160,
2854 01,19,0.992036,0.051122,
2855 02,19,0.989561,0.050199,
2856 03,19,0.987237,0.049057,
2857 04,19,0.985089,0.047728,
2858 05,19,0.983135,0.046245,
2860 01,20,0.992784,0.048699,
2861 02,20,0.990527,0.047900,
2862 03,20,0.988395,0.046909,
2863 04,20,0.986410,0.045749,
2864 05,20,0.984587,0.044449,
2866 06,00,0.871606,0.000000,
2867 07,00,0.886488,0.000000,
2868 08,00,0.898237,0.000000,
2869 09,00,0.907758,0.000000,
2870 10,00,0.915633,0.000000,
2872 06,01,0.873827,0.016570,
2873 07,01,0.888009,0.012947,
2874 08,01,0.899327,0.010401,
2875 09,01,0.908565,0.008543,
2876 10,01,0.916249,0.007143,
2878 06,02,0.880023,0.031454,
2879 07,02,0.892327,0.024866,
2880 08,02,0.902453,0.020140,
2881 09,02,0.910901,0.016639,
2882 10,02,0.918040,0.013975,
2884 06,03,0.889029,0.043517,
2885 07,03,0.898793,0.034995,
2886 08,03,0.907236,0.028693,
2887 09,03,0.914531,0.023921,
2888 10,03,0.920856,0.020230,
2890 06,04,0.899484,0.052380,
2891 07,04,0.906591,0.042967,
2892 08,04,0.913167,0.035755,
2893 09,04,0.919127,0.030145,
2894 10,04,0.924479,0.025717,
2896 06,05,0.910242,0.058259,
2897 07,05,0.914952,0.048780,
2898 08,05,0.919729,0.041242,
2899 09,05,0.924336,0.035208,
2900 10,05,0.928664,0.030334,
2902 06,06,0.920534,0.061676,
2903 07,06,0.923283,0.052667,
2904 08,06,0.926481,0.045242,
2905 09,06,0.929836,0.039123,
2906 10,06,0.933175,0.034063,
2908 06,07,0.929945,0.063220,
2909 07,07,0.931193,0.054971,
2910 08,07,0.933096,0.047942,
2911 09,07,0.935365,0.041986,
2912 10,07,0.937807,0.036944,
2914 06,08,0.938313,0.063425,
2915 07,08,0.938469,0.056047,
2916 08,08,0.939359,0.049570,
2917 09,08,0.940731,0.043936,
2918 10,08,0.942398,0.039060,
2920 06,09,0.945629,0.062714,
2921 07,09,0.945023,0.056211,
2922 08,09,0.945154,0.050349,
2923 09,09,0.945812,0.045128,
2924 10,09,0.946833,0.040514,
2926 06,10,0.951965,0.061408,
2927 07,10,0.950850,0.055725,
2928 08,10,0.950427,0.050481,
2929 09,10,0.950535,0.045711,
2930 10,10,0.951035,0.041413,
2932 06,11,0.957427,0.059735,
2933 07,11,0.955987,0.054790,
2934 08,11,0.955176,0.050135,
2935 09,11,0.954870,0.045818,
2936 10,11,0.954959,0.041861,
2938 06,12,0.962128,0.057855,
2939 07,12,0.960495,0.053560,
2940 08,12,0.959421,0.049444,
2941 09,12,0.958814,0.045563,
2942 10,12,0.958586,0.041948,
2944 06,13,0.966178,0.055877,
2945 07,13,0.964444,0.052146,
2946 08,13,0.963201,0.048514,
2947 09,13,0.962379,0.045038,
2948 10,13,0.961913,0.041755,
2950 06,14,0.969673,0.053874,
2951 07,14,0.967903,0.050627,
2952 08,14,0.966559,0.047425,
2953 09,14,0.965591,0.044319,
2954 10,14,0.964949,0.041347,
2956 06,15,0.972699,0.051894,
2957 07,15,0.970935,0.049062,
2958 08,15,0.969539,0.046236,
2959 09,15,0.968477,0.043463,
2960 10,15,0.967710,0.040780,
2962 06,16,0.975326,0.049966,
2963 07,16,0.973597,0.047489,
2964 08,16,0.972185,0.044992,
2965 09,16,0.971067,0.042516,
2966 10,16,0.970214,0.040095,
2968 06,17,0.977617,0.048109,
2969 07,17,0.975940,0.045935,
2970 08,17,0.974538,0.043724,
2971 09,17,0.973393,0.041512,
2972 10,17,0.972484,0.039329,
2974 06,18,0.979622,0.046332,
2975 07,18,0.978009,0.044419,
2976 08,18,0.976632,0.042456,
2977 09,18,0.975481,0.040477,
2978 10,18,0.974540,0.038508,
2980 06,19,0.981384,0.044641,
2981 07,19,0.979839,0.042951,
2982 08,19,0.978500,0.041205,
2983 09,19,0.977357,0.039431,
2984 10,19,0.976402,0.037653,
2986 06,20,0.982938,0.043036,
2987 07,20,0.981465,0.041538,
2988 08,20,0.980169,0.039980,
2989 09,20,0.979047,0.038388,
2990 10,20,0.978090,0.036781,
2992 /* Table 5.6 p. 251 */
2994 11,00,0.922260,0.000000,
2995 12,00,0.927914,0.000000,
2996 13,00,0.932796,0.000000,
2997 14,00,0.937055,0.000000,
2998 15,00,0.940804,0.000000,
3000 11,01,0.922740,0.006063,
3001 12,01,0.928295,0.005212,
3002 13,01,0.933105,0.004528,
3003 14,01,0.937308,0.003972,
3004 15,01,0.941014,0.003512,
3006 11,02,0.924143,0.011902,
3007 12,02,0.929416,0.010258,
3008 13,02,0.934013,0.008932,
3009 14,02,0.938055,0.007847,
3010 15,02,0.941636,0.006949,
3012 11,03,0.926370,0.017321,
3013 12,03,0.931205,0.014991,
3014 13,03,0.935473,0.013098,
3015 14,03,0.939261,0.011540,
3016 15,03,0.942643,0.010242,
3018 11,04,0.929270,0.022171,
3019 12,04,0.933560,0.019295,
3020 13,04,0.937408,0.016934,
3021 14,04,0.940870,0.014974,
3022 15,04,0.943994,0.013331,
3024 11,05,0.932672,0.026361,
3025 12,05,0.936356,0.023091,
3026 13,05,0.939729,0.020373,
3027 14,05,0.942816,0.018095,
3028 15,05,0.945640,0.016169,
3030 11,06,0.936400,0.029857,
3031 12,06,0.939462,0.026339,
3032 13,06,0.942338,0.023378,
3033 14,06,0.945024,0.020867,
3034 15,06,0.947522,0.018725,
3036 11,07,0.940297,0.032670,
3037 12,07,0.942757,0.029036,
3038 13,07,0.945140,0.025934,
3039 14,07,0.947419,0.023273,
3040 15,07,0.949582,0.020980,
3042 11,08,0.944229,0.034847,
3043 12,08,0.946132,0.031205,
3044 13,08,0.948047,0.028052,
3045 14,08,0.949933,0.025315,
3046 15,08,0.951765,0.022931,
3048 11,09,0.948093,0.036453,
3049 12,09,0.949500,0.032887,
3050 13,09,0.950985,0.029756,
3051 14,09,0.952502,0.027004,
3052 15,09,0.954018,0.024582,
3054 11,10,0.951816,0.037566,
3055 12,10,0.952792,0.034134,
3056 13,10,0.953895,0.031081,
3057 14,10,0.955075,0.028365,
3058 15,10,0.956296,0.025949,
3060 11,11,0.955347,0.038261,
3061 12,11,0.955958,0.035004,
3062 13,11,0.956729,0.032068,
3063 14,11,0.957610,0.029426,
3064 15,11,0.958563,0.027052,
3066 11,12,0.958659,0.038612,
3067 12,12,0.958968,0.035552,
3068 13,12,0.959454,0.032761,
3069 14,12,0.960073,0.030221,
3070 15,12,0.960787,0.027915,
3072 11,13,0.961739,0.038684,
3073 12,13,0.961800,0.035833,
3074 13,13,0.962049,0.033201,
3075 14,13,0.962443,0.030781,
3076 15,13,0.962947,0.028564,
3078 11,14,0.964583,0.038534,
3079 12,14,0.964447,0.035893,
3080 13,14,0.964499,0.033428,
3081 14,14,0.964702,0.031140,
3082 15,14,0.965026,0.029024,
3084 11,15,0.967199,0.038211,
3085 12,15,0.966907,0.035775,
3086 13,15,0.966799,0.033479,
3087 14,15,0.966843,0.031327,
3088 15,15,0.967011,0.029320,
3090 11,16,0.969597,0.037756,
3091 12,16,0.969184,0.035515,
3092 13,16,0.968947,0.033384,
3093 14,16,0.968860,0.031370,
3094 15,16,0.968897,0.029476,
3096 11,17,0.971789,0.037200,
3097 12,17,0.971285,0.035144,
3098 13,17,0.970946,0.033172,
3099 14,17,0.970752,0.031293,
3100 15,17,0.970680,0.029512,
3102 11,18,0.973792,0.036572,
3103 12,18,0.973220,0.034687,
3104 13,18,0.972802,0.032865,
3105 14,18,0.972521,0.031117,
3106 15,18,0.972359,0.029448,
3108 11,19,0.975621,0.035893,
3109 12,19,0.974999,0.034166,
3110 13,19,0.974521,0.032485,
3111 14,19,0.974172,0.030862,
3112 15,19,0.973936,0.029301,
3114 11,20,0.977290,0.035179,
3115 12,20,0.976634,0.033597,
3116 13,20,0.976112,0.032049,
3117 14,20,0.975709,0.030542,
3118 15,20,0.975414,0.029086,
3120 16,00,0.944130,0.000000,
3121 17,00,0.947100,0.000000,
3122 18,00,0.949769,0.000000,
3123 19,00,0.952181,0.000000,
3124 20,00,0.954371,0.000000,
3126 16,01,0.944306,0.003128,
3127 17,01,0.947250,0.002804,
3128 18,01,0.949897,0.002527,
3129 19,01,0.952291,0.002290,
3130 20,01,0.954467,0.002085,
3132 16,02,0.944829,0.006196,
3133 17,02,0.947693,0.005560,
3134 18,02,0.950277,0.005016,
3135 19,02,0.952619,0.004549,
3136 20,02,0.954752,0.004144,
3138 16,03,0.945678,0.009150,
3139 17,03,0.948416,0.008223,
3140 18,03,0.950898,0.007430,
3141 19,03,0.953156,0.006745,
3142 20,03,0.955219,0.006151,
3144 16,04,0.946824,0.011940,
3145 17,04,0.949395,0.010754,
3146 18,04,0.951741,0.009735,
3147 19,04,0.953887,0.008853,
3148 20,04,0.955856,0.008084,
3150 16,05,0.948226,0.014529,
3151 17,05,0.950600,0.013121,
3152 18,05,0.952782,0.011904,
3153 19,05,0.954793,0.010847,
3154 20,05,0.956650,0.009922,
3156 16,06,0.949842,0.016886,
3157 17,06,0.951995,0.015296,
3158 18,06,0.953995,0.013916,
3159 19,06,0.955853,0.012709,
3160 20,06,0.957581,0.011649,
3162 16,07,0.951624,0.018994,
3163 17,07,0.953545,0.017265,
3164 18,07,0.955349,0.015753,
3165 19,07,0.957043,0.014425,
3166 20,07,0.958631,0.013253,
3168 16,08,0.953527,0.020847,
3169 17,08,0.955212,0.019019,
3170 18,08,0.956815,0.017409,
3171 19,08,0.958337,0.015986,
3172 20,08,0.959779,0.014723,
3174 16,09,0.955509,0.022445,
3175 17,09,0.956960,0.020555,
3176 18,09,0.958363,0.018878,
3177 19,09,0.959712,0.017387,
3178 20,09,0.961004,0.016056,
3180 16,10,0.957530,0.023797,
3181 17,10,0.958758,0.021878,
3182 18,10,0.959966,0.020163,
3183 19,10,0.961144,0.018628,
3184 20,10,0.962288,0.017250,
3186 16,11,0.959559,0.024917,
3187 17,11,0.960576,0.022998,
3188 18,11,0.961598,0.021270,
3189 19,11,0.962612,0.019712,
3190 20,11,0.963611,0.018305,
3192 16,12,0.961568,0.025823,
3193 17,12,0.962391,0.023927,
3194 18,12,0.963238,0.022207,
3195 19,12,0.964097,0.020645,
3196 20,12,0.964956,0.019227,
3198 16,13,0.963534,0.026534,
3199 17,13,0.964181,0.024679,
3200 18,13,0.964868,0.022984,
3201 19,13,0.965582,0.021436,
3202 20,13,0.966310,0.020021,
3204 16,14,0.965443,0.027070,
3205 17,14,0.965931,0.025271,
3206 18,14,0.966472,0.023616,
3207 19,14,0.967052,0.022094,
3208 20,14,0.967658,0.020694,
3210 16,15,0.967280,0.027453,
3211 17,15,0.967628,0.025720,
3212 18,15,0.968039,0.024114,
3213 19,15,0.968496,0.022629,
3214 20,15,0.968990,0.021255,
3216 16,16,0.969038,0.027700,
3217 17,16,0.969264,0.026041,
3218 18,16,0.969558,0.024493,
3219 19,16,0.969906,0.023052,
3220 20,16,0.970297,0.021712,
3222 16,17,0.970712,0.027831,
3223 17,17,0.970832,0.026249,
3224 18,17,0.971023,0.024765,
3225 19,17,0.971273,0.023375,
3226 20,17,0.971571,0.022075,
3228 16,18,0.972300,0.027862,
3229 17,18,0.972328,0.026361,
3230 18,18,0.972430,0.024943,
3231 19,18,0.972594,0.023607,
3232 20,18,0.972808,0.022352,
3234 16,19,0.973800,0.027809,
3235 17,19,0.973751,0.026388,
3236 18,19,0.973775,0.025038,
3237 19,19,0.973863,0.023760,
3238 20,19,0.974004,0.022552,
3240 16,20,0.975215,0.027685,
3241 17,20,0.975099,0.026343,
3242 18,20,0.975057,0.025062,
3243 19,20,0.975079,0.023842,
3244 20,20,0.975155,0.022684
3245 ]),done);
3246 done;
3248 test_complex_table(lambda([z],z*%e^z*expintegral_e1(z)),'ec_1,838,1.25e-6);
3251 kill(all);
3252 done;
3254 /*****************************************************************************/