Expand description
Algebraic modeling API for otspot.
Provides Model, Variable, Expression, Constraint,
the constraint! macro, and associated error/result types.
§Example
use otspot_model::{Model, constraint};
let mut model = Model::new("example");
let x = model.add_var("x", 0.0, 10.0);
let y = model.add_var("y", 0.0, 10.0);
model.add_constraint(constraint!((x + y) <= 8.0));
model.minimize(2.0 * x + y);
let result = model.solve().unwrap();
assert!((result[x] + result[y]).abs() < 1e-4);Re-exports§
pub use constraint::Constraint;pub use constraint::ConstraintSense;pub use expression::Expression;pub use quad_expr::QuadExpr;pub use variable::VarKind;pub use variable::Variable;
Modules§
- constraint
- Constraint types and the
constraint!macro - expression
- Expression type and operator overloads for the modeling API
- quad_
expr - Quadratic expression type for QP objectives.
- variable
- Variable type for the modeling API
Macros§
- constraint
- Build a
Constraintusing natural inequality syntax.
Structs§
- Model
- A linear programming model built using the algebraic modeling API.
- Model
Result - The result of a successful solve.
Enums§
- Model
Error - Errors that can occur when building or solving a
Model. - Solution
Proof - What kind of optimality proof backs a successful
ModelResult. - Solve
Error - Solver termination status for QP/LP solve operations.