#[repr(C)]pub struct SimpsonsIntegratorChunked {
pub chunk_buffer: [f64; 12],
pub chunk_index: u16,
pub accumulated_integral: f64,
pub a: f64,
pub b: f64,
pub chunks_processed: u16,
pub config: SolverConfig,
pub solver_state: SolverState,
}Expand description
Simpson’s rule integrator with chunked processing
Fields§
§chunk_buffer: [f64; 12]Chunk buffer. The first 11 entries hold ten Simpson panels; the final slot is reserved to preserve the stable fixed-size ABI.
chunk_index: u16Current chunk index
accumulated_integral: f64Accumulated integral
a: f64Integration limits
b: f64§chunks_processed: u16Number of chunks processed
config: SolverConfigSolver configuration
solver_state: SolverStateSolver state
Implementations§
Source§impl SimpsonsIntegratorChunked
impl SimpsonsIntegratorChunked
Sourcepub fn new(a: f64, b: f64, config: SolverConfig) -> Self
pub fn new(a: f64, b: f64, config: SolverConfig) -> Self
Create new Simpson’s integrator
Sourcepub fn integrate<F>(&mut self, f: &F) -> SolverResult<f64>where
F: IntegrandFunction,
pub fn integrate<F>(&mut self, f: &F) -> SolverResult<f64>where
F: IntegrandFunction,
Integrate function using chunked Simpson’s rule
Sourcepub fn get_integral(&self) -> f64
pub fn get_integral(&self) -> f64
Get current integral value
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SimpsonsIntegratorChunked
impl RefUnwindSafe for SimpsonsIntegratorChunked
impl Send for SimpsonsIntegratorChunked
impl Sync for SimpsonsIntegratorChunked
impl Unpin for SimpsonsIntegratorChunked
impl UnsafeUnpin for SimpsonsIntegratorChunked
impl UnwindSafe for SimpsonsIntegratorChunked
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.