* * $Id: diflan.F,v 1.1.1.1 1996/04/01 15:02:43 mclareni Exp $ * * $Log: diflan.F,v $ * Revision 1.1.1.1 1996/04/01 15:02:43 mclareni * Mathlib gen * * #include "gen/pilot.h" C This will be DIFLAN,IF=DOUBLE and DIFLAN64,IF=-DOUBLE FUNCTION DIFLAN(X) DIMENSION P1(0:4),P2(0:4),P3(0:4),P4(0:4),P5(0:4),P6(0:4),P7(0:5) DIMENSION Q1(0:4),Q2(0:4),Q3(0:4),Q4(0:4),Q5(0:4),Q6(0:4),Q7(0:5) DIMENSION A1(1:6),A2(1:3) DATA (P1(I),I=0,4),(Q1(I),I=0,4) 1/-0.30620 16156E-1,-0.12514 24734E+0,-0.95514 20540E-1, 2 -0.26943 56206E-1,-0.26175 52485E-2, 3 1.0 , 0.11777 46655E+1, 0.61309 93990E+0, 4 0.15727 03422E+0, 0.17262 95027E-1/ DATA (P2(I),I=0,4),(Q2(I),I=0,4) 1/-0.15491 26548E-1,-0.75512 22105E-1,-0.25986 23886E-1, 2 0.54712 70049E-2, 0.21522 70275E-2, 3 1.0 , 0.99974 60723E+0, 0.49882 64176E+0, 4 0.12891 04987E+0, 0.16396 32530E-1/ DATA (P3(I),I=0,4),(Q3(I),I=0,4) 1/-0.15471 35743E-1,-0.73041 84799E-1,-0.15341 51353E-1, 2 0.35687 80079E-2,-0.92961 96751E-4, 3 1.0 , 0.83941 07748E+0, 0.41280 36830E+0, 4 0.10502 22892E+0, 0.17008 94650E-1/ DATA (P4(I),I=0,4),(Q4(I),I=0,4) 1/-0.15462 73317E-1,-0.68561 27408E-1, 0.46112 67324E-2, 2 -0.25499 45537E-3, 0.58761 90635E-5, 3 1.0 , 0.54532 66037E+0, 0.28025 11577E+0, 4 0.47491 21515E-1, 0.10962 78827E-1/ DATA (P5(I),I=0,4),(Q5(I),I=0,4) 1/ 0.86420 27131E-5,-0.74742 91951E-3, 0.29356 78494E-1, 2 -0.27696 95199E+1,-0.77695 42153E+1, 3 1.0 , 0.90003 29289E+0, 0.34619 66768E+2, 4 0.46668 93094E+1, 0.19264 64264E+3/ DATA (P6(I),I=0,4),(Q6(I),I=0,4) 1/-0.20124 96309E+1,-0.27484 32206E+3,-0.57590 40086E+4, 2 -0.16000 68673E+5, 0.53346 52087E+5, 3 1.0 , 0.12295 70501E+3, 0.18746 82285E+4, 4 0.56780 25130E+4, 0.52823 54475E5/ DATA (P7(I),I=0,5),(Q7(I),I=0,5) 1/-0.20015 84932E+1,-0.24074 20185E+4,-0.54566 69704E+6, 2 -0.28170 17048E+8,-0.20643 92982E+9, 0.90496 05994E+9, 3 1.0 , 0.11829 29609E+4, 0.25522 99337E+6, 4 0.11392 05796E+8, 0.39347 02081E+8, 0.21080 69087E+9/ DATA (A1(I),I=1,6) 1/-0.45833 33333E+0, 0.86805 55556E-3,-0.28525 27006E-2, 2 0.53868 92562E-2,-0.14312 07031E-1, 0.50629 96176E-1/ DATA (A2(I),I=1,3) 1/-0.75367 06011E+1,-0.96018 56962E+1, 0.17146 15239E+3/ V=X IF(V .LT. -2.6) THEN U=EXP(V+1) DIFLAN=0.3989422803*(EXP(-1/U)/U**1.5)* 1 (1+(A1(1)+(A1(2)+(A1(3)+(A1(4)+(A1(5)+A1(6)*U)*U)*U)*U)*U)*U) ELSEIF(V .LT. -1.75) THEN DIFLAN=(P1(0)+(P1(1)+(P1(2)+(P1(3)+P1(4)*V)*V)*V)*V)/ 1 (Q1(0)+(Q1(1)+(Q1(2)+(Q1(3)+Q1(4)*V)*V)*V)*V) ELSEIF(V .LT. -1.25) THEN DIFLAN=(P2(0)+(P2(1)+(P2(2)+(P2(3)+P2(4)*V)*V)*V)*V)/ 1 (Q2(0)+(Q2(1)+(Q2(2)+(Q2(3)+Q2(4)*V)*V)*V)*V) ELSEIF(V .LT. 0.5) THEN DIFLAN=(P3(0)+(P3(1)+(P3(2)+(P3(3)+P3(4)*V)*V)*V)*V)/ 1 (Q3(0)+(Q3(1)+(Q3(2)+(Q3(3)+Q3(4)*V)*V)*V)*V) ELSEIF(V .LT. 5) THEN DIFLAN=(P4(0)+(P4(1)+(P4(2)+(P4(3)+P4(4)*V)*V)*V)*V)/ 1 (Q4(0)+(Q4(1)+(Q4(2)+(Q4(3)+Q4(4)*V)*V)*V)*V) ELSEIF(V .LT. 15) THEN U=1/V DIFLAN=(P5(0)+(P5(1)+(P5(2)+(P5(3)+P5(4)*U)*U)*U)*U)/ 1 (Q5(0)+(Q5(1)+(Q5(2)+(Q5(3)+Q5(4)*U)*U)*U)*U) ELSEIF(V .LT. 50) THEN U=1/V DIFLAN=U**3*(P6(0)+(P6(1)+(P6(2)+(P6(3)+P6(4)*U)*U)*U)*U)/ 1 (Q6(0)+(Q6(1)+(Q6(2)+(Q6(3)+Q6(4)*U)*U)*U)*U) ELSEIF(V .LT. 300) THEN U=1/V DIFLAN=U**3* 1 (P7(0)+(P7(1)+(P7(2)+(P7(3)+(P7(4)+P7(5)*U)*U)*U)*U)*U)/ 2 (Q7(0)+(Q7(1)+(Q7(2)+(Q7(3)+(Q7(4)+Q7(5)*U)*U)*U)*U)*U) ELSE U=V-V*LOG(V)/(V+1) U=1/(U-U*(U+LOG(U)-V)/(U+1)) DIFLAN=-U**3*(2.0+(A2(1)+(A2(2)+A2(3)*U)*U)*U) ENDIF RETURN END