qudit_inst/numerical/
result.rs1use qudit_core::RealScalar;
2
3use crate::InstantiationResult;
4
5pub struct MinimizationResult<R: RealScalar> {
6 pub params: Vec<R>,
7 pub fun: R,
8 pub status: usize,
9 pub message: Option<String>,
10}
11
12impl<R: RealScalar> MinimizationResult<R> {
13 pub fn simple_success(params: Vec<R>, fun: R) -> Self {
14 Self {
15 params,
16 fun,
17 status: 0,
18 message: None,
19 }
20 }
21
22 pub fn to_instantiation(self) -> InstantiationResult<R::C> {
23 let Self {
24 params,
25 fun,
26 status,
27 message,
28 } = self;
29 InstantiationResult::new(Some(params), Some(fun), status, message)
30 }
31}