SpecialFuncs::Besh Function

Overload List

#SignatureDescription
1TCplx Besh(double NU, TCplx Z);Bessel function of the third kind (Hankel function), complex argument: H^((1))_(nu)(z).
2TSCplx Besh(float NU, TSCplx Z);
3TCplx Besh(double NU, double A);Bessel function of the third kind (Hankel function), real argument: H^((1))_(nu)(x).
4TSCplx Besh(float NU, float A);
5TCplx Besh(double NU, TCplx Z, bool Scale, bool FirstKind);Hankel function of the first or second kind, complex argument, optional scaling: H^((1))_(nu)(z) or H^((2))_(nu)(z).
6TSCplx Besh(float NU, TSCplx Z, bool Scale, bool FirstKind);
7void Besh(double NU, TCplx Z, TVec *resCY, bool Scale, bool FirstKind);Sequence of Hankel functions of the first or second kind, complex argument: H^((m))_(nu+i)(z), i=0... N-1.
8TCplx Besh(double NU, double A, bool Scale, bool FirstKind);Hankel function of the first or second kind, real argument, optional scaling: H^((1))_(nu)(x) or H^((2))_(nu)(x).
9TSCplx Besh(float NU, float A, bool Scale, bool FirstKind);

Overload 1: TCplx Besh(double NU, TCplx Z);

Bessel function of the third kind (Hankel function), complex argument: H^((1))_(nu)(z).

#NameTypeDescription
1NUdoubleDefines the order of Hankel function.
2ZTCplxDefines complex value for which H(Z) should be evaluated.

Returns: H^((1))_(nu)(z), the Hankel function of the first kind of order NU at Z (this default overload uses the first kind, unscaled).

Remarks:

The Hankel functions combine the two standard solutions: H^((1))_(nu)(z) = J_(nu)(z) + i Y_(nu)(z), H^((2))_(nu)(z) = J_(nu)(z) - i Y_(nu)(z). Domain. Any finite complex Z, z != 0; order NU any real value.

Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 2: TSCplx Besh(float NU, TSCplx Z);

#NameTypeDescription
1NUfloat
2ZTSCplx
Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 3: TCplx Besh(double NU, double A);

Bessel function of the third kind (Hankel function), real argument: H^((1))_(nu)(x).

#NameTypeDescription
1NUdoubleDefines the order of Hankel function.
2AdoubleDefines real value for which H(A) should be evaluated.

Returns: H^((1))_(nu)(x), the Hankel function of the first kind of order NU at the real argument A (default: first kind, unscaled).

Remarks:

H^((1))_(nu)(x) = J_(nu)(x) + i Y_(nu)(x). Domain. A>0 (real); order NU any real value.

Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 4: TSCplx Besh(float NU, float A);

#NameTypeDescription
1NUfloat
2Afloat
Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 5: TCplx Besh(double NU, TCplx Z, bool Scale, bool FirstKind);

Hankel function of the first or second kind, complex argument, optional scaling: H^((1))_(nu)(z) or H^((2))_(nu)(z).

#NameTypeDescription
1NUdoubledescribes the order of Hankel function.
2ZTCplxDefines complex value for which H(Z) should be evaluated.
3ScaleboolIf true, the result will be multiplied by scale factor e^(-i z) or e^(+i z), depending on FirstKind parameter value.
4FirstKindboolIf true, calculate Hankel function of first kind, if false, calculate Hankel function of second kind.

Returns: H^((1))_(nu)(z)=J_(nu)(z)+i Y_(nu)(z) when is true, otherwise H^((2))_(nu)(z)=J_(nu)(z)-i Y_(nu)(z). When is true the result is multiplied by e^(-i z) (first kind) or e^(+i z) (second kind).

Remarks:

H^((1))_(nu)(z) = J_(nu)(z) + i Y_(nu)(z), H^((2))_(nu)(z) = J_(nu)(z) - i Y_(nu)(z). Scaled: e^(-i z) H^((1))_(nu)(z) or e^(+i z) H^((2))_(nu)(z).

Domain. Any finite complex Z, z != 0; order NU any real value (negative orders use
H^((1))_(-nu)=e^(nupi i)H^((1))_(nu), H^((2))_(-nu)=e^(-nupi i)H^((2))_(nu)).

See Also: SpecialFuncs::Airy, SpecialFuncs::Biry, SpecialFuncs::Besk, SpecialFuncs::Besy, SpecialFuncs::Besj, SpecialFuncs::Besi, SpecialFuncs::EllipComplete, SpecialFuncs::EllipJacoby
Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 6: TSCplx Besh(float NU, TSCplx Z, bool Scale, bool FirstKind);

#NameTypeDescription
1NUfloat
2ZTSCplx
3Scalebool
4FirstKindbool
Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 7: void Besh(double NU, TCplx Z, TVec *resCY, bool Scale, bool FirstKind);

Sequence of Hankel functions of the first or second kind, complex argument: H^((m))_(nu+i)(z), i=0... N-1.

#NameTypeDescription
1NUdoubledescribes the order of Hankel function.
2ZTCplxDefines complex value for which H(Z) should be evaluated.
3resCYTVec *Contains result on output and resCY.Length specifies the length "N" on input. Will hold on output (FirstKind): resCY[j] = H(M, NU + j, Z) * Expj(-Z) Second kind: resCY[j] = H(M, NU + j, Z) * Expj(Z) if Scaling is enabled. Otherwise just: resCY[j] = H(M, NU + j, Z)
4ScaleboolIf true, the result will be multiplied by scale factor e^(-i z) or e^(+i z), depending on FirstKind parameter value.
5FirstKindboolIf true, calculate Hankel function of first kind, if false, calculate Hankel function of second kind.

Returns: Fills with H^((1))_(nu+i)(z) (first kind) or H^((2))_(nu+i)(z) (second kind) for i=0,...,N-1 (N = input length of ). When is true each element is multiplied by e^(-i z) (first kind) or e^(+i z) (second kind).

Remarks:

resCY[i] = e^(-/+ i z) H^((m))_(nu+i)(z), i=0,...,N-1, upper sign for the first kind, applied only when scaling is enabled. Domain. resCY must be a non-empty complex double vector; z != 0.

Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 8: TCplx Besh(double NU, double A, bool Scale, bool FirstKind);

Hankel function of the first or second kind, real argument, optional scaling: H^((1))_(nu)(x) or H^((2))_(nu)(x).

#NameTypeDescription
1NUdoubledescribes the order of Hankel function.
2AdoubleDefines real value for which H(Z) should be evaluated.
3ScaleboolIf true, the result will be multiplied by scale factor e^(-i x) or e^(+i x), depending on FirstKind parameter value.
4FirstKindboolIf true, calculate Hankel function of first kind, if false, calculate Hankel function of second kind.

Returns: H^((1))_(nu)(x)=J_(nu)(x)+i Y_(nu)(x) when is true, otherwise H^((2))_(nu)(x)=J_(nu)(x)-i Y_(nu)(x). When is true the result is multiplied by e^(-i x) (first kind) or e^(+i x) (second kind).

Remarks:

H^((1))_(nu)(x) = J_(nu)(x) + i Y_(nu)(x), H^((2))_(nu)(x) = J_(nu)(x) - i Y_(nu)(x). Domain. A>0 (real); order NU any real value.

Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler

Overload 9: TSCplx Besh(float NU, float A, bool Scale, bool FirstKind);

#NameTypeDescription
1NUfloat
2Afloat
3Scalebool
4FirstKindbool
Declared in Dew::Math::Units::SpecialFuncs · Dew.Math/Units.SpecialFuncs.h · Cross-compiler