package osdp

  1. Overview
  2. Docs
module Mat : sig ... end
type var
type matrix_expr =
  1. | Const of Mat.t
  2. | Var of var
  3. | Zeros of int * int
  4. | Eye of int
  5. | Kron of int * int * int
  6. | Kron_sym of int * int * int
  7. | Block of matrix_expr array array
  8. | Lift_block of matrix_expr * int * int * int * int
  9. | Transpose of matrix_expr
  10. | Minus of matrix_expr
  11. | Add of matrix_expr * matrix_expr
  12. | Sub of matrix_expr * matrix_expr
  13. | Mult of matrix_expr * matrix_expr
  14. | Power of matrix_expr * int
val var : string -> int -> matrix_expr
val var_var : string -> int -> var * matrix_expr
val const : Mat.t -> matrix_expr
val scalar : Mat.Coeff.t -> matrix_expr
val zeros : int -> int -> matrix_expr
val eye : int -> matrix_expr
val kron : int -> int -> int -> matrix_expr
val kron_sym : int -> int -> int -> matrix_expr
val block : matrix_expr array array -> matrix_expr
val lift_block : matrix_expr -> int -> int -> int -> int -> matrix_expr
val transpose : matrix_expr -> matrix_expr
val minus : matrix_expr -> matrix_expr
val power : matrix_expr -> int -> matrix_expr
val nb_lines : matrix_expr -> int
val nb_cols : matrix_expr -> int
val is_symmetric : matrix_expr -> bool
val (!!) : Mat.t -> matrix_expr
val (~:) : matrix_expr -> matrix_expr
val (~-) : matrix_expr -> matrix_expr
val (**) : matrix_expr -> int -> matrix_expr
type options = {
  1. sdp : Sdp.options;
  2. verbose : int;
  3. pad : float;
}
val default : options
type obj =
  1. | Minimize of matrix_expr
  2. | Maximize of matrix_expr
  3. | Purefeas
type values
exception Dimension_error of string
exception Not_linear
exception Not_symmetric
val solve : ?options:options -> ?solver:Sdp.solver -> obj -> matrix_expr list -> SdpRet.t * (float * float) * values
val empty_values : unit -> values
val value : matrix_expr -> values -> Mat.Coeff.t
val value_mat : matrix_expr -> values -> Mat.t
val register_value : var -> Mat.Coeff.t -> values -> values
val check : ?options:options -> ?values:values -> matrix_expr -> bool
val pp : Format.formatter -> matrix_expr -> unit
val pp_values : Format.formatter -> values -> unit