pub fn rolling_sum_float<T: Float + Copy + Zero>(
window: FloatAVT<'_, T>,
subwindow: usize,
) -> FloatArray<T>Expand description
Computes rolling sums over a sliding window for floating-point data with IEEE 754 compliance.
Applies incremental computation to calculate cumulative sums across sliding windows, maintaining numerical stability through careful accumulation strategies. Handles special floating-point values (infinity, NaN) according to IEEE 754 semantics.
§Parameters
window- Float array view containing the data, offset, and length informationsubwindow- Size of the sliding window for summation
§Returns
Returns a FloatArray<T> containing:
- Rolling sums computed incrementally for efficiency
- Zero values for positions with incomplete windows
- Proper null mask for window validity tracking
§Examples
ⓘ
use minarrow::FloatArray;
use simd_kernels::kernels::window::rolling_sum_float;
let arr = FloatArray::<f64>::from_slice(&[1.5, 2.3, 3.7, 4.1]);
let result = rolling_sum_float((&arr, 0, arr.len()), 2);