Qucs-core  0.0.19
Defines | Functions
cbesselj.cpp File Reference

compute complex bessel J function More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define SMALL_J0_BOUND   1e6
#define SMALL_JN_BOUND   5.0
 use ascending serie below this magnitude
#define BIG_JN_BOUND   25.0
 use assymptotic expression above this magnitude
#define MAX_SMALL_ITERATION   2048
 Arbitrary value for iteration.
#define MAX_LARGE_ITERATION   430
 num of P(k) (n = 8) will overlow above this value
#define SMALL_J0_BOUND   1e6
#define SMALL_JN_BOUND   5.0
#define BIG_JN_BOUND   25.0
#define MAX_SMALL_ITERATION   2048
#define MAX_LARGE_ITERATION   430

Functions

static nr_complex_t cbesselj_smallarg (unsigned int n, nr_complex_t z)
static nr_complex_t cbesselj_mediumarg_odd (unsigned int n, nr_complex_t z)
static nr_complex_t cbesselj_mediumarg_even (unsigned int n, nr_complex_t z)
static nr_complex_t cbesselj_mediumarg (unsigned int n, nr_complex_t z)
static nr_complex_t cbesselj_largearg (unsigned int n, nr_complex_t z)
 besselj for large argument
nr_complex_t cbesselj (unsigned int n, nr_complex_t z)
 Main entry point for besselj function.

Detailed Description

compute complex bessel J function

Bibligraphy:

[1] Bessel function of the first kind with complex argument Yousif, Hashim A.; Melka, Richard Computer Physics Communications, vol. 106, Issue 3, pp.199-206 11/1997, ELSEVIER, doi://10.1016/S0010-4655(97)00087-8

[2] Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables Milton Abramowitz and Irene A. Stegun public domain (work of US government) online http://www.math.sfu.ca/~cbm/aands/

[3] Mathematica Manual Bessel, Airy, Struve Functions> BesselJ[nu,z] > General characteristics> Symmetries and periodicities http://functions.wolfram.com/BesselAiryStruveFunctions/BesselJ/04/02/01/

[4] Mathematica Manual Bessel, Airy, Struve Functions> BesselJ[nu,z] Representations through equivalent functions http://functions.wolfram.com/BesselAiryStruveFunctions/BesselJ/27/ShowAll.html

[5] Algorithms for the evaluation of Bessel functions of complex argument and integer orders G. D. C. Kuiken Applied Mathematics Letters, Volume 2, Issue 4, 1989, Pages 353-356 doi://10.1016/0893-9659(89)90086-4

Definition in file cbesselj.cpp.


Define Documentation

#define BIG_JN_BOUND   25.0

use assymptotic expression above this magnitude

Definition at line 84 of file complex.cpp.

#define BIG_JN_BOUND   25.0
#define MAX_LARGE_ITERATION   430

num of P(k) (n = 8) will overlow above this value

Definition at line 214 of file complex.cpp.

#define MAX_LARGE_ITERATION   430
#define MAX_SMALL_ITERATION   2048

Arbitrary value for iteration.

Definition at line 87 of file complex.cpp.

#define MAX_SMALL_ITERATION   2048
#define SMALL_J0_BOUND   1e6
#define SMALL_J0_BOUND   1e6

Definition at line 78 of file complex.cpp.

#define SMALL_JN_BOUND   5.0

use ascending serie below this magnitude

Definition at line 81 of file complex.cpp.

#define SMALL_JN_BOUND   5.0

Function Documentation

nr_complex_t qucs::cbesselj ( unsigned int  n,
nr_complex_t  z 
)

Main entry point for besselj function.

Definition at line 288 of file cbesselj.cpp.

static nr_complex_t cbesselj_largearg ( unsigned int  n,
nr_complex_t  z 
) [static]

besselj for large argument

Based on [5] eq (5)

Definition at line 220 of file cbesselj.cpp.

static nr_complex_t cbesselj_mediumarg ( unsigned int  n,
nr_complex_t  z 
) [static]

Definition at line 202 of file cbesselj.cpp.

static nr_complex_t cbesselj_mediumarg_even ( unsigned int  n,
nr_complex_t  z 
) [static]

Definition at line 174 of file cbesselj.cpp.

static nr_complex_t cbesselj_mediumarg_odd ( unsigned int  n,
nr_complex_t  z 
) [static]

Definition at line 147 of file cbesselj.cpp.

static nr_complex_t cbesselj_smallarg ( unsigned int  n,
nr_complex_t  z 
) [static]
Todo:
Not really adapted to high order therefore we do not check overflow for n >> 1
Parameters:
[in]norder
[in]argarguments

Definition at line 107 of file cbesselj.cpp.