Overload List
| # | Signature | Description |
|---|---|---|
| 1 | TCplx Besk(double NU, TCplx Z); | Modified Bessel function of the second kind, complex argument: K_(nu)(z). |
| 2 | TSCplx Besk(float NU, TSCplx Z); | |
| 3 | TCplx Besk(double NU, double A); | Modified Bessel function of the second kind, real argument: K_(nu)(x). |
| 4 | TSCplx Besk(float NU, float A); | |
| 5 | TCplx Besk(double NU, TCplx Z, bool Scale); | Modified Bessel function of the second kind, complex argument, optional scaling: K_(nu)(z). |
| 6 | TSCplx Besk(float NU, TSCplx Z, bool Scale); | |
| 7 | TCplx Besk(double NU, double A, bool Scale); | Modified Bessel function of the second kind, real argument, optional scaling: K_(nu)(x). |
| 8 | TSCplx Besk(float NU, float A, bool Scale); | |
| 9 | void Besk(double NU, TCplx Z, TVec *resCY, bool Scale); | Sequence of modified Bessel functions of the second kind, complex argument: K_(nu+i)(z), i=0... N-1. |
Overload 1: TCplx Besk(double NU, TCplx Z);
Modified Bessel function of the second kind, complex argument: K_(nu)(z).
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | double | Defines the order of Hankel function. |
| 2 | Z | TCplx | Defines complex value for which Kn(Z) should be evaluated. |
Returns: K_(nu)(z), the modified Bessel function of the second kind (Macdonald function) of order NU at Z.
K_(nu) is the decaying solution of the modified Bessel equation; it satisfies K_(-nu)(z)=K_(nu)(z) and K_(nu)(z) = pi/2 (I_(-nu)(z)-I_(nu)(z))/sin(nupi). Domain. Any finite complex Z with z != 0; the principal branch is used. Behavior. At
z=0 the function diverges and the implementation returns +inf in both components.
Overload 2: TSCplx Besk(float NU, TSCplx Z);
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | float | |
| 2 | Z | TSCplx |
Overload 3: TCplx Besk(double NU, double A);
Modified Bessel function of the second kind, real argument: K_(nu)(x).
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | double | Defines the order of Hankel function. |
| 2 | A | double | Defines real value for which Kn(A) should be evaluated. |
Returns: K_(nu)(x) of order NU at the real argument A (returned as a TCplx).
K_(-nu)(x)=K_(nu)(x). Domain. A>0 (real). Behavior. K diverges at x=0, where the implementation returns +inf.
Overload 4: TSCplx Besk(float NU, float A);
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | float | |
| 2 | A | float |
Overload 5: TCplx Besk(double NU, TCplx Z, bool Scale);
Modified Bessel function of the second kind, complex argument, optional scaling: K_(nu)(z).
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | double | Defines the order of the Bessel function of the second kind Kn. |
| 2 | Z | TCplx | Defines complex value for which Kn(Z) should be evaluated. |
| 3 | Scale | bool | If Scale parameter is true, Kn(Z) is multiplied by e^z. |
Returns: K_(nu)(z) of order NU. When is true the result is multiplied by e^z, i.e. e^z K_(nu)(z), which removes the exponential decay for large Re z.
K_(nu)(z) = pi/2 (I_(-nu)(z)-I_(nu)(z))/sin(nupi), K_(-nu)(z)=K_(nu)(z).
Domain. Any finite complex Z with z != 0. Behavior. Returns +inf at z=0.
Overload 6: TSCplx Besk(float NU, TSCplx Z, bool Scale);
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | float | |
| 2 | Z | TSCplx | |
| 3 | Scale | bool |
Overload 7: TCplx Besk(double NU, double A, bool Scale);
Modified Bessel function of the second kind, real argument, optional scaling: K_(nu)(x).
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | double | Defines the order of the Bessel function of the second kind Kn. |
| 2 | A | double | Defines real value for which Kn(A) should be evaluated. |
| 3 | Scale | bool | If Scale parameter is true, Kn(A) is multiplied by e^x. |
Returns: K_(nu)(x) of order NU; when is true it is multiplied by e^x.
Domain. A>0 (real). Behavior. Returns +inf at x=0.
Overload 8: TSCplx Besk(float NU, float A, bool Scale);
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | float | |
| 2 | A | float | |
| 3 | Scale | bool |
Overload 9: void Besk(double NU, TCplx Z, TVec *resCY, bool Scale);
Sequence of modified Bessel functions of the second kind, complex argument: K_(nu+i)(z), i=0... N-1.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | NU | double | Defines the order of Hankel function. |
| 2 | Z | TCplx | Defines complex value for which Kn((Z) should be evaluated. |
| 3 | resCY | TVec * | Contains result on output and needs to be sized to desired N on input. The result holds: cyRes[i] = K(NU + i, Z)*Exp(Z) when scaled and cyRes[i] = K(NU + i, Z) when not scaled. |
| 4 | Scale | bool | If Scale parameter is true, Kn(A) is multiplied by e^z. |
Returns: Fills with K_(nu+i)(z) for i=0,...,N-1 (N = input length of ). When is true each element is multiplied by e^z.
resCY[i] = e^z K_(nu+i)(z), i=0,...,N-1, with the factor applied only when scaling is enabled. Domain. resCY must be a non-empty complex double vector; at z=0 every element is set to +inf.