pub struct FunctionMetadata {
pub name: String,
pub bounds: Vec<(f64, f64)>,
pub global_minima: Vec<(Vec<f64>, f64)>,
pub inequality_constraints: Vec<fn(&Array1<f64>) -> f64>,
pub equality_constraints: Vec<fn(&Array1<f64>) -> f64>,
pub description: String,
pub multimodal: bool,
pub dimensions: Vec<usize>,
}Expand description
Metadata for a test function including bounds, constraints, and other properties
Fields§
§name: StringFunction name
bounds: Vec<(f64, f64)>Bounds for each dimension (min, max)
global_minima: Vec<(Vec<f64>, f64)>Global minima locations and values
inequality_constraints: Vec<fn(&Array1<f64>) -> f64>Inequality constraint functions (should be <= 0 when satisfied)
equality_constraints: Vec<fn(&Array1<f64>) -> f64>Equality constraint functions (should be = 0 when satisfied)
description: StringDescription of the function
multimodal: boolWhether the function is multimodal
dimensions: Vec<usize>Typical dimension(s) for the function
Trait Implementations§
Source§impl Clone for FunctionMetadata
impl Clone for FunctionMetadata
Source§fn clone(&self) -> FunctionMetadata
fn clone(&self) -> FunctionMetadata
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for FunctionMetadata
impl RefUnwindSafe for FunctionMetadata
impl Send for FunctionMetadata
impl Sync for FunctionMetadata
impl Unpin for FunctionMetadata
impl UnsafeUnpin for FunctionMetadata
impl UnwindSafe for FunctionMetadata
Blanket Implementations§
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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