BESSELI Function (OpenOffice Calc)
Evaluate modified Bessel I in Apache OpenOffice Calc, with integer-order examples, negative-input parity and explicitly tested order conversion.
Verification status: Eight reference formulas and 3 diagnostic cases were recalculated in Apache OpenOffice 4.1.16 on Linux x86-64, Build 9816, using XLSX import and GUI hard recalculation. Saved formula identities and typed results were checked. How formula examples are checked
Quick answer: =BESSELI(1;1) returned 0.565159103992 in the tested Apache OpenOffice 4.1.16 build.
Availability and version history
- Introduced: First release not established; documented by OpenOffice.org 3.3.
- Supported in: Apache OpenOffice 4.1.16; this identifies a verified release, not a final supported version.
- Scope: Desktop Calc with its Analysis add-in, English function names and semicolon-separated formulas.
- Checked: October 14, 2026. Eight reference formulas and the listed diagnostics were recalculated after XLSX import in 4.1.16 on Linux x86-64, Build 9816. Source and independent reference calculations were also checked.
What BESSELI returns
BESSELI evaluates the modified Bessel function of the first kind, Iₙ(x). It is a special mathematical function, not a probability or an inverse Bessel operation. At positive arguments it behaves differently from the oscillating ordinary Bessel J function. Release entry.
Syntax and arguments
=BESSELI(X; Order)
Two arguments are required. X is the real argument and Order is converted to the integer order passed to the add-in. The helper rejects a negative integer order. Supply an intentional nonnegative integer instead of relying on implicit conversion of a fractional value. Negative X is accepted for integer orders.
Reproducible examples
The native column records the saved 4.1.16 results. Ordinary numeric values are rounded to twelve decimal places, with scientific notation for tiny values. Stored values and display text were inspected separately; a twelve-decimal cell display can hide a tiny nonzero number.
| Formula | Native 4.1.16 result | Independent reference |
|---|---|---|
=BESSELI(0;0) |
1 |
1 |
=BESSELI(0;1) |
0 |
0 |
=BESSELI(1;0) |
1.266065877752 |
1.266065877752 |
=BESSELI(1;1) |
0.565159103992 |
0.565159103992 |
=BESSELI(2;0) |
2.279585302336 |
2.279585302336 |
=BESSELI(2;1) |
1.590636854637 |
1.590636854637 |
=BESSELI(3;2) |
2.24521244093 |
2.24521244093 |
=BESSELI(-2;1) |
-1.590636854637 |
-1.590636854637 |
Practical worksheet
For x=1 and order 1, =BESSELI(1;1) gives approximately 0.565159103992. At x=2 and the same order, the mathematical reference is approximately 1.590636854637. Put the arguments in A2:A3 and order 1 in B1, then fill =BESSELI(A2;$B$1) down. This is a worksheet layout for the tested literal arguments, not an additional native range test.
Keep the function family and order in the output label. Replacing BESSELI with BESSELJ can produce a plausible number while answering a different differential-equation problem.
Advanced interpretation and checks
The series definition for integer n≥0 is Iₙ(x)=Σ (x/2)^(n+2k)/(k!(n+k)!), summed over k≥0. The pinned helper evaluates an iterative series with a convergence threshold and iteration limit; the definition does not promise exact arithmetic.
For integer n, Iₙ(−x)=(−1)^n Iₙ(x). The order-1 rows at x=2 and x=−2 therefore have opposite signs. Even orders preserve the sign under reflection. At zero, I₀(0)=1 and positive integer orders give zero.
The recurrence I₀(2)−I₂(2)=I₁(2) gives an independent check across orders. Its mathematical residual is zero, but finite-precision calculations should be compared with a tolerance rather than exact equality.
Boundaries and troubleshooting
The observed fractional-order cases below document integer conversion in this release; they do not evaluate a general real-order Bessel function. A formula imported from a product that preserves fractional order can consequently change meaning.
Large positive X can cause rapid growth, overflow or failure to converge. The add-in checks that its returned number is finite. These modest reference values do not establish an extreme-parameter accuracy range.
In the saved diagnostics, Order=1.9 produced the order-1 value and Order=−0.9 produced the order-0 value. These observations are consistent with conversion toward zero in the tested path. Order=−1 was rejected. They should not be described as fractional-order mathematical evaluations.
These additional formulas were recalculated through the same import path. Error displays are retained as errors, even when an ODS numeric attribute stores zero.
| Formula | Observed result or error |
|---|---|
=BESSELI(1;1.9) |
0.565159103992 |
=BESSELI(1;-1) |
Err:502 |
=BESSELI(1;-0.9) |
1.266065877752 |
Other spreadsheet implementations
The BESSELI guide for Gnumeric documents that product’s own syntax and tested behavior. A shared function name does not guarantee the same argument conversion, text parsing, branch or precision rules.
Official evidence and checking scope
The saved ODS retained every tested formula identity. A deliberately stale SUM cache changed from 999999 to 3, and an uncached SUM returned 7 after hard recalculation. Native evidence covers the eight reference formulas and listed diagnostics only. Other explanatory compositions are independent mathematical checks; other releases, locales and extreme-value behavior were not established by this run.