GNU Octave  3.8.0 A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
zbunk.f
Go to the documentation of this file.
1  SUBROUTINE zbunk(ZR, ZI, FNU, KODE, MR, N, YR, YI, NZ, TOL, ELIM,
2  * alim)
3 C***BEGIN PROLOGUE ZBUNK
4 C***REFER TO ZBESK,ZBESH
5 C
6 C ZBUNK COMPUTES THE K BESSEL FUNCTION FOR FNU.GT.FNUL.
7 C ACCORDING TO THE UNIFORM ASYMPTOTIC EXPANSION FOR K(FNU,Z)
8 C IN ZUNK1 AND THE EXPANSION FOR H(2,FNU,Z) IN ZUNK2
9 C
10 C***ROUTINES CALLED ZUNK1,ZUNK2
11 C***END PROLOGUE ZBUNK
12 C COMPLEX Y,Z
13  DOUBLE PRECISION alim, ax, ay, elim, fnu, tol, yi, yr, zi, zr
14  INTEGER kode, mr, n, nz
15  dimension yr(n), yi(n)
16  nz = 0
17  ax = dabs(zr)*1.7321d0
18  ay = dabs(zi)
19  IF (ay.GT.ax) go to 10
20 C-----------------------------------------------------------------------
21 C ASYMPTOTIC EXPANSION FOR K(FNU,Z) FOR LARGE FNU APPLIED IN
22 C -PI/3.LE.ARG(Z).LE.PI/3
23 C-----------------------------------------------------------------------
24  CALL zunk1(zr, zi, fnu, kode, mr, n, yr, yi, nz, tol, elim, alim)
25  go to 20
26  10 CONTINUE
27 C-----------------------------------------------------------------------
28 C ASYMPTOTIC EXPANSION FOR H(2,FNU,Z*EXP(M*HPI)) FOR LARGE FNU
29 C APPLIED IN PI/3.LT.ABS(ARG(Z)).LE.PI/2 WHERE M=+I OR -I
30 C AND HPI=PI/2
31 C-----------------------------------------------------------------------
32  CALL zunk2(zr, zi, fnu, kode, mr, n, yr, yi, nz, tol, elim, alim)
33  20 CONTINUE
34  RETURN
35  END