pub trait IntegrableFunction<F>: Send + Sync{
// Required methods
fn evaluate(&self, x: &ArrayView1<'_, F>) -> F;
fn dimension(&self) -> usize;
fn bounds(&self) -> (Array1<F>, Array1<F>);
// Provided methods
fn importance_density(&self, x: &ArrayView1<'_, F>) -> Option<F> { ... }
fn control_variate(&self, x: &ArrayView1<'_, F>) -> Option<F> { ... }
}Expand description
Trait for functions to integrate
Required Methods§
Sourcefn evaluate(&self, x: &ArrayView1<'_, F>) -> F
fn evaluate(&self, x: &ArrayView1<'_, F>) -> F
Evaluate function at given point
Provided Methods§
Sourcefn importance_density(&self, x: &ArrayView1<'_, F>) -> Option<F>
fn importance_density(&self, x: &ArrayView1<'_, F>) -> Option<F>
Provide importance sampling density (optional)
Sourcefn control_variate(&self, x: &ArrayView1<'_, F>) -> Option<F>
fn control_variate(&self, x: &ArrayView1<'_, F>) -> Option<F>
Provide control variate function (optional)