Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
LpSourcetop module of package Lp
Module for LP variable. Typically, users don't need to use this module directly. See higher-level module for polynomials (Poly) instead.
Module for a term in the polynomial. Typically, users don't need to use this module directly. See higher-level module for polynomials (Poly) instead.
Module for the optimization problem class.
Map with Poly.t key. It can be used to pack optimization result.
Make monomial of a variable. You can optionally set its bounds (lb and ub) and whether it is an integer. By default, it becomes continuous and non-negative (integer = false, lb = Float.zero, and ub = Float.infinity).
val range :
?integer:bool ->
?lb:float ->
?ub:float ->
?start:int ->
int ->
string ->
Poly.t arrayMake an array of monomials of a variable with uniform bounds.
val range2 :
?integer:bool ->
?lb:float ->
?ub:float ->
?start0:int ->
?start1:int ->
int ->
int ->
string ->
Poly.t array arrayMake 2D array of monomials of a variable with uniform bounds.
val range3 :
?integer:bool ->
?lb:float ->
?ub:float ->
?start0:int ->
?start1:int ->
?start2:int ->
int ->
int ->
int ->
string ->
Poly.t array array arrayMake 3D array of monomials of a variable with uniform bounds.
Make an array of monomials of a binary variable.
Make 2D array of monomials of a binary variable.
val range3b :
?start0:int ->
?start1:int ->
?start2:int ->
int ->
int ->
int ->
string ->
Poly.t array array arrayMake 3D array of monomials of a binary variable.
val rangev :
?integer:bool ->
?lb:float array ->
?ub:float array ->
?start:int ->
int ->
string ->
Poly.t arrayMake an array of monomials of a variable with different bounds.
val range2v :
?integer:bool ->
?lb:float array array ->
?ub:float array array ->
?start0:int ->
?start1:int ->
int ->
int ->
string ->
Poly.t array arrayMake 2D array of monomials of a variable with different bounds.
val range3v :
?integer:bool ->
?lb:float array array array ->
?ub:float array array array ->
?start0:int ->
?start1:int ->
?start2:int ->
int ->
int ->
int ->
string ->
Poly.t array array arrayMake 3D array of monomials of a variable with different bounds.
Concatenate an array of polynomials into single polynomial.
Subtract two polynomials (concatenate left with negated right).
Multiply two polynomials. Specifically, performs polynomial expansion.
Divide polynomial by a univariate polynomial. Be careful as this function raises exception in some cases.
Build an equality constraint. Optional name can be given. Polynomials are simplified (Poly.simplify) on build. eps specifies the threshold of near-zero, defaulting to 10. *. epsilon_float.
Build an unnamed equality constraint. Polynomials are simplified on build.
Build an inequality constraint. Optional name can be given. Polynomials are simplified (Poly.simplify) on build. eps specifies the threshold of near-zero, defaulting to 10. *. epsilon_float.
Build an unnamed inequality constraint. Polynomials are simplified on build.
Build an inequality constraint. Optional name can be given. Polynomials are simplified (Poly.simplify) on build. eps specifies the threshold of near-zero, defaulting to 10. *. epsilon_float.
Build an unnamed inequality constraint. Polynomials are simplified on build.
Build an objective to maximize a polynomial. The polynomial is simplified (Poly.simplify) on build. eps specifies the threshold of near-zero, defaulting to 10. *. epsilon_float.
Build an objective to minimize a polynomial. The polynomial is simplified (Poly.simplify) on build. eps specifies the threshold of near-zero, defaulting to 10. *. epsilon_float.
Make problem from an Objective.t and a constraint (Cnstr.t) list. String name can be given optionally.
Validate the problem. true (false) means the problem is valid (invalid).
Make (unique and sorted) list of the variables in a problem.
Express the problem in LP file format string.
write fname problem writes out problem to an LP file fname.