Home » Archimedes archive » Archimedes World » AW-1994-12-Disc1.adf » Disk1Dec94 » !AWDec94/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
!AWDec94/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Archimedes World » AW-1994-12-Disc1.adf » Disk1Dec94 |
Filename: | !AWDec94/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel |
Read OK: | ✔ |
File size: | 1530 bytes |
Load address: | 0000 |
Exec address: | 0000 |
Duplicates
There are 5 duplicate copies of this file in the archive:
- Archimedes archive » Archimedes World » AW-1995-03-Disc1.adf » Disk1Mar95 » !AWMar95/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
- Archimedes archive » Archimedes World » AW-1994-12-Disc1.adf » Disk1Dec94 » !AWDec94/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
- Archimedes archive » Archimedes World » AW-1995-04-Disc1.adf » Disk1Apr95 » !AWApr95/Goodies/Draw/!DrawBasic/Library/SpecialFns/Bessel
- Archimedes archive » Archimedes World » AW-1995-01-Disc1.adf » Disk1Jan95 » !AWJan95/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
- Archimedes archive » Archimedes World » AW-1995-05-Disc1.adf » AWMay95_1 » InTheMag/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
- Archimedes archive » Archimedes World » AW-1995-02-Disc1.adf » Disk1Feb95 » !AWFeb95/Goodies/DrawBasic/!DrawBasic/Library/SpecialFns/Bessel
File contents
1REM > DrawBasic:Resources.Calculus.SpecialFns.Bessel 2 3REM ======================================================= 4REM 5REM copyright Joe Taylor June 1994 6REM 7REM N.B. For ERROR THROWBACK to work The first line above 8REM MUST have the correct pathname of this file. 9REM If you move the location of the file remember to 10REM alter this pathname. 11REM 12REM ======================================================= 13REM 14REM 15REM ------------------------------------------------------------------ 16REM 17REM References 18REM ========== 19REM 20REM 1. 'Handbook of Mathematical Functions' Dover Chapter 9 21REM M.Abramowitz & I.A.Stegun 22REM 23REM 2. 'Numerical Recipes' CUP, pp.170-180 24REM W.H.Press, B.P.Flannery, S.A.Teukolsky & W.T.Vetterling 25REM 26REM 27REM N.B. 28REM 29REM Bessel functions are solutions of the differential equation 30REM 31REM z^2 (d/dz)^2 w + z dw/dz + (z^2-n^2) w = 0 32REM 33REM 34REM ----------------------------------------------------------------- 35 36 37REM ------------------------------------ 38REM 39REM 1. Bessel functions of the 1st kind 40REM 41REM ------------------------------------ 42 43DEF FNBesselJ0(x) 44LOCAL i%,y,result,ax,y,z,xx 45LOCAL DATA 46IF ABSx < 8 THEN 47 y=x*x 48 RESTORE +0 49 DATA -184.9052456,77392.33017,-11214424.18,651619640.7,-13362590354,57568490574 50 DATA 1,267.8532712,59272.64853,9494680.718,1029532985,57568490411 51 result=FNPolynomial(y,6)/FNPolynomial(y,6) 52ELSE 53 ax=ABSx 54 z=8/ax 55 y=z*z 56 xx=ax-PI/4 57 RESTORE +0 58 DATA .2093887211E-6,-.20733706397E-5,.2734510407E-4,-.1098628627E-2,1 59 DATA -.934945152E-7,.7621095161E-6,-.6911147651E-5 60 DATA .1430488765E-3,-.1562499995E-1 61 result=COS(xx)*FNPolynomial(y,5)-z*SIN(xx)*FNPolynomial(y,5) 62 result=SQR(2/ax/PI)*result 63ENDIF 64RESTORE DATA 65=result 66 67DEF FNBesselJ1(x) 68LOCAL i%,y,result,ax,y,z,xx 69LOCAL DATA 70IF ABSx < 8 THEN 71 y=x*x 72 RESTORE +0 73 DATA -30.16036606,15704.4826,-2972611.439,242396853.1,-7895059235,72362614232 74 DATA 1,376.9991397,99447.43394,18583304.74,2300535178,144725228442 75 result=x*FNPolynomial(y,6)/FNPolynomial(y,6) 76ELSE 77 ax=ABSx 78 z=8/ax 79 y=z*z 80 xx=ax-3*PI/4 81 RESTORE +0 82 DATA -.240337019E-6,.2457520174E-5,-.3516396496E-4,.183105E-2,1 83 DATA .105787412E-6,-.88228987E-6,.8449199096E-5,-.2002690873E-3,.04687499995 84 result=(COS(xx)*FNPolynomial(y,5)-z*SIN(xx)*FNPolynomial(y,5))*SGN(x) 85 result=SQR(2/ax/PI)*result 86ENDIF 87RESTORE DATA 88=result 89 90DEF FNBesselJ(x,order%) 91LOCAL B,ax 92CASE order% OF 93 WHEN 0 : B=FNBesselJ0(x) 94 WHEN 1 : B=FNBesselJ1(x) 95 OTHERWISE 96 ax=ABSx 97 CASE TRUE OF 98 WHEN ax=0 : B=0 99 WHEN ax>order% : B=FNBesselForwardRecurrence(ax,order%) 100 OTHERWISE : B=FNBesselBackwardRecurrence(ax,order%) 101 ENDCASE 102ENDCASE 103=B 104 105DEF FNBesselForwardRecurrence(ax,order%) 106LOCAL B0,B1,B,jj%,tox 107tox=2/ax 108B0=FNBesselJ0(ax) : B1=FNBesselJ1(ax) 109FOR jj%=1 TO order%-1 110 B=jj%*tox*B1-B0 111 B0=B1 : B1=B 112 NEXT 113=B 114 115DEF FNBesselBackwardRecurrence(ax,order%) 116LOCAL BJP,BJ,BJM,jj%,tox,sum,bessj,jsum% 117tox=2/ax 118mm%=2*((order%+INT(SQR(order%*40))) DIV 2) 119BJP=0 : BJ=1 : sum=0 : jsum%=0 : bessj=0 120FOR jj%=mm% TO 1 STEP-1 121 BJM=jj%*tox*BJ-BJP 122 BJP=BJ : BJ=BJM 123 IF ABS(BJ)>1E10 THEN 124 BJ=BJ/1E10 : BJP=BJP/1E10 : bessj=bessj/1E10 : sum=sum/1E10 125 ENDIF 126 IF jsum%<>0 THEN sum+=BJ 127 jsum%=1-jsum% 128 IF jj%=order% THEN bessj=BJP 129 NEXT 130 sum=2*sum-BJ 131 =bessj/sum 132 133DEF FNBesselJ_Asymptotic(x,n%)=SQR(2/PI/x)*COS(x-PI*n%/2-PI/4) 134 135REM ------------------------------------ 136REM 137REM 2. Bessel functions of the 2cnd kind 138REM 139REM ------------------------------------ 140 141DEF FNBesselY0(x) 142REM Not defined for negative x 143LOCAL i%,y,result,y,z,xx 144LOCAL DATA 145IF x < 8 THEN 146 y=x*x 147 RESTORE +0 148 DATA 228.4622733,-86327.92757,10879881.29,-512359803.6,7062834065,-2957821389 149 DATA 1,226.1030244,47447.2647,7189466.438,745249964.8,40076544269 150 result=FNPolynomial(y,6)/FNPolynomial(y,6)+.636619772*FNBesselJ0(x)*LN(x) 151ELSE 152 z=8/x 153 y=z*z 154 xx=x-.785398164 155 RESTORE +0 156 DATA .2093887211E-6,-.2073370639E-5,.2734510407E-4,-.1098628627E-2,1 157 DATA -.934945152E-7,.7621095161E-6,-.6911147651E-5,.1430488765E-3 158 DATA -.1562499995E-1 159 result=SQR(.636619772/x) 160 result=result*(SIN(xx)*FNPolynomial(y,5)+z*COS(xx)*FNPolynomial(y,5)) 161ENDIF 162RESTORE DATA 163=result 164 165DEF FNBesselY1(x) 166REM Not defined for negative x 167LOCAL i%,y,result,y,z,xx 168LOCAL DATA 169IF x < 8 THEN 170 y=x*x 171 RESTORE +0 172 DATA .8511937935E4,-.4237922726E7,.7349264551E9,-.5153438139E11 173 DATA .1275274390E13,-.4900604943E13 174 result=x*FNPolynomial(y,6) 175 DATA 1,.3549632885E3,.102042605E6,.2245904002E8,.3733650367E10 176 DATA .4244419664E12,.249958057E14 177 result=result/FNPolynomial(y,7)+.636619772*(FNBesselJ1(x)*LN(x)-1/x) 178ELSE 179 z=8/x 180 y=z*z 181 xx=x-2.356194491 182 RESTORE +0 183 DATA -.240337019E-6,.2457520174E-5,-.3516396496E-4,.183105E-2,1 184 result=SIN(xx)*FNPolynomial(y,5) 185 DATA .105787412E-6,-.88228987E-6,.8449199096E-5,-.2002690873E-3,.04687499995 186 result+=z*COS(xx)*FNPolynomial(y,5) 187 result=SQR(.636619772/x)*result 188ENDIF 189RESTORE DATA 190=result 191 192DEF FNBesselY(x,order%) 193LOCAL B,factor,b1,b0,ii% 194CASE order% OF 195 WHEN 0 196 B=FNBesselY0(x) 197 WHEN 1 198 B=FNBesselY1(x) 199 OTHERWISE 200 factor=2/x 201 b1=FNBesselY1(x) : b0=FNBesselY0(x) 202 FOR ii%=1 TO order%-1 203 B=ii%*factor*b1-b0 204 b0=b1 : b1=B 205 NEXT 206ENDCASE 207=B 208 209REM ------------------------------------ 210REM 211REM 3. Utility : Evaluating Polynomials 212REM 213REM ------------------------------------ 214 215DEF FNPolynomial(x,n%) 216LOCAL i%,coeff,P 217P=0 218FOR i%=1 TO n% 219 READ coeff 220 P=coeff+P*x 221 NEXT 222=P
6� > DrawBasic:Resources.Calculus.SpecialFns.Bessel =� ======================================================= � $� copyright Joe Taylor June 1994 � ;� N.B. For ERROR THROWBACK to work The first line above 7� MUST have the correct pathname of this file. ;� If you move the location of the file remember to � alter this pathname. � =� ======================================================= � � H� ------------------------------------------------------------------ � � References � ========== � >� 1. 'Handbook of Mathematical Functions' Dover Chapter 9 $� M.Abramowitz & I.A.Stegun � .� 2. 'Numerical Recipes' CUP, pp.170-180 B� W.H.Press, B.P.Flannery, S.A.Teukolsky & W.T.Vetterling � � � N.B. � F� Bessel functions are solutions of the differential equation � <� z^2 (d/dz)^2 w + z dw/dz + (z^2-n^2) w = 0 � !� "G� ----------------------------------------------------------------- # $ %*� ------------------------------------ &� ')� 1. Bessel functions of the 1st kind (� )*� ------------------------------------ * +� �BesselJ0(x) ,� i%,y,result,ax,y,z,xx -� � .� �x < 8 � / y=x*x 0 � +0 1Q � -184.9052456,77392.33017,-11214424.18,651619640.7,-13362590354,57568490574 2C � 1,267.8532712,59272.64853,9494680.718,1029532985,57568490411 3- result=�Polynomial(y,6)/�Polynomial(y,6) 4� 5 ax=�x 6 z=8/ax 7 y=z*z 8 xx=ax-�/4 9 � +0 :G � .2093887211E-6,-.20733706397E-5,.2734510407E-4,-.1098628627E-2,1 ;4 � -.934945152E-7,.7621095161E-6,-.6911147651E-5 <% � .1430488765E-3,-.1562499995E-1 =; result=�(xx)*�Polynomial(y,5)-z*�(xx)*�Polynomial(y,5) > result=�(2/ax/�)*result ?� @� � A=result B C� �BesselJ1(x) D� i%,y,result,ax,y,z,xx E� � F� �x < 8 � G y=x*x H � +0 IO � -30.16036606,15704.4826,-2972611.439,242396853.1,-7895059235,72362614232 JD � 1,376.9991397,99447.43394,18583304.74,2300535178,144725228442 K/ result=x*�Polynomial(y,6)/�Polynomial(y,6) L� M ax=�x N z=8/ax O y=z*z P xx=ax-3*�/4 Q � +0 RA � -.240337019E-6,.2457520174E-5,-.3516396496E-4,.183105E-2,1 SN � .105787412E-6,-.88228987E-6,.8449199096E-5,-.2002690873E-3,.04687499995 TB result=(�(xx)*�Polynomial(y,5)-z*�(xx)*�Polynomial(y,5))*�(x) U result=�(2/ax/�)*result V� W� � X=result Y Z� �BesselJ(x,order%) [ � B,ax \Ȏ order% � ] � 0 : B=�BesselJ0(x) ^ � 1 : B=�BesselJ1(x) _ ` ax=�x a Ȏ � � b � ax=0 : B=0 c: � ax>order% : B=�BesselForwardRecurrence(ax,order%) d6 : B=�BesselBackwardRecurrence(ax,order%) e � f� g=B h i)� �BesselForwardRecurrence(ax,order%) j� B0,B1,B,jj%,tox ktox=2/ax l'B0=�BesselJ0(ax) : B1=�BesselJ1(ax) m� jj%=1 � order%-1 n B=jj%*tox*B1-B0 o B0=B1 : B1=B p � q=B r s*� �BesselBackwardRecurrence(ax,order%) t(� BJP,BJ,BJM,jj%,tox,sum,bessj,jsum% utox=2/ax v(mm%=2*((order%+�(�(order%*40))) � 2) w,BJP=0 : BJ=1 : sum=0 : jsum%=0 : bessj=0 x� jj%=mm% � 1 �-1 y BJM=jj%*tox*BJ-BJP z BJP=BJ : BJ=BJM { � �(BJ)>1E10 � |A BJ=BJ/1E10 : BJP=BJP/1E10 : bessj=bessj/1E10 : sum=sum/1E10 } � ~ � jsum%<>0 � sum+=BJ jsum%=1-jsum% � � jj%=order% � bessj=BJP � � � sum=2*sum-BJ � =bessj/sum � �8� �BesselJ_Asymptotic(x,n%)=�(2/�/x)*�(x-�*n%/2-�/4) � �*� ------------------------------------ �� �*� 2. Bessel functions of the 2cnd kind �� �*� ------------------------------------ � �� �BesselY0(x) � � Not defined for negative x �� i%,y,result,y,z,xx �� � � � x < 8 � � y=x*x � � +0 �O � 228.4622733,-86327.92757,10879881.29,-512359803.6,7062834065,-2957821389 �C � 1,226.1030244,47447.2647,7189466.438,745249964.8,40076544269 �J result=�Polynomial(y,6)/�Polynomial(y,6)+.636619772*�BesselJ0(x)*�(x) �� � z=8/x � y=z*z � xx=x-.785398164 � � +0 �F � .2093887211E-6,-.2073370639E-5,.2734510407E-4,-.1098628627E-2,1 �C � -.934945152E-7,.7621095161E-6,-.6911147651E-5,.1430488765E-3 � � -.1562499995E-1 � result=�(.636619772/x) �D result=result*(�(xx)*�Polynomial(y,5)+z*�(xx)*�Polynomial(y,5)) �� �� � �=result � �� �BesselY1(x) � � Not defined for negative x �� i%,y,result,y,z,xx �� � � � x < 8 � � y=x*x � � +0 �A � .8511937935E4,-.4237922726E7,.7349264551E9,-.5153438139E11 �% � .1275274390E13,-.4900604943E13 � result=x*�Polynomial(y,6) �@ � 1,.3549632885E3,.102042605E6,.2245904002E8,.3733650367E10 �# � .4244419664E12,.249958057E14 �F result=result/�Polynomial(y,7)+.636619772*(�BesselJ1(x)*�(x)-1/x) �� � z=8/x � y=z*z � xx=x-2.356194491 � � +0 �A � -.240337019E-6,.2457520174E-5,-.3516396496E-4,.183105E-2,1 �" result=�(xx)*�Polynomial(y,5) �N � .105787412E-6,-.88228987E-6,.8449199096E-5,-.2002690873E-3,.04687499995 �% result+=z*�(xx)*�Polynomial(y,5) �" result=�(.636619772/x)*result �� �� � �=result � �� �BesselY(x,order%) �� B,factor,b1,b0,ii% �Ȏ order% � � � 0 � B=�BesselY0(x) � � 1 � B=�BesselY1(x) � � factor=2/x �' b1=�BesselY1(x) : b0=�BesselY0(x) � � ii%=1 � order%-1 � B=ii%*factor*b1-b0 � b0=b1 : b1=B � � �� �=B � �*� ------------------------------------ �� �)� 3. Utility : Evaluating Polynomials �� �*� ------------------------------------ � �� �Polynomial(x,n%) �� i%,coeff,P �P=0 �� i%=1 � n% � � coeff � P=coeff+P*x � � �=P �
00000000 0d 00 01 36 f4 20 3e 20 44 72 61 77 42 61 73 69 |...6. > DrawBasi| 00000010 63 3a 52 65 73 6f 75 72 63 65 73 2e 43 61 6c 63 |c:Resources.Calc| 00000020 75 6c 75 73 2e 53 70 65 63 69 61 6c 46 6e 73 2e |ulus.SpecialFns.| 00000030 42 65 73 73 65 6c 0d 00 02 04 0d 00 03 3d f4 20 |Bessel.......=. | 00000040 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| * 00000070 3d 3d 3d 3d 3d 3d 3d 0d 00 04 05 f4 0d 00 05 24 |=======........$| 00000080 f4 20 63 6f 70 79 72 69 67 68 74 20 4a 6f 65 20 |. copyright Joe | 00000090 54 61 79 6c 6f 72 20 4a 75 6e 65 20 31 39 39 34 |Taylor June 1994| 000000a0 0d 00 06 05 f4 0d 00 07 3b f4 20 4e 2e 42 2e 20 |........;. N.B. | 000000b0 46 6f 72 20 45 52 52 4f 52 20 54 48 52 4f 57 42 |For ERROR THROWB| 000000c0 41 43 4b 20 74 6f 20 77 6f 72 6b 20 54 68 65 20 |ACK to work The | 000000d0 66 69 72 73 74 20 6c 69 6e 65 20 61 62 6f 76 65 |first line above| 000000e0 0d 00 08 37 f4 20 20 20 20 20 20 4d 55 53 54 20 |...7. MUST | 000000f0 68 61 76 65 20 74 68 65 20 63 6f 72 72 65 63 74 |have the correct| 00000100 20 70 61 74 68 6e 61 6d 65 20 6f 66 20 74 68 69 | pathname of thi| 00000110 73 20 66 69 6c 65 2e 0d 00 09 3b f4 20 20 20 20 |s file....;. | 00000120 20 20 49 66 20 79 6f 75 20 6d 6f 76 65 20 74 68 | If you move th| 00000130 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 |e location of th| 00000140 65 20 66 69 6c 65 20 72 65 6d 65 6d 62 65 72 20 |e file remember | 00000150 74 6f 0d 00 0a 1f f4 20 20 20 20 20 20 61 6c 74 |to..... alt| 00000160 65 72 20 74 68 69 73 20 70 61 74 68 6e 61 6d 65 |er this pathname| 00000170 2e 0d 00 0b 05 f4 0d 00 0c 3d f4 20 3d 3d 3d 3d |.........=. ====| 00000180 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| * 000001b0 3d 3d 3d 0d 00 0d 05 f4 0d 00 0e 05 f4 0d 00 0f |===.............| 000001c0 48 f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |H. -------------| 000001d0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| * 00000200 2d 2d 2d 2d 2d 0d 00 10 05 f4 0d 00 11 10 f4 20 |-----.......... | 00000210 52 65 66 65 72 65 6e 63 65 73 0d 00 12 10 f4 20 |References..... | 00000220 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0d 00 13 05 f4 0d |==========......| 00000230 00 14 3e f4 20 20 31 2e 20 27 48 61 6e 64 62 6f |..>. 1. 'Handbo| 00000240 6f 6b 20 6f 66 20 4d 61 74 68 65 6d 61 74 69 63 |ok of Mathematic| 00000250 61 6c 20 46 75 6e 63 74 69 6f 6e 73 27 20 44 6f |al Functions' Do| 00000260 76 65 72 20 43 68 61 70 74 65 72 20 39 0d 00 15 |ver Chapter 9...| 00000270 24 f4 20 20 20 20 20 20 4d 2e 41 62 72 61 6d 6f |$. M.Abramo| 00000280 77 69 74 7a 20 26 20 49 2e 41 2e 53 74 65 67 75 |witz & I.A.Stegu| 00000290 6e 0d 00 16 05 f4 0d 00 17 2e f4 20 20 32 2e 20 |n.......... 2. | 000002a0 27 4e 75 6d 65 72 69 63 61 6c 20 52 65 63 69 70 |'Numerical Recip| 000002b0 65 73 27 20 43 55 50 2c 20 20 70 70 2e 31 37 30 |es' CUP, pp.170| 000002c0 2d 31 38 30 0d 00 18 42 f4 20 20 20 20 20 20 57 |-180...B. W| 000002d0 2e 48 2e 50 72 65 73 73 2c 20 42 2e 50 2e 46 6c |.H.Press, B.P.Fl| 000002e0 61 6e 6e 65 72 79 2c 20 53 2e 41 2e 54 65 75 6b |annery, S.A.Teuk| 000002f0 6f 6c 73 6b 79 20 26 20 57 2e 54 2e 56 65 74 74 |olsky & W.T.Vett| 00000300 65 72 6c 69 6e 67 0d 00 19 05 f4 0d 00 1a 05 f4 |erling..........| 00000310 0d 00 1b 0b f4 20 20 4e 2e 42 2e 0d 00 1c 05 f4 |..... N.B......| 00000320 0d 00 1d 46 f4 20 20 20 20 20 20 42 65 73 73 65 |...F. Besse| 00000330 6c 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 20 |l functions are | 00000340 73 6f 6c 75 74 69 6f 6e 73 20 6f 66 20 74 68 65 |solutions of the| 00000350 20 64 69 66 66 65 72 65 6e 74 69 61 6c 20 65 71 | differential eq| 00000360 75 61 74 69 6f 6e 0d 00 1e 05 f4 0d 00 1f 3c f4 |uation........<.| 00000370 20 20 20 20 20 20 20 20 20 20 20 20 20 7a 5e 32 | z^2| 00000380 20 28 64 2f 64 7a 29 5e 32 20 77 20 2b 20 7a 20 | (d/dz)^2 w + z | 00000390 64 77 2f 64 7a 20 2b 20 28 7a 5e 32 2d 6e 5e 32 |dw/dz + (z^2-n^2| 000003a0 29 20 77 20 3d 20 30 0d 00 20 05 f4 0d 00 21 05 |) w = 0.. ....!.| 000003b0 f4 0d 00 22 47 f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d |..."G. ---------| 000003c0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| * 000003f0 2d 2d 2d 2d 2d 2d 2d 2d 0d 00 23 04 0d 00 24 04 |--------..#...$.| 00000400 0d 00 25 2a f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |..%*. ----------| 00000410 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00000420 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 00 26 05 f4 0d |----------..&...| 00000430 00 27 29 f4 20 31 2e 20 42 65 73 73 65 6c 20 66 |.'). 1. Bessel f| 00000440 75 6e 63 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 |unctions of the | 00000450 31 73 74 20 6b 69 6e 64 0d 00 28 05 f4 0d 00 29 |1st kind..(....)| 00000460 2a f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |*. -------------| 00000470 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00000480 2d 2d 2d 2d 2d 2d 2d 0d 00 2a 04 0d 00 2b 12 dd |-------..*...+..| 00000490 20 a4 42 65 73 73 65 6c 4a 30 28 78 29 0d 00 2c | .BesselJ0(x)..,| 000004a0 1b ea 20 69 25 2c 79 2c 72 65 73 75 6c 74 2c 61 |.. i%,y,result,a| 000004b0 78 2c 79 2c 7a 2c 78 78 0d 00 2d 07 ea 20 dc 0d |x,y,z,xx..-.. ..| 000004c0 00 2e 0e e7 20 94 78 20 3c 20 38 20 8c 0d 00 2f |.... .x < 8 .../| 000004d0 0a 20 79 3d 78 2a 78 0d 00 30 09 20 f7 20 2b 30 |. y=x*x..0. . +0| 000004e0 0d 00 31 51 20 dc 20 2d 31 38 34 2e 39 30 35 32 |..1Q . -184.9052| 000004f0 34 35 36 2c 37 37 33 39 32 2e 33 33 30 31 37 2c |456,77392.33017,| 00000500 2d 31 31 32 31 34 34 32 34 2e 31 38 2c 36 35 31 |-11214424.18,651| 00000510 36 31 39 36 34 30 2e 37 2c 2d 31 33 33 36 32 35 |619640.7,-133625| 00000520 39 30 33 35 34 2c 35 37 35 36 38 34 39 30 35 37 |90354,5756849057| 00000530 34 0d 00 32 43 20 dc 20 31 2c 32 36 37 2e 38 35 |4..2C . 1,267.85| 00000540 33 32 37 31 32 2c 35 39 32 37 32 2e 36 34 38 35 |32712,59272.6485| 00000550 33 2c 39 34 39 34 36 38 30 2e 37 31 38 2c 31 30 |3,9494680.718,10| 00000560 32 39 35 33 32 39 38 35 2c 35 37 35 36 38 34 39 |29532985,5756849| 00000570 30 34 31 31 0d 00 33 2d 20 72 65 73 75 6c 74 3d |0411..3- result=| 00000580 a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c 36 29 |.Polynomial(y,6)| 00000590 2f a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c 36 |/.Polynomial(y,6| 000005a0 29 0d 00 34 05 cc 0d 00 35 0a 20 61 78 3d 94 78 |)..4....5. ax=.x| 000005b0 0d 00 36 0b 20 7a 3d 38 2f 61 78 0d 00 37 0a 20 |..6. z=8/ax..7. | 000005c0 79 3d 7a 2a 7a 0d 00 38 0e 20 78 78 3d 61 78 2d |y=z*z..8. xx=ax-| 000005d0 af 2f 34 0d 00 39 09 20 f7 20 2b 30 0d 00 3a 47 |./4..9. . +0..:G| 000005e0 20 dc 20 2e 32 30 39 33 38 38 37 32 31 31 45 2d | . .2093887211E-| 000005f0 36 2c 2d 2e 32 30 37 33 33 37 30 36 33 39 37 45 |6,-.20733706397E| 00000600 2d 35 2c 2e 32 37 33 34 35 31 30 34 30 37 45 2d |-5,.2734510407E-| 00000610 34 2c 2d 2e 31 30 39 38 36 32 38 36 32 37 45 2d |4,-.1098628627E-| 00000620 32 2c 31 0d 00 3b 34 20 dc 20 2d 2e 39 33 34 39 |2,1..;4 . -.9349| 00000630 34 35 31 35 32 45 2d 37 2c 2e 37 36 32 31 30 39 |45152E-7,.762109| 00000640 35 31 36 31 45 2d 36 2c 2d 2e 36 39 31 31 31 34 |5161E-6,-.691114| 00000650 37 36 35 31 45 2d 35 0d 00 3c 25 20 dc 20 2e 31 |7651E-5..<% . .1| 00000660 34 33 30 34 38 38 37 36 35 45 2d 33 2c 2d 2e 31 |430488765E-3,-.1| 00000670 35 36 32 34 39 39 39 39 35 45 2d 31 0d 00 3d 3b |562499995E-1..=;| 00000680 20 72 65 73 75 6c 74 3d 9b 28 78 78 29 2a a4 50 | result=.(xx)*.P| 00000690 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c 35 29 2d 7a |olynomial(y,5)-z| 000006a0 2a b5 28 78 78 29 2a a4 50 6f 6c 79 6e 6f 6d 69 |*.(xx)*.Polynomi| 000006b0 61 6c 28 79 2c 35 29 0d 00 3e 1c 20 72 65 73 75 |al(y,5)..>. resu| 000006c0 6c 74 3d b6 28 32 2f 61 78 2f af 29 2a 72 65 73 |lt=.(2/ax/.)*res| 000006d0 75 6c 74 0d 00 3f 05 cd 0d 00 40 07 f7 20 dc 0d |ult..?....@.. ..| 000006e0 00 41 0b 3d 72 65 73 75 6c 74 0d 00 42 04 0d 00 |.A.=result..B...| 000006f0 43 12 dd 20 a4 42 65 73 73 65 6c 4a 31 28 78 29 |C.. .BesselJ1(x)| 00000700 0d 00 44 1b ea 20 69 25 2c 79 2c 72 65 73 75 6c |..D.. i%,y,resul| 00000710 74 2c 61 78 2c 79 2c 7a 2c 78 78 0d 00 45 07 ea |t,ax,y,z,xx..E..| 00000720 20 dc 0d 00 46 0e e7 20 94 78 20 3c 20 38 20 8c | ...F.. .x < 8 .| 00000730 0d 00 47 0a 20 79 3d 78 2a 78 0d 00 48 09 20 f7 |..G. y=x*x..H. .| 00000740 20 2b 30 0d 00 49 4f 20 dc 20 2d 33 30 2e 31 36 | +0..IO . -30.16| 00000750 30 33 36 36 30 36 2c 31 35 37 30 34 2e 34 38 32 |036606,15704.482| 00000760 36 2c 2d 32 39 37 32 36 31 31 2e 34 33 39 2c 32 |6,-2972611.439,2| 00000770 34 32 33 39 36 38 35 33 2e 31 2c 2d 37 38 39 35 |42396853.1,-7895| 00000780 30 35 39 32 33 35 2c 37 32 33 36 32 36 31 34 32 |059235,723626142| 00000790 33 32 0d 00 4a 44 20 dc 20 31 2c 33 37 36 2e 39 |32..JD . 1,376.9| 000007a0 39 39 31 33 39 37 2c 39 39 34 34 37 2e 34 33 33 |991397,99447.433| 000007b0 39 34 2c 31 38 35 38 33 33 30 34 2e 37 34 2c 32 |94,18583304.74,2| 000007c0 33 30 30 35 33 35 31 37 38 2c 31 34 34 37 32 35 |300535178,144725| 000007d0 32 32 38 34 34 32 0d 00 4b 2f 20 72 65 73 75 6c |228442..K/ resul| 000007e0 74 3d 78 2a a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 |t=x*.Polynomial(| 000007f0 79 2c 36 29 2f a4 50 6f 6c 79 6e 6f 6d 69 61 6c |y,6)/.Polynomial| 00000800 28 79 2c 36 29 0d 00 4c 05 cc 0d 00 4d 0a 20 61 |(y,6)..L....M. a| 00000810 78 3d 94 78 0d 00 4e 0b 20 7a 3d 38 2f 61 78 0d |x=.x..N. z=8/ax.| 00000820 00 4f 0a 20 79 3d 7a 2a 7a 0d 00 50 10 20 78 78 |.O. y=z*z..P. xx| 00000830 3d 61 78 2d 33 2a af 2f 34 0d 00 51 09 20 f7 20 |=ax-3*./4..Q. . | 00000840 2b 30 0d 00 52 41 20 dc 20 2d 2e 32 34 30 33 33 |+0..RA . -.24033| 00000850 37 30 31 39 45 2d 36 2c 2e 32 34 35 37 35 32 30 |7019E-6,.2457520| 00000860 31 37 34 45 2d 35 2c 2d 2e 33 35 31 36 33 39 36 |174E-5,-.3516396| 00000870 34 39 36 45 2d 34 2c 2e 31 38 33 31 30 35 45 2d |496E-4,.183105E-| 00000880 32 2c 31 0d 00 53 4e 20 dc 20 2e 31 30 35 37 38 |2,1..SN . .10578| 00000890 37 34 31 32 45 2d 36 2c 2d 2e 38 38 32 32 38 39 |7412E-6,-.882289| 000008a0 38 37 45 2d 36 2c 2e 38 34 34 39 31 39 39 30 39 |87E-6,.844919909| 000008b0 36 45 2d 35 2c 2d 2e 32 30 30 32 36 39 30 38 37 |6E-5,-.200269087| 000008c0 33 45 2d 33 2c 2e 30 34 36 38 37 34 39 39 39 39 |3E-3,.0468749999| 000008d0 35 0d 00 54 42 20 72 65 73 75 6c 74 3d 28 9b 28 |5..TB result=(.(| 000008e0 78 78 29 2a a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 |xx)*.Polynomial(| 000008f0 79 2c 35 29 2d 7a 2a b5 28 78 78 29 2a a4 50 6f |y,5)-z*.(xx)*.Po| 00000900 6c 79 6e 6f 6d 69 61 6c 28 79 2c 35 29 29 2a b4 |lynomial(y,5))*.| 00000910 28 78 29 0d 00 55 1c 20 72 65 73 75 6c 74 3d b6 |(x)..U. result=.| 00000920 28 32 2f 61 78 2f af 29 2a 72 65 73 75 6c 74 0d |(2/ax/.)*result.| 00000930 00 56 05 cd 0d 00 57 07 f7 20 dc 0d 00 58 0b 3d |.V....W.. ...X.=| 00000940 72 65 73 75 6c 74 0d 00 59 04 0d 00 5a 18 dd 20 |result..Y...Z.. | 00000950 a4 42 65 73 73 65 6c 4a 28 78 2c 6f 72 64 65 72 |.BesselJ(x,order| 00000960 25 29 0d 00 5b 0a ea 20 42 2c 61 78 0d 00 5c 0f |%)..[.. B,ax..\.| 00000970 c8 8e 20 6f 72 64 65 72 25 20 ca 0d 00 5d 19 20 |.. order% ...]. | 00000980 c9 20 30 20 3a 20 42 3d a4 42 65 73 73 65 6c 4a |. 0 : B=.BesselJ| 00000990 30 28 78 29 0d 00 5e 19 20 c9 20 31 20 3a 20 42 |0(x)..^. . 1 : B| 000009a0 3d a4 42 65 73 73 65 6c 4a 31 28 78 29 0d 00 5f |=.BesselJ1(x).._| 000009b0 06 20 7f 0d 00 60 0b 20 20 61 78 3d 94 78 0d 00 |. ...`. ax=.x..| 000009c0 61 0c 20 20 c8 8e 20 b9 20 ca 0d 00 62 18 20 20 |a. .. . ...b. | 000009d0 20 c9 20 61 78 3d 30 20 20 20 20 20 20 3a 20 42 | . ax=0 : B| 000009e0 3d 30 0d 00 63 3a 20 20 20 c9 20 61 78 3e 6f 72 |=0..c: . ax>or| 000009f0 64 65 72 25 20 3a 20 42 3d a4 42 65 73 73 65 6c |der% : B=.Bessel| 00000a00 46 6f 72 77 61 72 64 52 65 63 75 72 72 65 6e 63 |ForwardRecurrenc| 00000a10 65 28 61 78 2c 6f 72 64 65 72 25 29 0d 00 64 36 |e(ax,order%)..d6| 00000a20 20 20 20 7f 20 20 20 20 20 20 3a 20 42 3d a4 42 | . : B=.B| 00000a30 65 73 73 65 6c 42 61 63 6b 77 61 72 64 52 65 63 |esselBackwardRec| 00000a40 75 72 72 65 6e 63 65 28 61 78 2c 6f 72 64 65 72 |urrence(ax,order| 00000a50 25 29 0d 00 65 07 20 20 cb 0d 00 66 05 cb 0d 00 |%)..e. ...f....| 00000a60 67 06 3d 42 0d 00 68 04 0d 00 69 29 dd 20 a4 42 |g.=B..h...i). .B| 00000a70 65 73 73 65 6c 46 6f 72 77 61 72 64 52 65 63 75 |esselForwardRecu| 00000a80 72 72 65 6e 63 65 28 61 78 2c 6f 72 64 65 72 25 |rrence(ax,order%| 00000a90 29 0d 00 6a 15 ea 20 42 30 2c 42 31 2c 42 2c 6a |)..j.. B0,B1,B,j| 00000aa0 6a 25 2c 74 6f 78 0d 00 6b 0c 74 6f 78 3d 32 2f |j%,tox..k.tox=2/| 00000ab0 61 78 0d 00 6c 27 42 30 3d a4 42 65 73 73 65 6c |ax..l'B0=.Bessel| 00000ac0 4a 30 28 61 78 29 20 3a 20 42 31 3d a4 42 65 73 |J0(ax) : B1=.Bes| 00000ad0 73 65 6c 4a 31 28 61 78 29 0d 00 6d 16 e3 20 6a |selJ1(ax)..m.. j| 00000ae0 6a 25 3d 31 20 b8 20 6f 72 64 65 72 25 2d 31 0d |j%=1 . order%-1.| 00000af0 00 6e 14 20 42 3d 6a 6a 25 2a 74 6f 78 2a 42 31 |.n. B=jj%*tox*B1| 00000b00 2d 42 30 0d 00 6f 11 20 42 30 3d 42 31 20 3a 20 |-B0..o. B0=B1 : | 00000b10 42 31 3d 42 0d 00 70 06 20 ed 0d 00 71 06 3d 42 |B1=B..p. ...q.=B| 00000b20 0d 00 72 04 0d 00 73 2a dd 20 a4 42 65 73 73 65 |..r...s*. .Besse| 00000b30 6c 42 61 63 6b 77 61 72 64 52 65 63 75 72 72 65 |lBackwardRecurre| 00000b40 6e 63 65 28 61 78 2c 6f 72 64 65 72 25 29 0d 00 |nce(ax,order%)..| 00000b50 74 28 ea 20 42 4a 50 2c 42 4a 2c 42 4a 4d 2c 6a |t(. BJP,BJ,BJM,j| 00000b60 6a 25 2c 74 6f 78 2c 73 75 6d 2c 62 65 73 73 6a |j%,tox,sum,bessj| 00000b70 2c 6a 73 75 6d 25 0d 00 75 0c 74 6f 78 3d 32 2f |,jsum%..u.tox=2/| 00000b80 61 78 0d 00 76 28 6d 6d 25 3d 32 2a 28 28 6f 72 |ax..v(mm%=2*((or| 00000b90 64 65 72 25 2b a8 28 b6 28 6f 72 64 65 72 25 2a |der%+.(.(order%*| 00000ba0 34 30 29 29 29 20 81 20 32 29 0d 00 77 2c 42 4a |40))) . 2)..w,BJ| 00000bb0 50 3d 30 20 3a 20 42 4a 3d 31 20 3a 20 73 75 6d |P=0 : BJ=1 : sum| 00000bc0 3d 30 20 3a 20 6a 73 75 6d 25 3d 30 20 3a 20 62 |=0 : jsum%=0 : b| 00000bd0 65 73 73 6a 3d 30 0d 00 78 15 e3 20 6a 6a 25 3d |essj=0..x.. jj%=| 00000be0 6d 6d 25 20 b8 20 31 20 88 2d 31 0d 00 79 17 20 |mm% . 1 .-1..y. | 00000bf0 42 4a 4d 3d 6a 6a 25 2a 74 6f 78 2a 42 4a 2d 42 |BJM=jj%*tox*BJ-B| 00000c00 4a 50 0d 00 7a 14 20 42 4a 50 3d 42 4a 20 3a 20 |JP..z. BJP=BJ : | 00000c10 42 4a 3d 42 4a 4d 0d 00 7b 13 20 e7 20 94 28 42 |BJ=BJM..{. . .(B| 00000c20 4a 29 3e 31 45 31 30 20 8c 0d 00 7c 41 20 20 42 |J)>1E10 ...|A B| 00000c30 4a 3d 42 4a 2f 31 45 31 30 20 3a 20 42 4a 50 3d |J=BJ/1E10 : BJP=| 00000c40 42 4a 50 2f 31 45 31 30 20 3a 20 62 65 73 73 6a |BJP/1E10 : bessj| 00000c50 3d 62 65 73 73 6a 2f 31 45 31 30 20 3a 20 73 75 |=bessj/1E10 : su| 00000c60 6d 3d 73 75 6d 2f 31 45 31 30 0d 00 7d 07 20 20 |m=sum/1E10..}. | 00000c70 cd 0d 00 7e 19 20 e7 20 6a 73 75 6d 25 3c 3e 30 |...~. . jsum%<>0| 00000c80 20 8c 20 73 75 6d 2b 3d 42 4a 0d 00 7f 12 20 6a | . sum+=BJ.... j| 00000c90 73 75 6d 25 3d 31 2d 6a 73 75 6d 25 0d 00 80 1d |sum%=1-jsum%....| 00000ca0 20 e7 20 6a 6a 25 3d 6f 72 64 65 72 25 20 8c 20 | . jj%=order% . | 00000cb0 62 65 73 73 6a 3d 42 4a 50 0d 00 81 06 20 ed 0d |bessj=BJP.... ..| 00000cc0 00 82 11 20 73 75 6d 3d 32 2a 73 75 6d 2d 42 4a |... sum=2*sum-BJ| 00000cd0 0d 00 83 0f 20 3d 62 65 73 73 6a 2f 73 75 6d 0d |.... =bessj/sum.| 00000ce0 00 84 04 0d 00 85 38 dd 20 a4 42 65 73 73 65 6c |......8. .Bessel| 00000cf0 4a 5f 41 73 79 6d 70 74 6f 74 69 63 28 78 2c 6e |J_Asymptotic(x,n| 00000d00 25 29 3d b6 28 32 2f af 2f 78 29 2a 9b 28 78 2d |%)=.(2/./x)*.(x-| 00000d10 af 2a 6e 25 2f 32 2d af 2f 34 29 0d 00 86 04 0d |.*n%/2-./4).....| 00000d20 00 87 2a f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |..*. -----------| 00000d30 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00000d40 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 00 88 05 f4 0d 00 |---------.......| 00000d50 89 2a f4 20 32 2e 20 42 65 73 73 65 6c 20 66 75 |.*. 2. Bessel fu| 00000d60 6e 63 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 32 |nctions of the 2| 00000d70 63 6e 64 20 6b 69 6e 64 0d 00 8a 05 f4 0d 00 8b |cnd kind........| 00000d80 2a f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |*. -------------| 00000d90 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00000da0 2d 2d 2d 2d 2d 2d 2d 0d 00 8c 04 0d 00 8d 12 dd |-------.........| 00000db0 20 a4 42 65 73 73 65 6c 59 30 28 78 29 0d 00 8e | .BesselY0(x)...| 00000dc0 20 f4 20 4e 6f 74 20 64 65 66 69 6e 65 64 20 66 | . Not defined f| 00000dd0 6f 72 20 6e 65 67 61 74 69 76 65 20 78 0d 00 8f |or negative x...| 00000de0 18 ea 20 69 25 2c 79 2c 72 65 73 75 6c 74 2c 79 |.. i%,y,result,y| 00000df0 2c 7a 2c 78 78 0d 00 90 07 ea 20 dc 0d 00 91 0d |,z,xx..... .....| 00000e00 e7 20 78 20 3c 20 38 20 8c 0d 00 92 0a 20 79 3d |. x < 8 ..... y=| 00000e10 78 2a 78 0d 00 93 09 20 f7 20 2b 30 0d 00 94 4f |x*x.... . +0...O| 00000e20 20 dc 20 32 32 38 2e 34 36 32 32 37 33 33 2c 2d | . 228.4622733,-| 00000e30 38 36 33 32 37 2e 39 32 37 35 37 2c 31 30 38 37 |86327.92757,1087| 00000e40 39 38 38 31 2e 32 39 2c 2d 35 31 32 33 35 39 38 |9881.29,-5123598| 00000e50 30 33 2e 36 2c 37 30 36 32 38 33 34 30 36 35 2c |03.6,7062834065,| 00000e60 2d 32 39 35 37 38 32 31 33 38 39 0d 00 95 43 20 |-2957821389...C | 00000e70 dc 20 31 2c 32 32 36 2e 31 30 33 30 32 34 34 2c |. 1,226.1030244,| 00000e80 34 37 34 34 37 2e 32 36 34 37 2c 37 31 38 39 34 |47447.2647,71894| 00000e90 36 36 2e 34 33 38 2c 37 34 35 32 34 39 39 36 34 |66.438,745249964| 00000ea0 2e 38 2c 34 30 30 37 36 35 34 34 32 36 39 0d 00 |.8,40076544269..| 00000eb0 96 4a 20 72 65 73 75 6c 74 3d a4 50 6f 6c 79 6e |.J result=.Polyn| 00000ec0 6f 6d 69 61 6c 28 79 2c 36 29 2f a4 50 6f 6c 79 |omial(y,6)/.Poly| 00000ed0 6e 6f 6d 69 61 6c 28 79 2c 36 29 2b 2e 36 33 36 |nomial(y,6)+.636| 00000ee0 36 31 39 37 37 32 2a a4 42 65 73 73 65 6c 4a 30 |619772*.BesselJ0| 00000ef0 28 78 29 2a aa 28 78 29 0d 00 97 05 cc 0d 00 98 |(x)*.(x)........| 00000f00 0a 20 7a 3d 38 2f 78 0d 00 99 0a 20 79 3d 7a 2a |. z=8/x.... y=z*| 00000f10 7a 0d 00 9a 14 20 78 78 3d 78 2d 2e 37 38 35 33 |z.... xx=x-.7853| 00000f20 39 38 31 36 34 0d 00 9b 09 20 f7 20 2b 30 0d 00 |98164.... . +0..| 00000f30 9c 46 20 dc 20 2e 32 30 39 33 38 38 37 32 31 31 |.F . .2093887211| 00000f40 45 2d 36 2c 2d 2e 32 30 37 33 33 37 30 36 33 39 |E-6,-.2073370639| 00000f50 45 2d 35 2c 2e 32 37 33 34 35 31 30 34 30 37 45 |E-5,.2734510407E| 00000f60 2d 34 2c 2d 2e 31 30 39 38 36 32 38 36 32 37 45 |-4,-.1098628627E| 00000f70 2d 32 2c 31 0d 00 9d 43 20 dc 20 2d 2e 39 33 34 |-2,1...C . -.934| 00000f80 39 34 35 31 35 32 45 2d 37 2c 2e 37 36 32 31 30 |945152E-7,.76210| 00000f90 39 35 31 36 31 45 2d 36 2c 2d 2e 36 39 31 31 31 |95161E-6,-.69111| 00000fa0 34 37 36 35 31 45 2d 35 2c 2e 31 34 33 30 34 38 |47651E-5,.143048| 00000fb0 38 37 36 35 45 2d 33 0d 00 9e 16 20 dc 20 2d 2e |8765E-3.... . -.| 00000fc0 31 35 36 32 34 39 39 39 39 35 45 2d 31 0d 00 9f |1562499995E-1...| 00000fd0 1b 20 72 65 73 75 6c 74 3d b6 28 2e 36 33 36 36 |. result=.(.6366| 00000fe0 31 39 37 37 32 2f 78 29 0d 00 a0 44 20 72 65 73 |19772/x)...D res| 00000ff0 75 6c 74 3d 72 65 73 75 6c 74 2a 28 b5 28 78 78 |ult=result*(.(xx| 00001000 29 2a a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c |)*.Polynomial(y,| 00001010 35 29 2b 7a 2a 9b 28 78 78 29 2a a4 50 6f 6c 79 |5)+z*.(xx)*.Poly| 00001020 6e 6f 6d 69 61 6c 28 79 2c 35 29 29 0d 00 a1 05 |nomial(y,5))....| 00001030 cd 0d 00 a2 07 f7 20 dc 0d 00 a3 0b 3d 72 65 73 |...... .....=res| 00001040 75 6c 74 0d 00 a4 04 0d 00 a5 12 dd 20 a4 42 65 |ult......... .Be| 00001050 73 73 65 6c 59 31 28 78 29 0d 00 a6 20 f4 20 4e |sselY1(x)... . N| 00001060 6f 74 20 64 65 66 69 6e 65 64 20 66 6f 72 20 6e |ot defined for n| 00001070 65 67 61 74 69 76 65 20 78 0d 00 a7 18 ea 20 69 |egative x..... i| 00001080 25 2c 79 2c 72 65 73 75 6c 74 2c 79 2c 7a 2c 78 |%,y,result,y,z,x| 00001090 78 0d 00 a8 07 ea 20 dc 0d 00 a9 0d e7 20 78 20 |x..... ...... x | 000010a0 3c 20 38 20 8c 0d 00 aa 0a 20 79 3d 78 2a 78 0d |< 8 ..... y=x*x.| 000010b0 00 ab 09 20 f7 20 2b 30 0d 00 ac 41 20 dc 20 2e |... . +0...A . .| 000010c0 38 35 31 31 39 33 37 39 33 35 45 34 2c 2d 2e 34 |8511937935E4,-.4| 000010d0 32 33 37 39 32 32 37 32 36 45 37 2c 2e 37 33 34 |237922726E7,.734| 000010e0 39 32 36 34 35 35 31 45 39 2c 2d 2e 35 31 35 33 |9264551E9,-.5153| 000010f0 34 33 38 31 33 39 45 31 31 0d 00 ad 25 20 dc 20 |438139E11...% . | 00001100 2e 31 32 37 35 32 37 34 33 39 30 45 31 33 2c 2d |.1275274390E13,-| 00001110 2e 34 39 30 30 36 30 34 39 34 33 45 31 33 0d 00 |.4900604943E13..| 00001120 ae 1e 20 72 65 73 75 6c 74 3d 78 2a a4 50 6f 6c |.. result=x*.Pol| 00001130 79 6e 6f 6d 69 61 6c 28 79 2c 36 29 0d 00 af 40 |ynomial(y,6)...@| 00001140 20 dc 20 31 2c 2e 33 35 34 39 36 33 32 38 38 35 | . 1,.3549632885| 00001150 45 33 2c 2e 31 30 32 30 34 32 36 30 35 45 36 2c |E3,.102042605E6,| 00001160 2e 32 32 34 35 39 30 34 30 30 32 45 38 2c 2e 33 |.2245904002E8,.3| 00001170 37 33 33 36 35 30 33 36 37 45 31 30 0d 00 b0 23 |733650367E10...#| 00001180 20 dc 20 2e 34 32 34 34 34 31 39 36 36 34 45 31 | . .4244419664E1| 00001190 32 2c 2e 32 34 39 39 35 38 30 35 37 45 31 34 0d |2,.249958057E14.| 000011a0 00 b1 46 20 72 65 73 75 6c 74 3d 72 65 73 75 6c |..F result=resul| 000011b0 74 2f a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c |t/.Polynomial(y,| 000011c0 37 29 2b 2e 36 33 36 36 31 39 37 37 32 2a 28 a4 |7)+.636619772*(.| 000011d0 42 65 73 73 65 6c 4a 31 28 78 29 2a aa 28 78 29 |BesselJ1(x)*.(x)| 000011e0 2d 31 2f 78 29 0d 00 b2 05 cc 0d 00 b3 0a 20 7a |-1/x)......... z| 000011f0 3d 38 2f 78 0d 00 b4 0a 20 79 3d 7a 2a 7a 0d 00 |=8/x.... y=z*z..| 00001200 b5 15 20 78 78 3d 78 2d 32 2e 33 35 36 31 39 34 |.. xx=x-2.356194| 00001210 34 39 31 0d 00 b6 09 20 f7 20 2b 30 0d 00 b7 41 |491.... . +0...A| 00001220 20 dc 20 2d 2e 32 34 30 33 33 37 30 31 39 45 2d | . -.240337019E-| 00001230 36 2c 2e 32 34 35 37 35 32 30 31 37 34 45 2d 35 |6,.2457520174E-5| 00001240 2c 2d 2e 33 35 31 36 33 39 36 34 39 36 45 2d 34 |,-.3516396496E-4| 00001250 2c 2e 31 38 33 31 30 35 45 2d 32 2c 31 0d 00 b8 |,.183105E-2,1...| 00001260 22 20 72 65 73 75 6c 74 3d b5 28 78 78 29 2a a4 |" result=.(xx)*.| 00001270 50 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c 35 29 0d |Polynomial(y,5).| 00001280 00 b9 4e 20 dc 20 2e 31 30 35 37 38 37 34 31 32 |..N . .105787412| 00001290 45 2d 36 2c 2d 2e 38 38 32 32 38 39 38 37 45 2d |E-6,-.88228987E-| 000012a0 36 2c 2e 38 34 34 39 31 39 39 30 39 36 45 2d 35 |6,.8449199096E-5| 000012b0 2c 2d 2e 32 30 30 32 36 39 30 38 37 33 45 2d 33 |,-.2002690873E-3| 000012c0 2c 2e 30 34 36 38 37 34 39 39 39 39 35 0d 00 ba |,.04687499995...| 000012d0 25 20 72 65 73 75 6c 74 2b 3d 7a 2a 9b 28 78 78 |% result+=z*.(xx| 000012e0 29 2a a4 50 6f 6c 79 6e 6f 6d 69 61 6c 28 79 2c |)*.Polynomial(y,| 000012f0 35 29 0d 00 bb 22 20 72 65 73 75 6c 74 3d b6 28 |5)..." result=.(| 00001300 2e 36 33 36 36 31 39 37 37 32 2f 78 29 2a 72 65 |.636619772/x)*re| 00001310 73 75 6c 74 0d 00 bc 05 cd 0d 00 bd 07 f7 20 dc |sult.......... .| 00001320 0d 00 be 0b 3d 72 65 73 75 6c 74 0d 00 bf 04 0d |....=result.....| 00001330 00 c0 18 dd 20 a4 42 65 73 73 65 6c 59 28 78 2c |.... .BesselY(x,| 00001340 6f 72 64 65 72 25 29 0d 00 c1 18 ea 20 42 2c 66 |order%)..... B,f| 00001350 61 63 74 6f 72 2c 62 31 2c 62 30 2c 69 69 25 0d |actor,b1,b0,ii%.| 00001360 00 c2 0f c8 8e 20 6f 72 64 65 72 25 20 ca 0d 00 |..... order% ...| 00001370 c3 08 20 c9 20 30 0d 00 c4 14 20 20 42 3d a4 42 |.. . 0.... B=.B| 00001380 65 73 73 65 6c 59 30 28 78 29 0d 00 c5 08 20 c9 |esselY0(x).... .| 00001390 20 31 0d 00 c6 14 20 20 42 3d a4 42 65 73 73 65 | 1.... B=.Besse| 000013a0 6c 59 31 28 78 29 0d 00 c7 06 20 7f 0d 00 c8 10 |lY1(x).... .....| 000013b0 20 20 66 61 63 74 6f 72 3d 32 2f 78 0d 00 c9 27 | factor=2/x...'| 000013c0 20 20 62 31 3d a4 42 65 73 73 65 6c 59 31 28 78 | b1=.BesselY1(x| 000013d0 29 20 3a 20 62 30 3d a4 42 65 73 73 65 6c 59 30 |) : b0=.BesselY0| 000013e0 28 78 29 0d 00 ca 18 20 20 e3 20 69 69 25 3d 31 |(x).... . ii%=1| 000013f0 20 b8 20 6f 72 64 65 72 25 2d 31 0d 00 cb 19 20 | . order%-1.... | 00001400 20 20 42 3d 69 69 25 2a 66 61 63 74 6f 72 2a 62 | B=ii%*factor*b| 00001410 31 2d 62 30 0d 00 cc 13 20 20 20 62 30 3d 62 31 |1-b0.... b0=b1| 00001420 20 3a 20 62 31 3d 42 0d 00 cd 08 20 20 20 ed 0d | : b1=B.... ..| 00001430 00 ce 05 cb 0d 00 cf 06 3d 42 0d 00 d0 04 0d 00 |........=B......| 00001440 d1 2a f4 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |.*. ------------| 00001450 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00001460 2d 2d 2d 2d 2d 2d 2d 2d 0d 00 d2 05 f4 0d 00 d3 |--------........| 00001470 29 f4 20 33 2e 20 55 74 69 6c 69 74 79 20 3a 20 |). 3. Utility : | 00001480 45 76 61 6c 75 61 74 69 6e 67 20 50 6f 6c 79 6e |Evaluating Polyn| 00001490 6f 6d 69 61 6c 73 0d 00 d4 05 f4 0d 00 d5 2a f4 |omials........*.| 000014a0 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ---------------| 000014b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 000014c0 2d 2d 2d 2d 2d 0d 00 d6 04 0d 00 d7 17 dd 20 a4 |-----......... .| 000014d0 50 6f 6c 79 6e 6f 6d 69 61 6c 28 78 2c 6e 25 29 |Polynomial(x,n%)| 000014e0 0d 00 d8 10 ea 20 69 25 2c 63 6f 65 66 66 2c 50 |..... i%,coeff,P| 000014f0 0d 00 d9 07 50 3d 30 0d 00 da 0f e3 20 69 25 3d |....P=0..... i%=| 00001500 31 20 b8 20 6e 25 0d 00 db 0c 20 f3 20 63 6f 65 |1 . n%.... . coe| 00001510 66 66 0d 00 dc 10 20 50 3d 63 6f 65 66 66 2b 50 |ff.... P=coeff+P| 00001520 2a 78 0d 00 dd 06 20 ed 0d 00 de 06 3d 50 0d ff |*x.... .....=P..| 00001530