# bessel_j (MathScript RT Module Function)

LabVIEW 2012 MathScript RT Module Help

Edition Date: June 2012

Part Number: 373123C-01

»View Product Info

Requires: MathScript RT Module

## Syntax

jv = bessel_j(v, x)

jv = bessel_j(v, x, 1)

[jv, error] = bessel_j(v, x)

[jv, error] = bessel_j(v, x, 1)

Legacy Name: `besselj`

## Description

Computes the Bessel function of the first kind of a given order.

Details

Examples

## Inputs

Name Description
v Specifies the order of the Bessel function. v is a real, double-precision, floating-point positive scalar, vector, or matrix.
x Specifies the value for which you want to compute the Bessel function. x is a real or complex, double-precision, floating-point scalar, vector, or matrix.
1 Scales the computation. bessel_j(v, x, 1) scales bessel_j(v, x) by exp(-abs(imag(x))).

## Outputs

Name Description
jv Returns the Bessel function of the first kind. jv is a real or complex, double-precision, floating-point scalar, vector, or matrix.
error Returns error information about the evaluation of the Bessel function. error is a matrix of integers in which each element can return the following values.

 0 Indicates that no error occurred. 1 Indicates that you specified invalid inputs. 2 Indicates that the result is too large for the data type of jv. Use the scaling option 1. 3 Indicates that LabVIEW achieved less than half the machine accuracy in the calculation because |x| or v is greater than approximately 1.3E8. 4 Indicates that the result is meaningless because |x| or v is greater than approximately 1.8E16. 5 Indicates that the calculation did not reach the termination condition so LabVIEW did not complete the calculation.

## Details

bessel_j(v, x) solves the following equation: x2*w''+x*w'+(x2-v2)*w = 0.
The following equation is a well-known representation for bessel_j(v, x): bessel_j(v, x) = ((1/2)*x)v*sum((-z2/4)k/(k!*gamma(v+k+1)), k, 0, inf).
If x is a scalar, LabVIEW sets x to a vector of the same size as v whose elements all equal the value you specified for x. If y is a scalar, LabVIEW sets y to a vector of the same size as v whose elements all equal the value you specified for y. If x and v are vectors of the same orientation, LabVIEW returns a vector of Bessel functions for corresponding input values. For example, if x = [1, 2] and v = [3, 4], LabVIEW returns [bessel_j(1, 3), bessel_j(2, 4)]. If x and v are vectors of opposite orientation, LabVIEW returns a matrix of Bessel functions for each combination of input values. For example, if x = [1, 2] and v = [3; 4], LabVIEW returns [bessel_j(1, 3), bessel_j(1, 4); bessel_j(2, 3), bessel_j(2, 4)].

The following table lists the support characteristics of this function.

 Supported in the LabVIEW Run-Time Engine Yes Supported on RT targets Yes Suitable for bounded execution times on RT Not characterized

## Examples

X = [0:0.01:2];
JV = bessel_j(2, X);
plot(X, JV)