pub struct BesselIFn;Expand description
Returns the modified Bessel function In(x).
Computes the modified Bessel function of the first kind for a real value x
and a non-negative integer order n. The order is truncated toward zero,
matching spreadsheet behavior.
§Remarks
- Arguments are supplied as
BESSELI(x, n). nmust truncate to a non-negative integer order.- Invalid domains or non-finite results return
#NUM!.
title: "First-order modified Bessel I"
formula: "=BESSELI(0.5,1)"
expected: 0.2578943053908963title: "Order is truncated"
formula: "=BESSELI(0.5,1.9)"
expected: 0.2578943053908963related:
- BESSELJ
- BESSELK
- BESSELY
faq:
- q: "What happens to fractional order values?"
a: "The order argument is truncated toward zero before evaluation."Trait Implementations§
Source§impl Function for BesselIFn
[formualizer-docgen:schema:start]
Name: BESSELI
Type: BesselIFn
Min args: 2
Max args: 2
Variadic: false
Signature: BESSELI(arg1: any@scalar, arg2: any@scalar)
Arg schema: arg1{kinds=any,required=true,shape=scalar,by_ref=false,coercion=None,max=None,repeating=None,default=false}; arg2{kinds=any,required=true,shape=scalar,by_ref=false,coercion=None,max=None,repeating=None,default=false}
Caps: PURE
[formualizer-docgen:schema:end]
impl Function for BesselIFn
[formualizer-docgen:schema:start] Name: BESSELI Type: BesselIFn Min args: 2 Max args: 2 Variadic: false Signature: BESSELI(arg1: any@scalar, arg2: any@scalar) Arg schema: arg1{kinds=any,required=true,shape=scalar,by_ref=false,coercion=None,max=None,repeating=None,default=false}; arg2{kinds=any,required=true,shape=scalar,by_ref=false,coercion=None,max=None,repeating=None,default=false} Caps: PURE [formualizer-docgen:schema:end]
fn name(&self) -> &'static str
fn min_args(&self) -> usize
fn arg_schema(&self) -> &'static [ArgSchema]
Source§fn eval<'a, 'b, 'c>(
&self,
args: &'c [ArgumentHandle<'a, 'b>],
_ctx: &dyn FunctionContext<'b>,
) -> Result<CalcValue<'b>, ExcelError>
fn eval<'a, 'b, 'c>( &self, args: &'c [ArgumentHandle<'a, 'b>], _ctx: &dyn FunctionContext<'b>, ) -> Result<CalcValue<'b>, ExcelError>
The unified evaluation path. Read more
fn namespace(&self) -> &'static str
fn variadic(&self) -> bool
fn volatile(&self) -> bool
Source§fn aliases(&self) -> &'static [&'static str]
fn aliases(&self) -> &'static [&'static str]
Optional list of additional alias names (case-insensitive) that should resolve to this
function. Default: empty slice. Implementors can override to expose legacy names.
Returned slice must have ’static lifetime (typically a static array reference).
Source§fn dependency_contract(
&self,
_arity: usize,
) -> Option<FunctionDependencyContract>
fn dependency_contract( &self, _arity: usize, ) -> Option<FunctionDependencyContract>
Optional dependency contract for passive planning/FormulaPlane analysis. Read more
fn function_salt(&self) -> u64
Source§fn eval_reference<'a, 'b, 'c>(
&self,
_args: &'c [ArgumentHandle<'a, 'b>],
_ctx: &dyn FunctionContext<'b>,
) -> Option<Result<ReferenceType, ExcelError>>
fn eval_reference<'a, 'b, 'c>( &self, _args: &'c [ArgumentHandle<'a, 'b>], _ctx: &dyn FunctionContext<'b>, ) -> Option<Result<ReferenceType, ExcelError>>
Optional reference result path. Only called by the interpreter/engine
when the callsite expects a reference (e.g., range combinators, by-ref
argument positions, or spill sources). Read more
Source§fn dispatch<'a, 'b, 'c>(
&self,
args: &'c [ArgumentHandle<'a, 'b>],
ctx: &dyn FunctionContext<'b>,
) -> Result<CalcValue<'b>, ExcelError>
fn dispatch<'a, 'b, 'c>( &self, args: &'c [ArgumentHandle<'a, 'b>], ctx: &dyn FunctionContext<'b>, ) -> Result<CalcValue<'b>, ExcelError>
Dispatch to the unified evaluation path with automatic argument validation.
Auto Trait Implementations§
impl Freeze for BesselIFn
impl RefUnwindSafe for BesselIFn
impl Send for BesselIFn
impl Sync for BesselIFn
impl Unpin for BesselIFn
impl UnsafeUnpin for BesselIFn
impl UnwindSafe for BesselIFn
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more