BESSELJ function
PRO
BASIC
The BESSELJ
function in Jspreadsheet Formulas Pro is a mathematical tool that calculates the Bessel function of the first kind, J(x), for any given real or complex number x. This function is used in mathematical and engineering fields. You input a number, and the function processes it through the Bessel J equation, delivering the result. This is particularly useful for handling wave equations and heat conduction problems.
Documentation
Returns the value of the Bessel function of the first kind, J(x), for a specified point x and order n.
Category
Engineering
Syntax
BESSELJ(x, n)
Parameter | Description |
---|---|
x |
The real or complex number for which to calculate the Bessel function. |
n |
The order of the Bessel function. Must be a nonnegative integer or a real number greater than -1. |
Behavior
The BESSELJ
function calculates the Bessel function, a solution to Bessel’s differential equation. The function takes two arguments: x
(the value at which to evaluate the function), and n
(the order of the Bessel function).
- If
x
orn
are non-numeric,BESSELJ
will return a#VALUE!
error. - If
x
orn
are empty cells,BESSELJ
will return a#VALUE!
error. - If
n
is not an integer,BESSELJ
will return a#NUM!
error. - The function does not handle text or booleans, it only accepts numerical inputs.
- If
n
is negative,BESSELJ
will still calculate the function, since Bessel functions are defined for all real numbers.
Common Errors
Error | Description |
---|---|
#VALUE! | This error occurs when either x or n is non-numeric or an empty cell. |
#NUM! | This error occurs when the n value is not an integer. |
Best practices
- Always make sure that both
x
andn
are numerical values to avoid#VALUE!
errors.- Ensure
n
is an integer, asBESSELJ
does not work with non-integer orders and will return a#NUM!
error.BESSELJ
can handle negativen
values, but be aware that this could produce complex results. Make sure this is intended in your calculations.- Always check your result to verify it makes sense in the context of your data. Bessel functions can produce large outputs for large inputs, which can skew data if not handled properly.
Usage
A few examples using the BESSELJ function.
BESSELJ(5, 2) // Returns the Bessel function value of order 2 at x = 5
BESSELJ(-3.5, 4.2) // Accepts a negative x and fractional n (if supported by engine)
Interactive Spreadsheet Demo
<html>
<script src="https://jspreadsheet.com/v11/jspreadsheet.js"></script>
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<link rel="stylesheet" href="https://jspreadsheet.com/v11/jspreadsheet.css" type="text/css" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Material+Icons" />
<script src="https://cdn.jsdelivr.net/npm/@jspreadsheet/formula-pro/dist/index.min.js"></script>
<div id="spreadsheet"></div>
<script>
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('ZmM4NTI4MGNlYjFjOTI0N2EzZGUzNDJmNjg5NmMxNTRhYjEzYWZjNzE2N2U0ZGY2NGQ1NzRmODczOGU3NTljODY1Mjg3YzExMTJiMmJmMzY0NjUzMmIxYzhmNGY4Zjc4MDI4MTkzOWJlM2QzYjViYmQ3ZWNiY2QyNDVmMmE2YWUsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVNE56YzBOekEyTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
// Create a new spreadsheet
jspreadsheet(document.getElementById('spreadsheet'), {
worksheets: [{
data: [
[
"x",
"n",
"BESSELJ(x,n)"
],
[
1,
0,
"=BESSELJ(A2,B2)"
],
[
2,
1,
"=BESSELJ(A3,B3)"
],
[
3,
2,
"=BESSELJ(A4,B4)"
],
[
0.5,
3,
"=BESSELJ(A5,B5)"
]
]
}]
});
</script>
</html>
import React, { useRef } from "react";
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/react";
import formula from "@jspreadsheet/formula-pro";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
// Set license
jspreadsheet.setLicense('ZmM4NTI4MGNlYjFjOTI0N2EzZGUzNDJmNjg5NmMxNTRhYjEzYWZjNzE2N2U0ZGY2NGQ1NzRmODczOGU3NTljODY1Mjg3YzExMTJiMmJmMzY0NjUzMmIxYzhmNGY4Zjc4MDI4MTkzOWJlM2QzYjViYmQ3ZWNiY2QyNDVmMmE2YWUsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVNE56YzBOekEyTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
export default function App() {
// Spreadsheet array of worksheets
const spreadsheet = useRef();
// Worksheet data
const data = [
[
"x",
"n",
"BESSELJ(x,n)"
],
[
1,
0,
"=BESSELJ(A2,B2)"
],
[
2,
1,
"=BESSELJ(A3,B3)"
],
[
3,
2,
"=BESSELJ(A4,B4)"
],
[
0.5,
3,
"=BESSELJ(A5,B5)"
]
];
// Render component
return (
<Spreadsheet ref={spreadsheet}>
<Worksheet data={data} />
</Spreadsheet>
);
}
<template>
<Spreadsheet ref="spreadsheet">
<Worksheet :data="data" />
</Spreadsheet>
</template>
<script>
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/vue";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
import formula from "@jspreadsheet/formula-pro";
// Set license
jspreadsheet.setLicense('ZmM4NTI4MGNlYjFjOTI0N2EzZGUzNDJmNjg5NmMxNTRhYjEzYWZjNzE2N2U0ZGY2NGQ1NzRmODczOGU3NTljODY1Mjg3YzExMTJiMmJmMzY0NjUzMmIxYzhmNGY4Zjc4MDI4MTkzOWJlM2QzYjViYmQ3ZWNiY2QyNDVmMmE2YWUsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVNE56YzBOekEyTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
export default {
components: {
Spreadsheet,
Worksheet,
},
data() {
// Worksheet data
const data = [
[
"x",
"n",
"BESSELJ(x,n)"
],
[
1,
0,
"=BESSELJ(A2,B2)"
],
[
2,
1,
"=BESSELJ(A3,B3)"
],
[
3,
2,
"=BESSELJ(A4,B4)"
],
[
0.5,
3,
"=BESSELJ(A5,B5)"
]
]
return {
data
};
}
}
</script>
import { Component, ViewChild, ElementRef } from "@angular/core";
import jspreadsheet from "jspreadsheet";
import * as formula from "@jspreadsheet/formula-pro";
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('ZmM4NTI4MGNlYjFjOTI0N2EzZGUzNDJmNjg5NmMxNTRhYjEzYWZjNzE2N2U0ZGY2NGQ1NzRmODczOGU3NTljODY1Mjg3YzExMTJiMmJmMzY0NjUzMmIxYzhmNGY4Zjc4MDI4MTkzOWJlM2QzYjViYmQ3ZWNiY2QyNDVmMmE2YWUsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVNE56YzBOekEyTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');
// Set the extensions
jspreadsheet.setExtensions({ formula });
@Component({
standalone: true,
selector: "app-root",
template: `<div #spreadsheet></div>`
})
export class AppComponent {
@ViewChild("spreadsheet") spreadsheet: ElementRef;
// Worksheets
worksheets: jspreadsheet.worksheetInstance[];
// Create a new data grid
ngAfterViewInit() {
// Create spreadsheet
this.worksheets = jspreadsheet(this.spreadsheet.nativeElement, {
worksheets: [{
data: [
[
"x",
"n",
"BESSELJ(x,n)"
],
[
1,
0,
"=BESSELJ(A2,B2)"
],
[
2,
1,
"=BESSELJ(A3,B3)"
],
[
3,
2,
"=BESSELJ(A4,B4)"
],
[
0.5,
3,
"=BESSELJ(A5,B5)"
]
]
}]
});
}
}