SpecialFuncs.Besj Method

Overload List

#SignatureDescription
1function Besj(NU: Double; Z: TCplx): TCplx;Bessel function of the first kind, complex argument: J_(nu)(z).
2procedure Besj(NU: Double; Z: TCplx; resCY: TVec; Scale: Boolean);Sequence of Bessel functions of the first kind, complex argument: J_(nu+i)(z), i=0... N-1.
3function Besj(NU: Double; Z: TCplx; Scale: Boolean): TCplx;Bessel function of the first kind, complex argument, optional scaling: J_(nu)(z).
4function Besj(NU: Double; A: Double): TCplx;Bessel function of the first kind, real argument: J_(nu)(x).
5function Besj(NU: Double; A: Double; Scale: Boolean): TCplx;Bessel function of the first kind, real argument, optional scaling: J_(nu)(x).
6function Besj(NU: Single; Z: TSCplx): TSCplx;
7function Besj(NU: Single; Z: TSCplx; Scale: Boolean): TSCplx;
8function Besj(NU: Single; A: Single): TSCplx;
9function Besj(NU: Single; A: Single; Scale: Boolean): TSCplx;

Overload 1: function Besj(NU: Double; Z: TCplx): TCplx;

Bessel function of the first kind, complex argument: J_(nu)(z).

#NameDescription
1ZDefines complex value for which Jn(Z) should be evaluated.
2NUDefines the order of the Bessel function of the first kind Jn.

Returns: TCplx (complex) - J_(nu)(z), the Bessel function of the first kind of order NU, evaluated at the complex argument Z.

Remarks:

J_(nu) is the solution of Bessel's equation z^2 w'' + z w' + (z^2-nu^2)w = 0 that is regular at the origin:

J_(nu)(z) = sum_(m=0)^(inf)((-1)^m)/(m! Gamma(m+nu+1))(z/2)^(2m+nu)

For negative orders the reflection formula J_(-nu)(z)=cos(nupi)J_(nu)(z)-sin(nupi)Y_(nu)(z) is applied. Domain. Any finite complex Z; order NU may be any real value.

Overload 2: procedure Besj(NU: Double; Z: TCplx; resCY: TVec; Scale: Boolean);

Sequence of Bessel functions of the first kind, complex argument: J_(nu+i)(z), i=0... N-1.

#NameDescription
1NUDefines the order of the Bessel function of the first kind Jn.
2ZDefines complex value for which Jn(Z) should be evaluated.
3resCYContains the result, which is an array: resCY[I]=Exp(-Abs(Y))*J(FNU+I,Z) , I = 0...,N-1 , Y=Imag(Z). The part Exp(-Abs(Y)) is applied only if Scaling is True. The length of the array N is specified with resCY.Length on input.
4ScaleIf Scale parameter is true, Jn(Z) is multiplied by e^(-|Im z|).

Result: stored in self (calling object)

Returns: Fills with J_(nu+i)(z) for i=0,...,N-1, where N is the input length of . When is true each element is multiplied by e^(-|Im z|).

Remarks:

resCY[i] = e^(-|Im z|) J_(nu+i)(z), i=0,...,N-1, the factor e^(-|Im z|) applied only when scaling is enabled. Domain. resCY must be a non-empty complex double vector; z=0 yields -inf.

Overload 3: function Besj(NU: Double; Z: TCplx; Scale: Boolean): TCplx;

Bessel function of the first kind, complex argument, optional scaling: J_(nu)(z).

#NameDescription
1NUDefines the order of the Bessel function of the first kind Jn.
2ZDefines complex value for which Jn(Z) should be evaluated.
3ScaleIf Scale parameter is true, Jn(Z) is multiplied by e^(-|Im z|).

Returns: TCplx (complex) - J_(nu)(z) of order NU. When is true the result is multiplied by e^(-|Im z|), i.e. e^(-|Im z|) J_(nu)(z), which removes the exponential growth along the imaginary axis.

Remarks:

J_(nu)(z) = sum_(m=0)^(inf)((-1)^m)/(m! Gamma(m+nu+1))(z/2)^(2m+nu)

Domain. Any finite complex Z; order NU any real value. Behavior. On argument-reduction
failure for very large |z| the routine raises an exception.

See Also: SpecialFuncs.Airy, SpecialFuncs.Biry, SpecialFuncs.Besh, SpecialFuncs.Besk, SpecialFuncs.Besy, SpecialFuncs.EllipComplete, SpecialFuncs.EllipJacoby

Overload 4: function Besj(NU: Double; A: Double): TCplx;

Bessel function of the first kind, real argument: J_(nu)(x).

#NameDescription
1NUDefines the order of the Bessel function of the first kind Jn.
2ADefines real value for which Jn(A) should be evaluated.

Returns: TCplx (complex) - J_(nu)(x) of order NU at the real argument A. The value is returned as a TCplx; for nu >= 0 and real x >= 0 the imaginary part is zero.

Remarks:

Same definition as the complex overload, J_(nu)(x)=sum_(m >= 0)((-1)^m)/(m! Gamma(m+nu+1))(x/2)^(2m+nu). Domain. Any finite real A; order NU any real value (negative orders use the reflection formula).

Overload 5: function Besj(NU: Double; A: Double; Scale: Boolean): TCplx;

Bessel function of the first kind, real argument, optional scaling: J_(nu)(x).

#NameDescription
1NUDefines the order of the Bessel function of the first kind Jn.
2ADefines real value for which Jn(A) should be evaluated.
3ScaleIf Scale parameter is true, Jn(A) is multiplied by e^(-|Im x|).

Returns: TCplx (complex) - J_(nu)(x) of order NU. When is true the result is multiplied by e^(-|Im x|) (which equals 1 for real x, so scaling has no effect on a real argument).

Remarks:

Domain. Any finite real A; order NU any real value.

Overload 6: function Besj(NU: Single; Z: TSCplx): TSCplx;

#NameTypeDescription
1NUSinglescalar
2ZTSCplxscalar

Returns: TSCplx

Overload 7: function Besj(NU: Single; Z: TSCplx; Scale: Boolean): TSCplx;

#NameTypeDescription
1NUSinglescalar
2ZTSCplxscalar
3ScaleBoolean

Returns: TSCplx

Overload 8: function Besj(NU: Single; A: Single): TSCplx;

#NameTypeDescription
1NUSinglescalar
2ASinglescalar

Returns: TSCplx

Overload 9: function Besj(NU: Single; A: Single; Scale: Boolean): TSCplx;

#NameTypeDescription
1NUSinglescalar
2ASinglescalar
3ScaleBoolean

Returns: TSCplx