diff --git a/basindtype_enum.go b/basindtype_enum.go index ebeb2d8..2b3a75c 100644 --- a/basindtype_enum.go +++ b/basindtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // BasIndType is MSKbasindtype_enum. @@ -11,11 +14,11 @@ import "strconv" type BasIndType uint32 const ( - BI_NEVER BasIndType = 0 // Never do basis identification. - BI_ALWAYS BasIndType = 1 // Basis identification is always performed even if the interior-point optimizer terminates abnormally. - BI_NO_ERROR BasIndType = 2 // Basis identification is performed if the interior-point optimizer terminates without an error. - BI_IF_FEASIBLE BasIndType = 3 // Basis identification is not performed if the interior-point optimizer terminates with a problem status saying that the problem is primal or dual infeasible. - BI_RESERVERED BasIndType = 4 // Not currently in use. + BI_NEVER BasIndType = C.MSK_BI_NEVER // Never do basis identification. + BI_ALWAYS BasIndType = C.MSK_BI_ALWAYS // Basis identification is always performed even if the interior-point optimizer terminates abnormally. + BI_NO_ERROR BasIndType = C.MSK_BI_NO_ERROR // Basis identification is performed if the interior-point optimizer terminates without an error. + BI_IF_FEASIBLE BasIndType = C.MSK_BI_IF_FEASIBLE // Basis identification is not performed if the interior-point optimizer terminates with a problem status saying that the problem is primal or dual infeasible. + BI_RESERVERED BasIndType = C.MSK_BI_RESERVERED // Not currently in use. ) var _BasIndType_map = map[BasIndType]string{ diff --git a/boundkey_enum.go b/boundkey_enum.go index 2580197..6f04901 100644 --- a/boundkey_enum.go +++ b/boundkey_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // BoundKey is MSKboundkey_enum. @@ -11,11 +14,11 @@ import "strconv" type BoundKey uint32 const ( - BK_LO BoundKey = 0 // The constraint or variable has a finite lower bound and an infinite upper bound. - BK_UP BoundKey = 1 // The constraint or variable has an infinite lower bound and an finite upper bound. - BK_FX BoundKey = 2 // The constraint or variable is fixed. - BK_FR BoundKey = 3 // The constraint or variable is free. - BK_RA BoundKey = 4 // The constraint or variable is ranged. + BK_LO BoundKey = C.MSK_BK_LO // The constraint or variable has a finite lower bound and an infinite upper bound. + BK_UP BoundKey = C.MSK_BK_UP // The constraint or variable has an infinite lower bound and an finite upper bound. + BK_FX BoundKey = C.MSK_BK_FX // The constraint or variable is fixed. + BK_FR BoundKey = C.MSK_BK_FR // The constraint or variable is free. + BK_RA BoundKey = C.MSK_BK_RA // The constraint or variable is ranged. ) var _BoundKey_map = map[BoundKey]string{ diff --git a/branchdir_enum.go b/branchdir_enum.go index 083ccbe..b9cddd7 100644 --- a/branchdir_enum.go +++ b/branchdir_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // BranchDir is MSKbranchdir_enum. @@ -11,14 +14,14 @@ import "strconv" type BranchDir uint32 const ( - BRANCH_DIR_FREE BranchDir = 0 // The mixed-integer optimizer decides which branch to choose. - BRANCH_DIR_UP BranchDir = 1 // The mixed-integer optimizer always chooses the up branch first. - BRANCH_DIR_DOWN BranchDir = 2 // The mixed-integer optimizer always chooses the down branch first. - BRANCH_DIR_NEAR BranchDir = 3 // Branch in direction nearest to selected fractional variable. - BRANCH_DIR_FAR BranchDir = 4 // Branch in direction farthest from selected fractional variable. - BRANCH_DIR_ROOT_LP BranchDir = 5 // Chose direction based on root lp value of selected variable. - BRANCH_DIR_GUIDED BranchDir = 6 // Branch in direction of current incumbent. - BRANCH_DIR_PSEUDOCOST BranchDir = 7 // Branch based on the pseudocost of the variable. + BRANCH_DIR_FREE BranchDir = C.MSK_BRANCH_DIR_FREE // The mixed-integer optimizer decides which branch to choose. + BRANCH_DIR_UP BranchDir = C.MSK_BRANCH_DIR_UP // The mixed-integer optimizer always chooses the up branch first. + BRANCH_DIR_DOWN BranchDir = C.MSK_BRANCH_DIR_DOWN // The mixed-integer optimizer always chooses the down branch first. + BRANCH_DIR_NEAR BranchDir = C.MSK_BRANCH_DIR_NEAR // Branch in direction nearest to selected fractional variable. + BRANCH_DIR_FAR BranchDir = C.MSK_BRANCH_DIR_FAR // Branch in direction farthest from selected fractional variable. + BRANCH_DIR_ROOT_LP BranchDir = C.MSK_BRANCH_DIR_ROOT_LP // Chose direction based on root lp value of selected variable. + BRANCH_DIR_GUIDED BranchDir = C.MSK_BRANCH_DIR_GUIDED // Branch in direction of current incumbent. + BRANCH_DIR_PSEUDOCOST BranchDir = C.MSK_BRANCH_DIR_PSEUDOCOST // Branch based on the pseudocost of the variable. ) var _BranchDir_map = map[BranchDir]string{ diff --git a/callbackcode_enum.go b/callbackcode_enum.go index 317c144..f43b947 100644 --- a/callbackcode_enum.go +++ b/callbackcode_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // CallbackCode is MSKcallbackcode_enum. @@ -11,100 +14,100 @@ import "strconv" type CallbackCode uint32 const ( - CALLBACK_BEGIN_BI CallbackCode = 0 // The basis identification procedure has been started. - CALLBACK_BEGIN_CONIC CallbackCode = 1 // The callback function is called when the conic optimizer is started. - CALLBACK_BEGIN_DUAL_BI CallbackCode = 2 // The callback function is called from within the basis identification procedure when the dual phase is started. - CALLBACK_BEGIN_DUAL_SENSITIVITY CallbackCode = 3 // Dual sensitivity analysis is started. - CALLBACK_BEGIN_DUAL_SETUP_BI CallbackCode = 4 // The callback function is called when the dual BI phase is started. - CALLBACK_BEGIN_DUAL_SIMPLEX CallbackCode = 5 // The callback function is called when the dual simplex optimizer started. - CALLBACK_BEGIN_DUAL_SIMPLEX_BI CallbackCode = 6 // The callback function is called from within the basis identification procedure when the dual simplex clean-up phase is started. - CALLBACK_BEGIN_INFEAS_ANA CallbackCode = 7 // The callback function is called when the infeasibility analyzer is started. - CALLBACK_BEGIN_INTPNT CallbackCode = 8 // The callback function is called when the interior-point optimizer is started. - CALLBACK_BEGIN_LICENSE_WAIT CallbackCode = 9 // Begin waiting for license. - CALLBACK_BEGIN_MIO CallbackCode = 10 // The callback function is called when the mixed-integer optimizer is started. - CALLBACK_BEGIN_OPTIMIZER CallbackCode = 11 // The callback function is called when the optimizer is started. - CALLBACK_BEGIN_PRESOLVE CallbackCode = 12 // The callback function is called when the presolve is started. - CALLBACK_BEGIN_PRIMAL_BI CallbackCode = 13 // The callback function is called from within the basis identification procedure when the primal phase is started. - CALLBACK_BEGIN_PRIMAL_REPAIR CallbackCode = 14 // Begin primal feasibility repair. - CALLBACK_BEGIN_PRIMAL_SENSITIVITY CallbackCode = 15 // Primal sensitivity analysis is started. - CALLBACK_BEGIN_PRIMAL_SETUP_BI CallbackCode = 16 // The callback function is called when the primal BI setup is started. - CALLBACK_BEGIN_PRIMAL_SIMPLEX CallbackCode = 17 // The callback function is called when the primal simplex optimizer is started. - CALLBACK_BEGIN_PRIMAL_SIMPLEX_BI CallbackCode = 18 // The callback function is called from within the basis identification procedure when the primal simplex clean-up phase is started. - CALLBACK_BEGIN_QCQO_REFORMULATE CallbackCode = 19 // Begin QCQO reformulation. - CALLBACK_BEGIN_READ CallbackCode = 20 // MOSEK has started reading a problem file. - CALLBACK_BEGIN_ROOT_CUTGEN CallbackCode = 21 // The callback function is called when root cut generation is started. - CALLBACK_BEGIN_SIMPLEX CallbackCode = 22 // The callback function is called when the simplex optimizer is started. - CALLBACK_BEGIN_SIMPLEX_BI CallbackCode = 23 // The callback function is called from within the basis identification procedure when the simplex clean-up phase is started. - CALLBACK_BEGIN_SOLVE_ROOT_RELAX CallbackCode = 24 // The callback function is called when solution of root relaxation is started. - CALLBACK_BEGIN_TO_CONIC CallbackCode = 25 // Begin conic reformulation. - CALLBACK_BEGIN_WRITE CallbackCode = 26 // MOSEK has started writing a problem file. - CALLBACK_CONIC CallbackCode = 27 // The callback function is called from within the conic optimizer after the information database has been updated. - CALLBACK_DUAL_SIMPLEX CallbackCode = 28 // The callback function is called from within the dual simplex optimizer. - CALLBACK_END_BI CallbackCode = 29 // The callback function is called when the basis identification procedure is terminated. - CALLBACK_END_CONIC CallbackCode = 30 // The callback function is called when the conic optimizer is terminated. - CALLBACK_END_DUAL_BI CallbackCode = 31 // The callback function is called from within the basis identification procedure when the dual phase is terminated. - CALLBACK_END_DUAL_SENSITIVITY CallbackCode = 32 // Dual sensitivity analysis is terminated. - CALLBACK_END_DUAL_SETUP_BI CallbackCode = 33 // The callback function is called when the dual BI phase is terminated. - CALLBACK_END_DUAL_SIMPLEX CallbackCode = 34 // The callback function is called when the dual simplex optimizer is terminated. - CALLBACK_END_DUAL_SIMPLEX_BI CallbackCode = 35 // The callback function is called from within the basis identification procedure when the dual clean-up phase is terminated. - CALLBACK_END_INFEAS_ANA CallbackCode = 36 // The callback function is called when the infeasibility analyzer is terminated. - CALLBACK_END_INTPNT CallbackCode = 37 // The callback function is called when the interior-point optimizer is terminated. - CALLBACK_END_LICENSE_WAIT CallbackCode = 38 // End waiting for license. - CALLBACK_END_MIO CallbackCode = 39 // The callback function is called when the mixed-integer optimizer is terminated. - CALLBACK_END_OPTIMIZER CallbackCode = 40 // The callback function is called when the optimizer is terminated. - CALLBACK_END_PRESOLVE CallbackCode = 41 // The callback function is called when the presolve is completed. - CALLBACK_END_PRIMAL_BI CallbackCode = 42 // The callback function is called from within the basis identification procedure when the primal phase is terminated. - CALLBACK_END_PRIMAL_REPAIR CallbackCode = 43 // End primal feasibility repair. - CALLBACK_END_PRIMAL_SENSITIVITY CallbackCode = 44 // Primal sensitivity analysis is terminated. - CALLBACK_END_PRIMAL_SETUP_BI CallbackCode = 45 // The callback function is called when the primal BI setup is terminated. - CALLBACK_END_PRIMAL_SIMPLEX CallbackCode = 46 // The callback function is called when the primal simplex optimizer is terminated. - CALLBACK_END_PRIMAL_SIMPLEX_BI CallbackCode = 47 // The callback function is called from within the basis identification procedure when the primal clean-up phase is terminated. - CALLBACK_END_QCQO_REFORMULATE CallbackCode = 48 // End QCQO reformulation. - CALLBACK_END_READ CallbackCode = 49 // MOSEK has finished reading a problem file. - CALLBACK_END_ROOT_CUTGEN CallbackCode = 50 // The callback function is called when root cut generation is terminated. - CALLBACK_END_SIMPLEX CallbackCode = 51 // The callback function is called when the simplex optimizer is terminated. - CALLBACK_END_SIMPLEX_BI CallbackCode = 52 // The callback function is called from within the basis identification procedure when the simplex clean-up phase is terminated. - CALLBACK_END_SOLVE_ROOT_RELAX CallbackCode = 53 // The callback function is called when solution of root relaxation is terminated. - CALLBACK_END_TO_CONIC CallbackCode = 54 // End conic reformulation. - CALLBACK_END_WRITE CallbackCode = 55 // MOSEK has finished writing a problem file. - CALLBACK_IM_BI CallbackCode = 56 // The callback function is called from within the basis identification procedure at an intermediate point. - CALLBACK_IM_CONIC CallbackCode = 57 // The callback function is called at an intermediate stage within the conic optimizer where the information database has not been updated. - CALLBACK_IM_DUAL_BI CallbackCode = 58 // The callback function is called from within the basis identification procedure at an intermediate point in the dual phase. - CALLBACK_IM_DUAL_SENSIVITY CallbackCode = 59 // The callback function is called at an intermediate stage of the dual sensitivity analysis. - CALLBACK_IM_DUAL_SIMPLEX CallbackCode = 60 // The callback function is called at an intermediate point in the dual simplex optimizer. - CALLBACK_IM_INTPNT CallbackCode = 61 // The callback function is called at an intermediate stage within the interior-point optimizer where the information database has not been updated. - CALLBACK_IM_LICENSE_WAIT CallbackCode = 62 // MOSEK is waiting for a license. - CALLBACK_IM_LU CallbackCode = 63 // The callback function is called from within the LU factorization procedure at an intermediate point. - CALLBACK_IM_MIO CallbackCode = 64 // The callback function is called at an intermediate point in the mixed-integer optimizer. - CALLBACK_IM_MIO_DUAL_SIMPLEX CallbackCode = 65 // The callback function is called at an intermediate point in the mixed-integer optimizer while running the dual simplex optimizer. - CALLBACK_IM_MIO_INTPNT CallbackCode = 66 // The callback function is called at an intermediate point in the mixed-integer optimizer while running the interior-point optimizer. - CALLBACK_IM_MIO_PRIMAL_SIMPLEX CallbackCode = 67 // The callback function is called at an intermediate point in the mixed-integer optimizer while running the primal simplex optimizer. - CALLBACK_IM_ORDER CallbackCode = 68 // The callback function is called from within the matrix ordering procedure at an intermediate point. - CALLBACK_IM_PRESOLVE CallbackCode = 69 // The callback function is called from within the presolve procedure at an intermediate stage. - CALLBACK_IM_PRIMAL_BI CallbackCode = 70 // The callback function is called from within the basis identification procedure at an intermediate point in the primal phase. - CALLBACK_IM_PRIMAL_SENSIVITY CallbackCode = 71 // The callback function is called at an intermediate stage of the primal sensitivity analysis. - CALLBACK_IM_PRIMAL_SIMPLEX CallbackCode = 72 // The callback function is called at an intermediate point in the primal simplex optimizer. - CALLBACK_IM_QO_REFORMULATE CallbackCode = 73 // The callback function is called at an intermediate stage of the conic quadratic reformulation. - CALLBACK_IM_READ CallbackCode = 74 // Intermediate stage in reading. - CALLBACK_IM_ROOT_CUTGEN CallbackCode = 75 // The callback is called from within root cut generation at an intermediate stage. - CALLBACK_IM_SIMPLEX CallbackCode = 76 // The callback function is called from within the simplex optimizer at an intermediate point. - CALLBACK_IM_SIMPLEX_BI CallbackCode = 77 // The callback function is called from within the basis identification procedure at an intermediate point in the simplex clean-up phase. - CALLBACK_INTPNT CallbackCode = 78 // The callback function is called from within the interior-point optimizer after the information database has been updated. - CALLBACK_NEW_INT_MIO CallbackCode = 79 // The callback function is called after a new integer solution has been located by the mixed-integer optimizer. - CALLBACK_PRIMAL_SIMPLEX CallbackCode = 80 // The callback function is called from within the primal simplex optimizer. - CALLBACK_READ_OPF CallbackCode = 81 // The callback function is called from the OPF reader. - CALLBACK_READ_OPF_SECTION CallbackCode = 82 // A chunk of Q non-zeros has been read from a problem file. - CALLBACK_RESTART_MIO CallbackCode = 83 // The callback function is called when the mixed-integer optimizer is restarted. - CALLBACK_SOLVING_REMOTE CallbackCode = 84 // The callback function is called while the task is being solved on a remote server. - CALLBACK_UPDATE_DUAL_BI CallbackCode = 85 // The callback function is called from within the basis identification procedure at an intermediate point in the dual phase. - CALLBACK_UPDATE_DUAL_SIMPLEX CallbackCode = 86 // The callback function is called in the dual simplex optimizer. - CALLBACK_UPDATE_DUAL_SIMPLEX_BI CallbackCode = 87 // The callback function is called from within the basis identification procedure at an intermediate point in the dual simplex clean-up phase. - CALLBACK_UPDATE_PRESOLVE CallbackCode = 88 // The callback function is called from within the presolve procedure. - CALLBACK_UPDATE_PRIMAL_BI CallbackCode = 89 // The callback function is called from within the basis identification procedure at an intermediate point in the primal phase. - CALLBACK_UPDATE_PRIMAL_SIMPLEX CallbackCode = 90 // The callback function is called in the primal simplex optimizer. - CALLBACK_UPDATE_PRIMAL_SIMPLEX_BI CallbackCode = 91 // The callback function is called from within the basis identification procedure at an intermediate point in the primal simplex clean-up phase. - CALLBACK_UPDATE_SIMPLEX CallbackCode = 92 // The callback function is called from simplex optimizer. - CALLBACK_WRITE_OPF CallbackCode = 93 // The callback function is called from the OPF writer. + CALLBACK_BEGIN_BI CallbackCode = C.MSK_CALLBACK_BEGIN_BI // The basis identification procedure has been started. + CALLBACK_BEGIN_CONIC CallbackCode = C.MSK_CALLBACK_BEGIN_CONIC // The callback function is called when the conic optimizer is started. + CALLBACK_BEGIN_DUAL_BI CallbackCode = C.MSK_CALLBACK_BEGIN_DUAL_BI // The callback function is called from within the basis identification procedure when the dual phase is started. + CALLBACK_BEGIN_DUAL_SENSITIVITY CallbackCode = C.MSK_CALLBACK_BEGIN_DUAL_SENSITIVITY // Dual sensitivity analysis is started. + CALLBACK_BEGIN_DUAL_SETUP_BI CallbackCode = C.MSK_CALLBACK_BEGIN_DUAL_SETUP_BI // The callback function is called when the dual BI phase is started. + CALLBACK_BEGIN_DUAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_BEGIN_DUAL_SIMPLEX // The callback function is called when the dual simplex optimizer started. + CALLBACK_BEGIN_DUAL_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_BEGIN_DUAL_SIMPLEX_BI // The callback function is called from within the basis identification procedure when the dual simplex clean-up phase is started. + CALLBACK_BEGIN_INFEAS_ANA CallbackCode = C.MSK_CALLBACK_BEGIN_INFEAS_ANA // The callback function is called when the infeasibility analyzer is started. + CALLBACK_BEGIN_INTPNT CallbackCode = C.MSK_CALLBACK_BEGIN_INTPNT // The callback function is called when the interior-point optimizer is started. + CALLBACK_BEGIN_LICENSE_WAIT CallbackCode = C.MSK_CALLBACK_BEGIN_LICENSE_WAIT // Begin waiting for license. + CALLBACK_BEGIN_MIO CallbackCode = C.MSK_CALLBACK_BEGIN_MIO // The callback function is called when the mixed-integer optimizer is started. + CALLBACK_BEGIN_OPTIMIZER CallbackCode = C.MSK_CALLBACK_BEGIN_OPTIMIZER // The callback function is called when the optimizer is started. + CALLBACK_BEGIN_PRESOLVE CallbackCode = C.MSK_CALLBACK_BEGIN_PRESOLVE // The callback function is called when the presolve is started. + CALLBACK_BEGIN_PRIMAL_BI CallbackCode = C.MSK_CALLBACK_BEGIN_PRIMAL_BI // The callback function is called from within the basis identification procedure when the primal phase is started. + CALLBACK_BEGIN_PRIMAL_REPAIR CallbackCode = C.MSK_CALLBACK_BEGIN_PRIMAL_REPAIR // Begin primal feasibility repair. + CALLBACK_BEGIN_PRIMAL_SENSITIVITY CallbackCode = C.MSK_CALLBACK_BEGIN_PRIMAL_SENSITIVITY // Primal sensitivity analysis is started. + CALLBACK_BEGIN_PRIMAL_SETUP_BI CallbackCode = C.MSK_CALLBACK_BEGIN_PRIMAL_SETUP_BI // The callback function is called when the primal BI setup is started. + CALLBACK_BEGIN_PRIMAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_BEGIN_PRIMAL_SIMPLEX // The callback function is called when the primal simplex optimizer is started. + CALLBACK_BEGIN_PRIMAL_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_BEGIN_PRIMAL_SIMPLEX_BI // The callback function is called from within the basis identification procedure when the primal simplex clean-up phase is started. + CALLBACK_BEGIN_QCQO_REFORMULATE CallbackCode = C.MSK_CALLBACK_BEGIN_QCQO_REFORMULATE // Begin QCQO reformulation. + CALLBACK_BEGIN_READ CallbackCode = C.MSK_CALLBACK_BEGIN_READ // MOSEK has started reading a problem file. + CALLBACK_BEGIN_ROOT_CUTGEN CallbackCode = C.MSK_CALLBACK_BEGIN_ROOT_CUTGEN // The callback function is called when root cut generation is started. + CALLBACK_BEGIN_SIMPLEX CallbackCode = C.MSK_CALLBACK_BEGIN_SIMPLEX // The callback function is called when the simplex optimizer is started. + CALLBACK_BEGIN_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_BEGIN_SIMPLEX_BI // The callback function is called from within the basis identification procedure when the simplex clean-up phase is started. + CALLBACK_BEGIN_SOLVE_ROOT_RELAX CallbackCode = C.MSK_CALLBACK_BEGIN_SOLVE_ROOT_RELAX // The callback function is called when solution of root relaxation is started. + CALLBACK_BEGIN_TO_CONIC CallbackCode = C.MSK_CALLBACK_BEGIN_TO_CONIC // Begin conic reformulation. + CALLBACK_BEGIN_WRITE CallbackCode = C.MSK_CALLBACK_BEGIN_WRITE // MOSEK has started writing a problem file. + CALLBACK_CONIC CallbackCode = C.MSK_CALLBACK_CONIC // The callback function is called from within the conic optimizer after the information database has been updated. + CALLBACK_DUAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_DUAL_SIMPLEX // The callback function is called from within the dual simplex optimizer. + CALLBACK_END_BI CallbackCode = C.MSK_CALLBACK_END_BI // The callback function is called when the basis identification procedure is terminated. + CALLBACK_END_CONIC CallbackCode = C.MSK_CALLBACK_END_CONIC // The callback function is called when the conic optimizer is terminated. + CALLBACK_END_DUAL_BI CallbackCode = C.MSK_CALLBACK_END_DUAL_BI // The callback function is called from within the basis identification procedure when the dual phase is terminated. + CALLBACK_END_DUAL_SENSITIVITY CallbackCode = C.MSK_CALLBACK_END_DUAL_SENSITIVITY // Dual sensitivity analysis is terminated. + CALLBACK_END_DUAL_SETUP_BI CallbackCode = C.MSK_CALLBACK_END_DUAL_SETUP_BI // The callback function is called when the dual BI phase is terminated. + CALLBACK_END_DUAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_END_DUAL_SIMPLEX // The callback function is called when the dual simplex optimizer is terminated. + CALLBACK_END_DUAL_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_END_DUAL_SIMPLEX_BI // The callback function is called from within the basis identification procedure when the dual clean-up phase is terminated. + CALLBACK_END_INFEAS_ANA CallbackCode = C.MSK_CALLBACK_END_INFEAS_ANA // The callback function is called when the infeasibility analyzer is terminated. + CALLBACK_END_INTPNT CallbackCode = C.MSK_CALLBACK_END_INTPNT // The callback function is called when the interior-point optimizer is terminated. + CALLBACK_END_LICENSE_WAIT CallbackCode = C.MSK_CALLBACK_END_LICENSE_WAIT // End waiting for license. + CALLBACK_END_MIO CallbackCode = C.MSK_CALLBACK_END_MIO // The callback function is called when the mixed-integer optimizer is terminated. + CALLBACK_END_OPTIMIZER CallbackCode = C.MSK_CALLBACK_END_OPTIMIZER // The callback function is called when the optimizer is terminated. + CALLBACK_END_PRESOLVE CallbackCode = C.MSK_CALLBACK_END_PRESOLVE // The callback function is called when the presolve is completed. + CALLBACK_END_PRIMAL_BI CallbackCode = C.MSK_CALLBACK_END_PRIMAL_BI // The callback function is called from within the basis identification procedure when the primal phase is terminated. + CALLBACK_END_PRIMAL_REPAIR CallbackCode = C.MSK_CALLBACK_END_PRIMAL_REPAIR // End primal feasibility repair. + CALLBACK_END_PRIMAL_SENSITIVITY CallbackCode = C.MSK_CALLBACK_END_PRIMAL_SENSITIVITY // Primal sensitivity analysis is terminated. + CALLBACK_END_PRIMAL_SETUP_BI CallbackCode = C.MSK_CALLBACK_END_PRIMAL_SETUP_BI // The callback function is called when the primal BI setup is terminated. + CALLBACK_END_PRIMAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_END_PRIMAL_SIMPLEX // The callback function is called when the primal simplex optimizer is terminated. + CALLBACK_END_PRIMAL_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_END_PRIMAL_SIMPLEX_BI // The callback function is called from within the basis identification procedure when the primal clean-up phase is terminated. + CALLBACK_END_QCQO_REFORMULATE CallbackCode = C.MSK_CALLBACK_END_QCQO_REFORMULATE // End QCQO reformulation. + CALLBACK_END_READ CallbackCode = C.MSK_CALLBACK_END_READ // MOSEK has finished reading a problem file. + CALLBACK_END_ROOT_CUTGEN CallbackCode = C.MSK_CALLBACK_END_ROOT_CUTGEN // The callback function is called when root cut generation is terminated. + CALLBACK_END_SIMPLEX CallbackCode = C.MSK_CALLBACK_END_SIMPLEX // The callback function is called when the simplex optimizer is terminated. + CALLBACK_END_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_END_SIMPLEX_BI // The callback function is called from within the basis identification procedure when the simplex clean-up phase is terminated. + CALLBACK_END_SOLVE_ROOT_RELAX CallbackCode = C.MSK_CALLBACK_END_SOLVE_ROOT_RELAX // The callback function is called when solution of root relaxation is terminated. + CALLBACK_END_TO_CONIC CallbackCode = C.MSK_CALLBACK_END_TO_CONIC // End conic reformulation. + CALLBACK_END_WRITE CallbackCode = C.MSK_CALLBACK_END_WRITE // MOSEK has finished writing a problem file. + CALLBACK_IM_BI CallbackCode = C.MSK_CALLBACK_IM_BI // The callback function is called from within the basis identification procedure at an intermediate point. + CALLBACK_IM_CONIC CallbackCode = C.MSK_CALLBACK_IM_CONIC // The callback function is called at an intermediate stage within the conic optimizer where the information database has not been updated. + CALLBACK_IM_DUAL_BI CallbackCode = C.MSK_CALLBACK_IM_DUAL_BI // The callback function is called from within the basis identification procedure at an intermediate point in the dual phase. + CALLBACK_IM_DUAL_SENSIVITY CallbackCode = C.MSK_CALLBACK_IM_DUAL_SENSIVITY // The callback function is called at an intermediate stage of the dual sensitivity analysis. + CALLBACK_IM_DUAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_IM_DUAL_SIMPLEX // The callback function is called at an intermediate point in the dual simplex optimizer. + CALLBACK_IM_INTPNT CallbackCode = C.MSK_CALLBACK_IM_INTPNT // The callback function is called at an intermediate stage within the interior-point optimizer where the information database has not been updated. + CALLBACK_IM_LICENSE_WAIT CallbackCode = C.MSK_CALLBACK_IM_LICENSE_WAIT // MOSEK is waiting for a license. + CALLBACK_IM_LU CallbackCode = C.MSK_CALLBACK_IM_LU // The callback function is called from within the LU factorization procedure at an intermediate point. + CALLBACK_IM_MIO CallbackCode = C.MSK_CALLBACK_IM_MIO // The callback function is called at an intermediate point in the mixed-integer optimizer. + CALLBACK_IM_MIO_DUAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_IM_MIO_DUAL_SIMPLEX // The callback function is called at an intermediate point in the mixed-integer optimizer while running the dual simplex optimizer. + CALLBACK_IM_MIO_INTPNT CallbackCode = C.MSK_CALLBACK_IM_MIO_INTPNT // The callback function is called at an intermediate point in the mixed-integer optimizer while running the interior-point optimizer. + CALLBACK_IM_MIO_PRIMAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_IM_MIO_PRIMAL_SIMPLEX // The callback function is called at an intermediate point in the mixed-integer optimizer while running the primal simplex optimizer. + CALLBACK_IM_ORDER CallbackCode = C.MSK_CALLBACK_IM_ORDER // The callback function is called from within the matrix ordering procedure at an intermediate point. + CALLBACK_IM_PRESOLVE CallbackCode = C.MSK_CALLBACK_IM_PRESOLVE // The callback function is called from within the presolve procedure at an intermediate stage. + CALLBACK_IM_PRIMAL_BI CallbackCode = C.MSK_CALLBACK_IM_PRIMAL_BI // The callback function is called from within the basis identification procedure at an intermediate point in the primal phase. + CALLBACK_IM_PRIMAL_SENSIVITY CallbackCode = C.MSK_CALLBACK_IM_PRIMAL_SENSIVITY // The callback function is called at an intermediate stage of the primal sensitivity analysis. + CALLBACK_IM_PRIMAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_IM_PRIMAL_SIMPLEX // The callback function is called at an intermediate point in the primal simplex optimizer. + CALLBACK_IM_QO_REFORMULATE CallbackCode = C.MSK_CALLBACK_IM_QO_REFORMULATE // The callback function is called at an intermediate stage of the conic quadratic reformulation. + CALLBACK_IM_READ CallbackCode = C.MSK_CALLBACK_IM_READ // Intermediate stage in reading. + CALLBACK_IM_ROOT_CUTGEN CallbackCode = C.MSK_CALLBACK_IM_ROOT_CUTGEN // The callback is called from within root cut generation at an intermediate stage. + CALLBACK_IM_SIMPLEX CallbackCode = C.MSK_CALLBACK_IM_SIMPLEX // The callback function is called from within the simplex optimizer at an intermediate point. + CALLBACK_IM_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_IM_SIMPLEX_BI // The callback function is called from within the basis identification procedure at an intermediate point in the simplex clean-up phase. + CALLBACK_INTPNT CallbackCode = C.MSK_CALLBACK_INTPNT // The callback function is called from within the interior-point optimizer after the information database has been updated. + CALLBACK_NEW_INT_MIO CallbackCode = C.MSK_CALLBACK_NEW_INT_MIO // The callback function is called after a new integer solution has been located by the mixed-integer optimizer. + CALLBACK_PRIMAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_PRIMAL_SIMPLEX // The callback function is called from within the primal simplex optimizer. + CALLBACK_READ_OPF CallbackCode = C.MSK_CALLBACK_READ_OPF // The callback function is called from the OPF reader. + CALLBACK_READ_OPF_SECTION CallbackCode = C.MSK_CALLBACK_READ_OPF_SECTION // A chunk of Q non-zeros has been read from a problem file. + CALLBACK_RESTART_MIO CallbackCode = C.MSK_CALLBACK_RESTART_MIO // The callback function is called when the mixed-integer optimizer is restarted. + CALLBACK_SOLVING_REMOTE CallbackCode = C.MSK_CALLBACK_SOLVING_REMOTE // The callback function is called while the task is being solved on a remote server. + CALLBACK_UPDATE_DUAL_BI CallbackCode = C.MSK_CALLBACK_UPDATE_DUAL_BI // The callback function is called from within the basis identification procedure at an intermediate point in the dual phase. + CALLBACK_UPDATE_DUAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_UPDATE_DUAL_SIMPLEX // The callback function is called in the dual simplex optimizer. + CALLBACK_UPDATE_DUAL_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_UPDATE_DUAL_SIMPLEX_BI // The callback function is called from within the basis identification procedure at an intermediate point in the dual simplex clean-up phase. + CALLBACK_UPDATE_PRESOLVE CallbackCode = C.MSK_CALLBACK_UPDATE_PRESOLVE // The callback function is called from within the presolve procedure. + CALLBACK_UPDATE_PRIMAL_BI CallbackCode = C.MSK_CALLBACK_UPDATE_PRIMAL_BI // The callback function is called from within the basis identification procedure at an intermediate point in the primal phase. + CALLBACK_UPDATE_PRIMAL_SIMPLEX CallbackCode = C.MSK_CALLBACK_UPDATE_PRIMAL_SIMPLEX // The callback function is called in the primal simplex optimizer. + CALLBACK_UPDATE_PRIMAL_SIMPLEX_BI CallbackCode = C.MSK_CALLBACK_UPDATE_PRIMAL_SIMPLEX_BI // The callback function is called from within the basis identification procedure at an intermediate point in the primal simplex clean-up phase. + CALLBACK_UPDATE_SIMPLEX CallbackCode = C.MSK_CALLBACK_UPDATE_SIMPLEX // The callback function is called from simplex optimizer. + CALLBACK_WRITE_OPF CallbackCode = C.MSK_CALLBACK_WRITE_OPF // The callback function is called from the OPF writer. ) var _CallbackCode_map = map[CallbackCode]string{ diff --git a/compresstype_enum.go b/compresstype_enum.go index 6c4ac38..2595cf8 100644 --- a/compresstype_enum.go +++ b/compresstype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // CompressType is MSKcompresstype_enum. @@ -11,10 +14,10 @@ import "strconv" type CompressType uint32 const ( - COMPRESS_NONE CompressType = 0 // No compression is used. - COMPRESS_FREE CompressType = 1 // The type of compression used is chosen automatically. - COMPRESS_GZIP CompressType = 2 // The type of compression used is gzip compatible. - COMPRESS_ZSTD CompressType = 3 // The type of compression used is zstd compatible. + COMPRESS_NONE CompressType = C.MSK_COMPRESS_NONE // No compression is used. + COMPRESS_FREE CompressType = C.MSK_COMPRESS_FREE // The type of compression used is chosen automatically. + COMPRESS_GZIP CompressType = C.MSK_COMPRESS_GZIP // The type of compression used is gzip compatible. + COMPRESS_ZSTD CompressType = C.MSK_COMPRESS_ZSTD // The type of compression used is zstd compatible. ) var _CompressType_map = map[CompressType]string{ diff --git a/conetype_enum.go b/conetype_enum.go index 7999984..2e78421 100644 --- a/conetype_enum.go +++ b/conetype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ConeType is MSKconetype_enum. @@ -11,13 +14,13 @@ import "strconv" type ConeType uint32 const ( - CT_QUAD ConeType = 0 // The cone is a quadratic cone. - CT_RQUAD ConeType = 1 // The cone is a rotated quadratic cone. - CT_PEXP ConeType = 2 // A primal exponential cone. - CT_DEXP ConeType = 3 // A dual exponential cone. - CT_PPOW ConeType = 4 // A primal power cone. - CT_DPOW ConeType = 5 // A dual power cone. - CT_ZERO ConeType = 6 // The zero cone. + CT_QUAD ConeType = C.MSK_CT_QUAD // The cone is a quadratic cone. + CT_RQUAD ConeType = C.MSK_CT_RQUAD // The cone is a rotated quadratic cone. + CT_PEXP ConeType = C.MSK_CT_PEXP // A primal exponential cone. + CT_DEXP ConeType = C.MSK_CT_DEXP // A dual exponential cone. + CT_PPOW ConeType = C.MSK_CT_PPOW // A primal power cone. + CT_DPOW ConeType = C.MSK_CT_DPOW // A dual power cone. + CT_ZERO ConeType = C.MSK_CT_ZERO // The zero cone. ) var _ConeType_map = map[ConeType]string{ diff --git a/dataformat_enum.go b/dataformat_enum.go index c900806..a9c5c35 100644 --- a/dataformat_enum.go +++ b/dataformat_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // DataFormat is MSKdataformat_enum. @@ -11,15 +14,15 @@ import "strconv" type DataFormat uint32 const ( - DATA_FORMAT_EXTENSION DataFormat = 0 // The file extension is used to determine the data file format. - DATA_FORMAT_MPS DataFormat = 1 // The data file is MPS formatted. - DATA_FORMAT_LP DataFormat = 2 // The data file is LP formatted. - DATA_FORMAT_OP DataFormat = 3 // The data file is an optimization problem formatted file. - DATA_FORMAT_FREE_MPS DataFormat = 4 // The data a free MPS formatted file. - DATA_FORMAT_TASK DataFormat = 5 // Generic task dump file. - DATA_FORMAT_PTF DataFormat = 6 // (P)retty (T)ext (F)format. - DATA_FORMAT_CB DataFormat = 7 // Conic benchmark format, - DATA_FORMAT_JSON_TASK DataFormat = 8 // JSON based task format. + DATA_FORMAT_EXTENSION DataFormat = C.MSK_DATA_FORMAT_EXTENSION // The file extension is used to determine the data file format. + DATA_FORMAT_MPS DataFormat = C.MSK_DATA_FORMAT_MPS // The data file is MPS formatted. + DATA_FORMAT_LP DataFormat = C.MSK_DATA_FORMAT_LP // The data file is LP formatted. + DATA_FORMAT_OP DataFormat = C.MSK_DATA_FORMAT_OP // The data file is an optimization problem formatted file. + DATA_FORMAT_FREE_MPS DataFormat = C.MSK_DATA_FORMAT_FREE_MPS // The data a free MPS formatted file. + DATA_FORMAT_TASK DataFormat = C.MSK_DATA_FORMAT_TASK // Generic task dump file. + DATA_FORMAT_PTF DataFormat = C.MSK_DATA_FORMAT_PTF // (P)retty (T)ext (F)format. + DATA_FORMAT_CB DataFormat = C.MSK_DATA_FORMAT_CB // Conic benchmark format, + DATA_FORMAT_JSON_TASK DataFormat = C.MSK_DATA_FORMAT_JSON_TASK // JSON based task format. ) var _DataFormat_map = map[DataFormat]string{ diff --git a/dinfitem_enum.go b/dinfitem_enum.go index f8ddca7..a8235bb 100644 --- a/dinfitem_enum.go +++ b/dinfitem_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // DInfItem is MSKdinfitem_enum. @@ -11,117 +14,117 @@ import "strconv" type DInfItem uint32 const ( - DINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_DENSITY DInfItem = 0 // Density percentage of the scalarized constraint matrix. - DINF_BI_CLEAN_DUAL_TIME DInfItem = 1 // Time spent within the dual clean-up optimizer of the basis identification procedure since its invocation. - DINF_BI_CLEAN_PRIMAL_TIME DInfItem = 2 // Time spent within the primal clean-up optimizer of the basis identification procedure since its invocation. - DINF_BI_CLEAN_TIME DInfItem = 3 // Time spent within the clean-up phase of the basis identification procedure since its invocation. - DINF_BI_DUAL_TIME DInfItem = 4 // Time spent within the dual phase basis identification procedure since its invocation. - DINF_BI_PRIMAL_TIME DInfItem = 5 // Time spent within the primal phase of the basis identification procedure since its invocation. - DINF_BI_TIME DInfItem = 6 // Time spent within the basis identification procedure since its invocation. - DINF_INTPNT_DUAL_FEAS DInfItem = 7 // Dual feasibility measure reported by the interior-point optimizer. - DINF_INTPNT_DUAL_OBJ DInfItem = 8 // Dual objective value reported by the interior-point optimizer. - DINF_INTPNT_FACTOR_NUM_FLOPS DInfItem = 9 // An estimate of the number of flops used in the factorization. - DINF_INTPNT_OPT_STATUS DInfItem = 10 // A measure of optimality of the solution. - DINF_INTPNT_ORDER_TIME DInfItem = 11 // Order time (in seconds). - DINF_INTPNT_PRIMAL_FEAS DInfItem = 12 // Primal feasibility measure reported by the interior-point optimizer. - DINF_INTPNT_PRIMAL_OBJ DInfItem = 13 // Primal objective value reported by the interior-point optimizer. - DINF_INTPNT_TIME DInfItem = 14 // Time spent within the interior-point optimizer since its invocation. - DINF_MIO_CLIQUE_SELECTION_TIME DInfItem = 15 // Selection time for clique cuts. - DINF_MIO_CLIQUE_SEPARATION_TIME DInfItem = 16 // Separation time for clique cuts. - DINF_MIO_CMIR_SELECTION_TIME DInfItem = 17 // Selection time for CMIR cuts. - DINF_MIO_CMIR_SEPARATION_TIME DInfItem = 18 // Separation time for CMIR cuts. - DINF_MIO_CONSTRUCT_SOLUTION_OBJ DInfItem = 19 // Optimal objective value corresponding to the feasible solution. - DINF_MIO_DUAL_BOUND_AFTER_PRESOLVE DInfItem = 20 // Value of the dual bound after presolve but before cut generation. - DINF_MIO_GMI_SELECTION_TIME DInfItem = 21 // Selection time for GMI cuts. - DINF_MIO_GMI_SEPARATION_TIME DInfItem = 22 // Separation time for GMI cuts. - DINF_MIO_IMPLIED_BOUND_SELECTION_TIME DInfItem = 23 // Selection time for implied bound cuts. - DINF_MIO_IMPLIED_BOUND_SEPARATION_TIME DInfItem = 24 // Separation time for implied bound cuts. - DINF_MIO_INITIAL_FEASIBLE_SOLUTION_OBJ DInfItem = 25 // Optimal objective value corresponding to the user provided initial solution. - DINF_MIO_KNAPSACK_COVER_SELECTION_TIME DInfItem = 26 // Selection time for knapsack cover. - DINF_MIO_KNAPSACK_COVER_SEPARATION_TIME DInfItem = 27 // Separation time for knapsack cover. - DINF_MIO_LIPRO_SELECTION_TIME DInfItem = 28 // Selection time for lift-and-project cuts. - DINF_MIO_LIPRO_SEPARATION_TIME DInfItem = 29 // Separation time for lift-and-project cuts. - DINF_MIO_OBJ_ABS_GAP DInfItem = 30 // If the mixed-integer optimizer has computed a feasible solution and a bound, this contains the absolute gap. - DINF_MIO_OBJ_BOUND DInfItem = 31 // The best bound on the objective value known. - DINF_MIO_OBJ_INT DInfItem = 32 // The primal objective value corresponding to the best integer feasible solution. - DINF_MIO_OBJ_REL_GAP DInfItem = 33 // If the mixed-integer optimizer has computed a feasible solution and a bound, this contains the relative gap. - DINF_MIO_PROBING_TIME DInfItem = 34 // Total time for probing. - DINF_MIO_ROOT_CUT_SELECTION_TIME DInfItem = 35 // Total time for cut selection. - DINF_MIO_ROOT_CUT_SEPARATION_TIME DInfItem = 36 // Total time for cut separation. - DINF_MIO_ROOT_OPTIMIZER_TIME DInfItem = 37 // Time spent in the contiuous optimizer while processing the root node relaxation. - DINF_MIO_ROOT_PRESOLVE_TIME DInfItem = 38 // Time spent presolving the problem at the root node. - DINF_MIO_ROOT_TIME DInfItem = 39 // Time spent processing the root node. - DINF_MIO_SYMMETRY_DETECTION_TIME DInfItem = 40 // Total time for symmetry detection. - DINF_MIO_SYMMETRY_FACTOR DInfItem = 41 // Degree to which the problem is affected by detected symmetry. - DINF_MIO_TIME DInfItem = 42 // Time spent in the mixed-integer optimizer. - DINF_MIO_USER_OBJ_CUT DInfItem = 43 // If the objective cut is used, then this information item has the value of the cut. - DINF_OPTIMIZER_TICKS DInfItem = 44 // Total number of ticks spent in the optimizer since it was invoked. It is strictly negative if it is not available. - DINF_OPTIMIZER_TIME DInfItem = 45 // Total time spent in the optimizer since it was invoked. - DINF_PRESOLVE_ELI_TIME DInfItem = 46 // Total time spent in the eliminator since the presolve was invoked. - DINF_PRESOLVE_LINDEP_TIME DInfItem = 47 // Total time spent in the linear dependency checker since the presolve was invoked. - DINF_PRESOLVE_TIME DInfItem = 48 // Total time (in seconds) spent in the presolve since it was invoked. - DINF_PRESOLVE_TOTAL_PRIMAL_PERTURBATION DInfItem = 49 // Total perturbation of the bounds of the primal problem. - DINF_PRIMAL_REPAIR_PENALTY_OBJ DInfItem = 50 // The optimal objective value of the penalty function. - DINF_QCQO_REFORMULATE_MAX_PERTURBATION DInfItem = 51 // Maximum absolute diagonal perturbation occurring during the QCQO reformulation. - DINF_QCQO_REFORMULATE_TIME DInfItem = 52 // Time spent with conic quadratic reformulation. - DINF_QCQO_REFORMULATE_WORST_CHOLESKY_COLUMN_SCALING DInfItem = 53 // Worst Cholesky column scaling. - DINF_QCQO_REFORMULATE_WORST_CHOLESKY_DIAG_SCALING DInfItem = 54 // Worst Cholesky diagonal scaling. - DINF_READ_DATA_TIME DInfItem = 55 // Time spent reading the data file. - DINF_REMOTE_TIME DInfItem = 56 // The total real time in seconds spent when optimizing on a server by the process performing the optimization on the server - DINF_SIM_DUAL_TIME DInfItem = 57 // Time spent in the dual simplex optimizer since invoking it. - DINF_SIM_FEAS DInfItem = 58 // Feasibility measure reported by the simplex optimizer. - DINF_SIM_OBJ DInfItem = 59 // Objective value reported by the simplex optimizer. - DINF_SIM_PRIMAL_TIME DInfItem = 60 // Time spent in the primal simplex optimizer since invoking it. - DINF_SIM_TIME DInfItem = 61 // Time spent in the simplex optimizer since invoking it. - DINF_SOL_BAS_DUAL_OBJ DInfItem = 62 // Dual objective value of the basic solution. Updated by the function updatesolutioninfo. - DINF_SOL_BAS_DVIOLCON DInfItem = 63 // Maximal dual bound violation for xx in the basic solution. Updated by the function updatesolutioninfo. - DINF_SOL_BAS_DVIOLVAR DInfItem = 64 // Maximal dual bound violation for xx in the basic solution. Updated by the function updatesolutioninfo. - DINF_SOL_BAS_NRM_BARX DInfItem = 65 // Infinity norm of barx in the basic solution. - DINF_SOL_BAS_NRM_SLC DInfItem = 66 // Infinity norm of slc in the basic solution. - DINF_SOL_BAS_NRM_SLX DInfItem = 67 // Infinity norm of slx in the basic solution. - DINF_SOL_BAS_NRM_SUC DInfItem = 68 // Infinity norm of suc in the basic solution. - DINF_SOL_BAS_NRM_SUX DInfItem = 69 // Infinity norm of sux in the basic solution. - DINF_SOL_BAS_NRM_XC DInfItem = 70 // Infinity norm of xc in the basic solution. - DINF_SOL_BAS_NRM_XX DInfItem = 71 // Infinity norm of xx in the basic solution. - DINF_SOL_BAS_NRM_Y DInfItem = 72 // Infinity norm of Y in the basic solution. - DINF_SOL_BAS_PRIMAL_OBJ DInfItem = 73 // Primal objective value of the basic solution. Updated by the function updatesolutioninfo. - DINF_SOL_BAS_PVIOLCON DInfItem = 74 // Maximal primal bound violation for xc in the basic solution. Updated by the function updatesolutioninfo. - DINF_SOL_BAS_PVIOLVAR DInfItem = 75 // Maximal primal bound violation for xx in the basic solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_NRM_BARX DInfItem = 76 // Infinity norm of barx in the integer solution. - DINF_SOL_ITG_NRM_XC DInfItem = 77 // Infinity norm of xc in the integer solution. - DINF_SOL_ITG_NRM_XX DInfItem = 78 // Infinity norm of xx in the integer solution. - DINF_SOL_ITG_PRIMAL_OBJ DInfItem = 79 // Primal objective value of the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLACC DInfItem = 80 // Maximal primal violation for affine conic constraints in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLBARVAR DInfItem = 81 // Maximal primal bound violation for barx in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLCON DInfItem = 82 // Maximal primal bound violation for xc in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLCONES DInfItem = 83 // Maximal primal violation for primal conic constraints in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLDJC DInfItem = 84 // Maximal primal violation for disjunctive constraints in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLITG DInfItem = 85 // Maximal violation for the integer constraints in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITG_PVIOLVAR DInfItem = 86 // Maximal primal bound violation for xx in the integer solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_DUAL_OBJ DInfItem = 87 // Dual objective value of the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_DVIOLACC DInfItem = 88 // Maximal dual violation for affine conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_DVIOLBARVAR DInfItem = 89 // Maximal dual bound violation for barx in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_DVIOLCON DInfItem = 90 // Maximal dual bound violation for xc in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_DVIOLCONES DInfItem = 91 // Maximal dual violation for conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_DVIOLVAR DInfItem = 92 // Maximal dual bound violation for xx in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_NRM_BARS DInfItem = 93 // Infinity norm of bars in the interior-point solution. - DINF_SOL_ITR_NRM_BARX DInfItem = 94 // Infinity norm of barx in the interior-point solution. - DINF_SOL_ITR_NRM_SLC DInfItem = 95 // Infinity norm of slc in the interior-point solution. - DINF_SOL_ITR_NRM_SLX DInfItem = 96 // Infinity norm of slx in the interior-point solution. - DINF_SOL_ITR_NRM_SNX DInfItem = 97 // Infinity norm of snx in the interior-point solution. - DINF_SOL_ITR_NRM_SUC DInfItem = 98 // Infinity norm of suc in the interior-point solution. - DINF_SOL_ITR_NRM_SUX DInfItem = 99 // Infinity norm of sux in the interior-point solution. - DINF_SOL_ITR_NRM_XC DInfItem = 100 // Infinity norm of xc in the interior-point solution. - DINF_SOL_ITR_NRM_XX DInfItem = 101 // Infinity norm of xx in the interior-point solution. - DINF_SOL_ITR_NRM_Y DInfItem = 102 // Infinity norm of Y in the interior-point solution. - DINF_SOL_ITR_PRIMAL_OBJ DInfItem = 103 // Primal objective value of the interior-point solution. - DINF_SOL_ITR_PVIOLACC DInfItem = 104 // Maximal primal violation for affine conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_PVIOLBARVAR DInfItem = 105 // Maximal primal bound violation for barx in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_PVIOLCON DInfItem = 106 // Maximal primal bound violation for xc in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_PVIOLCONES DInfItem = 107 // Maximal primal violation for conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_SOL_ITR_PVIOLVAR DInfItem = 108 // Maximal primal bound violation for xx in the interior-point solution. Updated by the function updatesolutioninfo. - DINF_TO_CONIC_TIME DInfItem = 109 // Time spent in the last to conic reformulation. - DINF_WRITE_DATA_TIME DInfItem = 110 // Time spent writing the data file. + DINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_DENSITY DInfItem = C.MSK_DINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_DENSITY // Density percentage of the scalarized constraint matrix. + DINF_BI_CLEAN_DUAL_TIME DInfItem = C.MSK_DINF_BI_CLEAN_DUAL_TIME // Time spent within the dual clean-up optimizer of the basis identification procedure since its invocation. + DINF_BI_CLEAN_PRIMAL_TIME DInfItem = C.MSK_DINF_BI_CLEAN_PRIMAL_TIME // Time spent within the primal clean-up optimizer of the basis identification procedure since its invocation. + DINF_BI_CLEAN_TIME DInfItem = C.MSK_DINF_BI_CLEAN_TIME // Time spent within the clean-up phase of the basis identification procedure since its invocation. + DINF_BI_DUAL_TIME DInfItem = C.MSK_DINF_BI_DUAL_TIME // Time spent within the dual phase basis identification procedure since its invocation. + DINF_BI_PRIMAL_TIME DInfItem = C.MSK_DINF_BI_PRIMAL_TIME // Time spent within the primal phase of the basis identification procedure since its invocation. + DINF_BI_TIME DInfItem = C.MSK_DINF_BI_TIME // Time spent within the basis identification procedure since its invocation. + DINF_INTPNT_DUAL_FEAS DInfItem = C.MSK_DINF_INTPNT_DUAL_FEAS // Dual feasibility measure reported by the interior-point optimizer. + DINF_INTPNT_DUAL_OBJ DInfItem = C.MSK_DINF_INTPNT_DUAL_OBJ // Dual objective value reported by the interior-point optimizer. + DINF_INTPNT_FACTOR_NUM_FLOPS DInfItem = C.MSK_DINF_INTPNT_FACTOR_NUM_FLOPS // An estimate of the number of flops used in the factorization. + DINF_INTPNT_OPT_STATUS DInfItem = C.MSK_DINF_INTPNT_OPT_STATUS // A measure of optimality of the solution. + DINF_INTPNT_ORDER_TIME DInfItem = C.MSK_DINF_INTPNT_ORDER_TIME // Order time (in seconds). + DINF_INTPNT_PRIMAL_FEAS DInfItem = C.MSK_DINF_INTPNT_PRIMAL_FEAS // Primal feasibility measure reported by the interior-point optimizer. + DINF_INTPNT_PRIMAL_OBJ DInfItem = C.MSK_DINF_INTPNT_PRIMAL_OBJ // Primal objective value reported by the interior-point optimizer. + DINF_INTPNT_TIME DInfItem = C.MSK_DINF_INTPNT_TIME // Time spent within the interior-point optimizer since its invocation. + DINF_MIO_CLIQUE_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_CLIQUE_SELECTION_TIME // Selection time for clique cuts. + DINF_MIO_CLIQUE_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_CLIQUE_SEPARATION_TIME // Separation time for clique cuts. + DINF_MIO_CMIR_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_CMIR_SELECTION_TIME // Selection time for CMIR cuts. + DINF_MIO_CMIR_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_CMIR_SEPARATION_TIME // Separation time for CMIR cuts. + DINF_MIO_CONSTRUCT_SOLUTION_OBJ DInfItem = C.MSK_DINF_MIO_CONSTRUCT_SOLUTION_OBJ // Optimal objective value corresponding to the feasible solution. + DINF_MIO_DUAL_BOUND_AFTER_PRESOLVE DInfItem = C.MSK_DINF_MIO_DUAL_BOUND_AFTER_PRESOLVE // Value of the dual bound after presolve but before cut generation. + DINF_MIO_GMI_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_GMI_SELECTION_TIME // Selection time for GMI cuts. + DINF_MIO_GMI_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_GMI_SEPARATION_TIME // Separation time for GMI cuts. + DINF_MIO_IMPLIED_BOUND_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_IMPLIED_BOUND_SELECTION_TIME // Selection time for implied bound cuts. + DINF_MIO_IMPLIED_BOUND_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_IMPLIED_BOUND_SEPARATION_TIME // Separation time for implied bound cuts. + DINF_MIO_INITIAL_FEASIBLE_SOLUTION_OBJ DInfItem = C.MSK_DINF_MIO_INITIAL_FEASIBLE_SOLUTION_OBJ // Optimal objective value corresponding to the user provided initial solution. + DINF_MIO_KNAPSACK_COVER_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_KNAPSACK_COVER_SELECTION_TIME // Selection time for knapsack cover. + DINF_MIO_KNAPSACK_COVER_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_KNAPSACK_COVER_SEPARATION_TIME // Separation time for knapsack cover. + DINF_MIO_LIPRO_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_LIPRO_SELECTION_TIME // Selection time for lift-and-project cuts. + DINF_MIO_LIPRO_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_LIPRO_SEPARATION_TIME // Separation time for lift-and-project cuts. + DINF_MIO_OBJ_ABS_GAP DInfItem = C.MSK_DINF_MIO_OBJ_ABS_GAP // If the mixed-integer optimizer has computed a feasible solution and a bound, this contains the absolute gap. + DINF_MIO_OBJ_BOUND DInfItem = C.MSK_DINF_MIO_OBJ_BOUND // The best bound on the objective value known. + DINF_MIO_OBJ_INT DInfItem = C.MSK_DINF_MIO_OBJ_INT // The primal objective value corresponding to the best integer feasible solution. + DINF_MIO_OBJ_REL_GAP DInfItem = C.MSK_DINF_MIO_OBJ_REL_GAP // If the mixed-integer optimizer has computed a feasible solution and a bound, this contains the relative gap. + DINF_MIO_PROBING_TIME DInfItem = C.MSK_DINF_MIO_PROBING_TIME // Total time for probing. + DINF_MIO_ROOT_CUT_SELECTION_TIME DInfItem = C.MSK_DINF_MIO_ROOT_CUT_SELECTION_TIME // Total time for cut selection. + DINF_MIO_ROOT_CUT_SEPARATION_TIME DInfItem = C.MSK_DINF_MIO_ROOT_CUT_SEPARATION_TIME // Total time for cut separation. + DINF_MIO_ROOT_OPTIMIZER_TIME DInfItem = C.MSK_DINF_MIO_ROOT_OPTIMIZER_TIME // Time spent in the contiuous optimizer while processing the root node relaxation. + DINF_MIO_ROOT_PRESOLVE_TIME DInfItem = C.MSK_DINF_MIO_ROOT_PRESOLVE_TIME // Time spent presolving the problem at the root node. + DINF_MIO_ROOT_TIME DInfItem = C.MSK_DINF_MIO_ROOT_TIME // Time spent processing the root node. + DINF_MIO_SYMMETRY_DETECTION_TIME DInfItem = C.MSK_DINF_MIO_SYMMETRY_DETECTION_TIME // Total time for symmetry detection. + DINF_MIO_SYMMETRY_FACTOR DInfItem = C.MSK_DINF_MIO_SYMMETRY_FACTOR // Degree to which the problem is affected by detected symmetry. + DINF_MIO_TIME DInfItem = C.MSK_DINF_MIO_TIME // Time spent in the mixed-integer optimizer. + DINF_MIO_USER_OBJ_CUT DInfItem = C.MSK_DINF_MIO_USER_OBJ_CUT // If the objective cut is used, then this information item has the value of the cut. + DINF_OPTIMIZER_TICKS DInfItem = C.MSK_DINF_OPTIMIZER_TICKS // Total number of ticks spent in the optimizer since it was invoked. It is strictly negative if it is not available. + DINF_OPTIMIZER_TIME DInfItem = C.MSK_DINF_OPTIMIZER_TIME // Total time spent in the optimizer since it was invoked. + DINF_PRESOLVE_ELI_TIME DInfItem = C.MSK_DINF_PRESOLVE_ELI_TIME // Total time spent in the eliminator since the presolve was invoked. + DINF_PRESOLVE_LINDEP_TIME DInfItem = C.MSK_DINF_PRESOLVE_LINDEP_TIME // Total time spent in the linear dependency checker since the presolve was invoked. + DINF_PRESOLVE_TIME DInfItem = C.MSK_DINF_PRESOLVE_TIME // Total time (in seconds) spent in the presolve since it was invoked. + DINF_PRESOLVE_TOTAL_PRIMAL_PERTURBATION DInfItem = C.MSK_DINF_PRESOLVE_TOTAL_PRIMAL_PERTURBATION // Total perturbation of the bounds of the primal problem. + DINF_PRIMAL_REPAIR_PENALTY_OBJ DInfItem = C.MSK_DINF_PRIMAL_REPAIR_PENALTY_OBJ // The optimal objective value of the penalty function. + DINF_QCQO_REFORMULATE_MAX_PERTURBATION DInfItem = C.MSK_DINF_QCQO_REFORMULATE_MAX_PERTURBATION // Maximum absolute diagonal perturbation occurring during the QCQO reformulation. + DINF_QCQO_REFORMULATE_TIME DInfItem = C.MSK_DINF_QCQO_REFORMULATE_TIME // Time spent with conic quadratic reformulation. + DINF_QCQO_REFORMULATE_WORST_CHOLESKY_COLUMN_SCALING DInfItem = C.MSK_DINF_QCQO_REFORMULATE_WORST_CHOLESKY_COLUMN_SCALING // Worst Cholesky column scaling. + DINF_QCQO_REFORMULATE_WORST_CHOLESKY_DIAG_SCALING DInfItem = C.MSK_DINF_QCQO_REFORMULATE_WORST_CHOLESKY_DIAG_SCALING // Worst Cholesky diagonal scaling. + DINF_READ_DATA_TIME DInfItem = C.MSK_DINF_READ_DATA_TIME // Time spent reading the data file. + DINF_REMOTE_TIME DInfItem = C.MSK_DINF_REMOTE_TIME // The total real time in seconds spent when optimizing on a server by the process performing the optimization on the server + DINF_SIM_DUAL_TIME DInfItem = C.MSK_DINF_SIM_DUAL_TIME // Time spent in the dual simplex optimizer since invoking it. + DINF_SIM_FEAS DInfItem = C.MSK_DINF_SIM_FEAS // Feasibility measure reported by the simplex optimizer. + DINF_SIM_OBJ DInfItem = C.MSK_DINF_SIM_OBJ // Objective value reported by the simplex optimizer. + DINF_SIM_PRIMAL_TIME DInfItem = C.MSK_DINF_SIM_PRIMAL_TIME // Time spent in the primal simplex optimizer since invoking it. + DINF_SIM_TIME DInfItem = C.MSK_DINF_SIM_TIME // Time spent in the simplex optimizer since invoking it. + DINF_SOL_BAS_DUAL_OBJ DInfItem = C.MSK_DINF_SOL_BAS_DUAL_OBJ // Dual objective value of the basic solution. Updated by the function updatesolutioninfo. + DINF_SOL_BAS_DVIOLCON DInfItem = C.MSK_DINF_SOL_BAS_DVIOLCON // Maximal dual bound violation for xx in the basic solution. Updated by the function updatesolutioninfo. + DINF_SOL_BAS_DVIOLVAR DInfItem = C.MSK_DINF_SOL_BAS_DVIOLVAR // Maximal dual bound violation for xx in the basic solution. Updated by the function updatesolutioninfo. + DINF_SOL_BAS_NRM_BARX DInfItem = C.MSK_DINF_SOL_BAS_NRM_BARX // Infinity norm of barx in the basic solution. + DINF_SOL_BAS_NRM_SLC DInfItem = C.MSK_DINF_SOL_BAS_NRM_SLC // Infinity norm of slc in the basic solution. + DINF_SOL_BAS_NRM_SLX DInfItem = C.MSK_DINF_SOL_BAS_NRM_SLX // Infinity norm of slx in the basic solution. + DINF_SOL_BAS_NRM_SUC DInfItem = C.MSK_DINF_SOL_BAS_NRM_SUC // Infinity norm of suc in the basic solution. + DINF_SOL_BAS_NRM_SUX DInfItem = C.MSK_DINF_SOL_BAS_NRM_SUX // Infinity norm of sux in the basic solution. + DINF_SOL_BAS_NRM_XC DInfItem = C.MSK_DINF_SOL_BAS_NRM_XC // Infinity norm of xc in the basic solution. + DINF_SOL_BAS_NRM_XX DInfItem = C.MSK_DINF_SOL_BAS_NRM_XX // Infinity norm of xx in the basic solution. + DINF_SOL_BAS_NRM_Y DInfItem = C.MSK_DINF_SOL_BAS_NRM_Y // Infinity norm of Y in the basic solution. + DINF_SOL_BAS_PRIMAL_OBJ DInfItem = C.MSK_DINF_SOL_BAS_PRIMAL_OBJ // Primal objective value of the basic solution. Updated by the function updatesolutioninfo. + DINF_SOL_BAS_PVIOLCON DInfItem = C.MSK_DINF_SOL_BAS_PVIOLCON // Maximal primal bound violation for xc in the basic solution. Updated by the function updatesolutioninfo. + DINF_SOL_BAS_PVIOLVAR DInfItem = C.MSK_DINF_SOL_BAS_PVIOLVAR // Maximal primal bound violation for xx in the basic solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_NRM_BARX DInfItem = C.MSK_DINF_SOL_ITG_NRM_BARX // Infinity norm of barx in the integer solution. + DINF_SOL_ITG_NRM_XC DInfItem = C.MSK_DINF_SOL_ITG_NRM_XC // Infinity norm of xc in the integer solution. + DINF_SOL_ITG_NRM_XX DInfItem = C.MSK_DINF_SOL_ITG_NRM_XX // Infinity norm of xx in the integer solution. + DINF_SOL_ITG_PRIMAL_OBJ DInfItem = C.MSK_DINF_SOL_ITG_PRIMAL_OBJ // Primal objective value of the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLACC DInfItem = C.MSK_DINF_SOL_ITG_PVIOLACC // Maximal primal violation for affine conic constraints in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLBARVAR DInfItem = C.MSK_DINF_SOL_ITG_PVIOLBARVAR // Maximal primal bound violation for barx in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLCON DInfItem = C.MSK_DINF_SOL_ITG_PVIOLCON // Maximal primal bound violation for xc in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLCONES DInfItem = C.MSK_DINF_SOL_ITG_PVIOLCONES // Maximal primal violation for primal conic constraints in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLDJC DInfItem = C.MSK_DINF_SOL_ITG_PVIOLDJC // Maximal primal violation for disjunctive constraints in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLITG DInfItem = C.MSK_DINF_SOL_ITG_PVIOLITG // Maximal violation for the integer constraints in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITG_PVIOLVAR DInfItem = C.MSK_DINF_SOL_ITG_PVIOLVAR // Maximal primal bound violation for xx in the integer solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_DUAL_OBJ DInfItem = C.MSK_DINF_SOL_ITR_DUAL_OBJ // Dual objective value of the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_DVIOLACC DInfItem = C.MSK_DINF_SOL_ITR_DVIOLACC // Maximal dual violation for affine conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_DVIOLBARVAR DInfItem = C.MSK_DINF_SOL_ITR_DVIOLBARVAR // Maximal dual bound violation for barx in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_DVIOLCON DInfItem = C.MSK_DINF_SOL_ITR_DVIOLCON // Maximal dual bound violation for xc in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_DVIOLCONES DInfItem = C.MSK_DINF_SOL_ITR_DVIOLCONES // Maximal dual violation for conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_DVIOLVAR DInfItem = C.MSK_DINF_SOL_ITR_DVIOLVAR // Maximal dual bound violation for xx in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_NRM_BARS DInfItem = C.MSK_DINF_SOL_ITR_NRM_BARS // Infinity norm of bars in the interior-point solution. + DINF_SOL_ITR_NRM_BARX DInfItem = C.MSK_DINF_SOL_ITR_NRM_BARX // Infinity norm of barx in the interior-point solution. + DINF_SOL_ITR_NRM_SLC DInfItem = C.MSK_DINF_SOL_ITR_NRM_SLC // Infinity norm of slc in the interior-point solution. + DINF_SOL_ITR_NRM_SLX DInfItem = C.MSK_DINF_SOL_ITR_NRM_SLX // Infinity norm of slx in the interior-point solution. + DINF_SOL_ITR_NRM_SNX DInfItem = C.MSK_DINF_SOL_ITR_NRM_SNX // Infinity norm of snx in the interior-point solution. + DINF_SOL_ITR_NRM_SUC DInfItem = C.MSK_DINF_SOL_ITR_NRM_SUC // Infinity norm of suc in the interior-point solution. + DINF_SOL_ITR_NRM_SUX DInfItem = C.MSK_DINF_SOL_ITR_NRM_SUX // Infinity norm of sux in the interior-point solution. + DINF_SOL_ITR_NRM_XC DInfItem = C.MSK_DINF_SOL_ITR_NRM_XC // Infinity norm of xc in the interior-point solution. + DINF_SOL_ITR_NRM_XX DInfItem = C.MSK_DINF_SOL_ITR_NRM_XX // Infinity norm of xx in the interior-point solution. + DINF_SOL_ITR_NRM_Y DInfItem = C.MSK_DINF_SOL_ITR_NRM_Y // Infinity norm of Y in the interior-point solution. + DINF_SOL_ITR_PRIMAL_OBJ DInfItem = C.MSK_DINF_SOL_ITR_PRIMAL_OBJ // Primal objective value of the interior-point solution. + DINF_SOL_ITR_PVIOLACC DInfItem = C.MSK_DINF_SOL_ITR_PVIOLACC // Maximal primal violation for affine conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_PVIOLBARVAR DInfItem = C.MSK_DINF_SOL_ITR_PVIOLBARVAR // Maximal primal bound violation for barx in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_PVIOLCON DInfItem = C.MSK_DINF_SOL_ITR_PVIOLCON // Maximal primal bound violation for xc in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_PVIOLCONES DInfItem = C.MSK_DINF_SOL_ITR_PVIOLCONES // Maximal primal violation for conic constraints in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_SOL_ITR_PVIOLVAR DInfItem = C.MSK_DINF_SOL_ITR_PVIOLVAR // Maximal primal bound violation for xx in the interior-point solution. Updated by the function updatesolutioninfo. + DINF_TO_CONIC_TIME DInfItem = C.MSK_DINF_TO_CONIC_TIME // Time spent in the last to conic reformulation. + DINF_WRITE_DATA_TIME DInfItem = C.MSK_DINF_WRITE_DATA_TIME // Time spent writing the data file. ) var _DInfItem_map = map[DInfItem]string{ diff --git a/domaintype_enum.go b/domaintype_enum.go index 5e40e5a..585cbb1 100644 --- a/domaintype_enum.go +++ b/domaintype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // DomainType is MSKdomaintype_enum. @@ -11,19 +14,19 @@ import "strconv" type DomainType uint32 const ( - DOMAIN_R DomainType = 0 // R. - DOMAIN_RZERO DomainType = 1 // The zero vector. - DOMAIN_RPLUS DomainType = 2 // The positive orthant. - DOMAIN_RMINUS DomainType = 3 // The negative orthant. - DOMAIN_QUADRATIC_CONE DomainType = 4 // The quadratic cone. - DOMAIN_RQUADRATIC_CONE DomainType = 5 // The rotated quadratic cone. - DOMAIN_PRIMAL_EXP_CONE DomainType = 6 // The primal exponential cone. - DOMAIN_DUAL_EXP_CONE DomainType = 7 // The dual exponential cone. - DOMAIN_PRIMAL_POWER_CONE DomainType = 8 // The primal power cone. - DOMAIN_DUAL_POWER_CONE DomainType = 9 // The dual power cone. - DOMAIN_PRIMAL_GEO_MEAN_CONE DomainType = 10 // The primal geometric mean cone. - DOMAIN_DUAL_GEO_MEAN_CONE DomainType = 11 // The dual geometric mean cone. - DOMAIN_SVEC_PSD_CONE DomainType = 12 // The vectorized positive semidefinite cone. + DOMAIN_R DomainType = C.MSK_DOMAIN_R // R. + DOMAIN_RZERO DomainType = C.MSK_DOMAIN_RZERO // The zero vector. + DOMAIN_RPLUS DomainType = C.MSK_DOMAIN_RPLUS // The positive orthant. + DOMAIN_RMINUS DomainType = C.MSK_DOMAIN_RMINUS // The negative orthant. + DOMAIN_QUADRATIC_CONE DomainType = C.MSK_DOMAIN_QUADRATIC_CONE // The quadratic cone. + DOMAIN_RQUADRATIC_CONE DomainType = C.MSK_DOMAIN_RQUADRATIC_CONE // The rotated quadratic cone. + DOMAIN_PRIMAL_EXP_CONE DomainType = C.MSK_DOMAIN_PRIMAL_EXP_CONE // The primal exponential cone. + DOMAIN_DUAL_EXP_CONE DomainType = C.MSK_DOMAIN_DUAL_EXP_CONE // The dual exponential cone. + DOMAIN_PRIMAL_POWER_CONE DomainType = C.MSK_DOMAIN_PRIMAL_POWER_CONE // The primal power cone. + DOMAIN_DUAL_POWER_CONE DomainType = C.MSK_DOMAIN_DUAL_POWER_CONE // The dual power cone. + DOMAIN_PRIMAL_GEO_MEAN_CONE DomainType = C.MSK_DOMAIN_PRIMAL_GEO_MEAN_CONE // The primal geometric mean cone. + DOMAIN_DUAL_GEO_MEAN_CONE DomainType = C.MSK_DOMAIN_DUAL_GEO_MEAN_CONE // The dual geometric mean cone. + DOMAIN_SVEC_PSD_CONE DomainType = C.MSK_DOMAIN_SVEC_PSD_CONE // The vectorized positive semidefinite cone. ) var _DomainType_map = map[DomainType]string{ diff --git a/dparam_enum.go b/dparam_enum.go index 4687f4a..e01c90f 100644 --- a/dparam_enum.go +++ b/dparam_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // DParam is MSKdparam_enum. @@ -11,68 +14,68 @@ import "strconv" type DParam uint32 const ( - DPAR_ANA_SOL_INFEAS_TOL DParam = 0 // If a constraint violates its bound with an amount larger than this value, the constraint name, index and violation will be printed by the solution analyzer. - DPAR_BASIS_REL_TOL_S DParam = 1 // Maximum relative dual bound violation allowed in an optimal basic solution. - DPAR_BASIS_TOL_S DParam = 2 // Maximum absolute dual bound violation in an optimal basic solution. - DPAR_BASIS_TOL_X DParam = 3 // Maximum absolute primal bound violation allowed in an optimal basic solution. - DPAR_CHECK_CONVEXITY_REL_TOL DParam = 4 // Convexity check tolerance. - DPAR_DATA_SYM_MAT_TOL DParam = 5 // Zero tolerance threshold for symmetric matrices. - DPAR_DATA_SYM_MAT_TOL_HUGE DParam = 6 // Data tolerance threshold. - DPAR_DATA_SYM_MAT_TOL_LARGE DParam = 7 // Data tolerance threshold. - DPAR_DATA_TOL_AIJ_HUGE DParam = 8 // Data tolerance threshold. - DPAR_DATA_TOL_AIJ_LARGE DParam = 9 // Data tolerance threshold. - DPAR_DATA_TOL_BOUND_INF DParam = 10 // Data tolerance threshold. - DPAR_DATA_TOL_BOUND_WRN DParam = 11 // Data tolerance threshold. - DPAR_DATA_TOL_C_HUGE DParam = 12 // Data tolerance threshold. - DPAR_DATA_TOL_CJ_LARGE DParam = 13 // Data tolerance threshold. - DPAR_DATA_TOL_QIJ DParam = 14 // Data tolerance threshold. - DPAR_DATA_TOL_X DParam = 15 // Data tolerance threshold. - DPAR_INTPNT_CO_TOL_DFEAS DParam = 16 // Dual feasibility tolerance used by the interior-point optimizer for conic problems. - DPAR_INTPNT_CO_TOL_INFEAS DParam = 17 // Infeasibility tolerance used by the interior-point optimizer for conic problems. - DPAR_INTPNT_CO_TOL_MU_RED DParam = 18 // Relative complementarity gap tolerance used by the interior-point optimizer for conic problems. - DPAR_INTPNT_CO_TOL_NEAR_REL DParam = 19 // Optimality tolerance used by the interior-point optimizer for conic problems. - DPAR_INTPNT_CO_TOL_PFEAS DParam = 20 // Primal feasibility tolerance used by the interior-point optimizer for conic problems. - DPAR_INTPNT_CO_TOL_REL_GAP DParam = 21 // Relative gap termination tolerance used by the interior-point optimizer for conic problems. - DPAR_INTPNT_QO_TOL_DFEAS DParam = 22 // Dual feasibility tolerance used by the interior-point optimizer for quadratic problems. - DPAR_INTPNT_QO_TOL_INFEAS DParam = 23 // Infeasibility tolerance used by the interior-point optimizer for quadratic problems. - DPAR_INTPNT_QO_TOL_MU_RED DParam = 24 // Relative complementarity gap tolerance used by the interior-point optimizer for quadratic problems. - DPAR_INTPNT_QO_TOL_NEAR_REL DParam = 25 // Optimality tolerance used by the interior-point optimizer for quadratic problems. - DPAR_INTPNT_QO_TOL_PFEAS DParam = 26 // Primal feasibility tolerance used by the interior-point optimizer for quadratic problems. - DPAR_INTPNT_QO_TOL_REL_GAP DParam = 27 // Relative gap termination tolerance used by the interior-point optimizer for quadratic problems. - DPAR_INTPNT_TOL_DFEAS DParam = 28 // Dual feasibility tolerance used by the interior-point optimizer for linear problems. - DPAR_INTPNT_TOL_DSAFE DParam = 29 // Controls the interior-point dual starting point. - DPAR_INTPNT_TOL_INFEAS DParam = 30 // Infeasibility tolerance used by the interior-point optimizer for linear problems. - DPAR_INTPNT_TOL_MU_RED DParam = 31 // Relative complementarity gap tolerance used by the interior-point optimizer for linear problems. - DPAR_INTPNT_TOL_PATH DParam = 32 // Interior-point centering aggressiveness. - DPAR_INTPNT_TOL_PFEAS DParam = 33 // Primal feasibility tolerance used by the interior-point optimizer for linear problems. - DPAR_INTPNT_TOL_PSAFE DParam = 34 // Controls the interior-point primal starting point. - DPAR_INTPNT_TOL_REL_GAP DParam = 35 // Relative gap termination tolerance used by the interior-point optimizer for linear problems. - DPAR_INTPNT_TOL_REL_STEP DParam = 36 // Relative step size to the boundary for linear and quadratic optimization problems. - DPAR_INTPNT_TOL_STEP_SIZE DParam = 37 // Minimal step size tolerance for the interior-point optimizer. - DPAR_LOWER_OBJ_CUT DParam = 38 // Objective bound. - DPAR_LOWER_OBJ_CUT_FINITE_TRH DParam = 39 // Objective bound. - DPAR_MIO_DJC_MAX_BIGM DParam = 40 // Maximum allowed big-M value when reformulating disjunctive constraints to linear constraints. - DPAR_MIO_MAX_TIME DParam = 41 // Time limit for the mixed-integer optimizer. - DPAR_MIO_REL_GAP_CONST DParam = 42 // This value is used to compute the relative gap for the solution to an integer optimization problem. - DPAR_MIO_TOL_ABS_GAP DParam = 43 // Absolute optimality tolerance employed by the mixed-integer optimizer. - DPAR_MIO_TOL_ABS_RELAX_INT DParam = 44 // Integer feasibility tolerance. - DPAR_MIO_TOL_FEAS DParam = 45 // Feasibility tolerance for mixed integer solver. - DPAR_MIO_TOL_REL_DUAL_BOUND_IMPROVEMENT DParam = 46 // Controls cut generation for mixed-integer optimizer. - DPAR_MIO_TOL_REL_GAP DParam = 47 // Relative optimality tolerance employed by the mixed-integer optimizer. - DPAR_OPTIMIZER_MAX_TICKS DParam = 48 // Solver ticks limit. - DPAR_OPTIMIZER_MAX_TIME DParam = 49 // Solver time limit. - DPAR_PRESOLVE_TOL_ABS_LINDEP DParam = 50 // Absolute tolerance employed by the linear dependency checker. - DPAR_PRESOLVE_TOL_AIJ DParam = 51 // Absolute zero tolerance employed for constraint coefficients in the presolve. - DPAR_PRESOLVE_TOL_PRIMAL_INFEAS_PERTURBATION DParam = 52 // The presolve is allowed to perturb a bound on a constraint or variable by this amount if it removes an infeasibility. - DPAR_PRESOLVE_TOL_REL_LINDEP DParam = 53 // Relative tolerance employed by the linear dependency checker. - DPAR_PRESOLVE_TOL_S DParam = 54 // Absolute zero tolerance employed for slack variables in the presolve. - DPAR_PRESOLVE_TOL_X DParam = 55 // Absolute zero tolerance employed for variables in the presolve. - DPAR_QCQO_REFORMULATE_REL_DROP_TOL DParam = 56 // This parameter determines when columns are dropped in incomplete Cholesky factorization during reformulation of quadratic problems. - DPAR_SEMIDEFINITE_TOL_APPROX DParam = 57 // Tolerance to define a matrix to be positive semidefinite. - DPAR_SIM_LU_TOL_REL_PIV DParam = 58 // Relative pivot tolerance employed when computing the LU factorization of the basis matrix. - DPAR_SIMPLEX_ABS_TOL_PIV DParam = 59 // Absolute pivot tolerance employed by the simplex optimizers. - DPAR_UPPER_OBJ_CUT DParam = 60 // Objective bound. - DPAR_UPPER_OBJ_CUT_FINITE_TRH DParam = 61 // Objective bound. + DPAR_ANA_SOL_INFEAS_TOL DParam = C.MSK_DPAR_ANA_SOL_INFEAS_TOL // If a constraint violates its bound with an amount larger than this value, the constraint name, index and violation will be printed by the solution analyzer. + DPAR_BASIS_REL_TOL_S DParam = C.MSK_DPAR_BASIS_REL_TOL_S // Maximum relative dual bound violation allowed in an optimal basic solution. + DPAR_BASIS_TOL_S DParam = C.MSK_DPAR_BASIS_TOL_S // Maximum absolute dual bound violation in an optimal basic solution. + DPAR_BASIS_TOL_X DParam = C.MSK_DPAR_BASIS_TOL_X // Maximum absolute primal bound violation allowed in an optimal basic solution. + DPAR_CHECK_CONVEXITY_REL_TOL DParam = C.MSK_DPAR_CHECK_CONVEXITY_REL_TOL // Convexity check tolerance. + DPAR_DATA_SYM_MAT_TOL DParam = C.MSK_DPAR_DATA_SYM_MAT_TOL // Zero tolerance threshold for symmetric matrices. + DPAR_DATA_SYM_MAT_TOL_HUGE DParam = C.MSK_DPAR_DATA_SYM_MAT_TOL_HUGE // Data tolerance threshold. + DPAR_DATA_SYM_MAT_TOL_LARGE DParam = C.MSK_DPAR_DATA_SYM_MAT_TOL_LARGE // Data tolerance threshold. + DPAR_DATA_TOL_AIJ_HUGE DParam = C.MSK_DPAR_DATA_TOL_AIJ_HUGE // Data tolerance threshold. + DPAR_DATA_TOL_AIJ_LARGE DParam = C.MSK_DPAR_DATA_TOL_AIJ_LARGE // Data tolerance threshold. + DPAR_DATA_TOL_BOUND_INF DParam = C.MSK_DPAR_DATA_TOL_BOUND_INF // Data tolerance threshold. + DPAR_DATA_TOL_BOUND_WRN DParam = C.MSK_DPAR_DATA_TOL_BOUND_WRN // Data tolerance threshold. + DPAR_DATA_TOL_C_HUGE DParam = C.MSK_DPAR_DATA_TOL_C_HUGE // Data tolerance threshold. + DPAR_DATA_TOL_CJ_LARGE DParam = C.MSK_DPAR_DATA_TOL_CJ_LARGE // Data tolerance threshold. + DPAR_DATA_TOL_QIJ DParam = C.MSK_DPAR_DATA_TOL_QIJ // Data tolerance threshold. + DPAR_DATA_TOL_X DParam = C.MSK_DPAR_DATA_TOL_X // Data tolerance threshold. + DPAR_INTPNT_CO_TOL_DFEAS DParam = C.MSK_DPAR_INTPNT_CO_TOL_DFEAS // Dual feasibility tolerance used by the interior-point optimizer for conic problems. + DPAR_INTPNT_CO_TOL_INFEAS DParam = C.MSK_DPAR_INTPNT_CO_TOL_INFEAS // Infeasibility tolerance used by the interior-point optimizer for conic problems. + DPAR_INTPNT_CO_TOL_MU_RED DParam = C.MSK_DPAR_INTPNT_CO_TOL_MU_RED // Relative complementarity gap tolerance used by the interior-point optimizer for conic problems. + DPAR_INTPNT_CO_TOL_NEAR_REL DParam = C.MSK_DPAR_INTPNT_CO_TOL_NEAR_REL // Optimality tolerance used by the interior-point optimizer for conic problems. + DPAR_INTPNT_CO_TOL_PFEAS DParam = C.MSK_DPAR_INTPNT_CO_TOL_PFEAS // Primal feasibility tolerance used by the interior-point optimizer for conic problems. + DPAR_INTPNT_CO_TOL_REL_GAP DParam = C.MSK_DPAR_INTPNT_CO_TOL_REL_GAP // Relative gap termination tolerance used by the interior-point optimizer for conic problems. + DPAR_INTPNT_QO_TOL_DFEAS DParam = C.MSK_DPAR_INTPNT_QO_TOL_DFEAS // Dual feasibility tolerance used by the interior-point optimizer for quadratic problems. + DPAR_INTPNT_QO_TOL_INFEAS DParam = C.MSK_DPAR_INTPNT_QO_TOL_INFEAS // Infeasibility tolerance used by the interior-point optimizer for quadratic problems. + DPAR_INTPNT_QO_TOL_MU_RED DParam = C.MSK_DPAR_INTPNT_QO_TOL_MU_RED // Relative complementarity gap tolerance used by the interior-point optimizer for quadratic problems. + DPAR_INTPNT_QO_TOL_NEAR_REL DParam = C.MSK_DPAR_INTPNT_QO_TOL_NEAR_REL // Optimality tolerance used by the interior-point optimizer for quadratic problems. + DPAR_INTPNT_QO_TOL_PFEAS DParam = C.MSK_DPAR_INTPNT_QO_TOL_PFEAS // Primal feasibility tolerance used by the interior-point optimizer for quadratic problems. + DPAR_INTPNT_QO_TOL_REL_GAP DParam = C.MSK_DPAR_INTPNT_QO_TOL_REL_GAP // Relative gap termination tolerance used by the interior-point optimizer for quadratic problems. + DPAR_INTPNT_TOL_DFEAS DParam = C.MSK_DPAR_INTPNT_TOL_DFEAS // Dual feasibility tolerance used by the interior-point optimizer for linear problems. + DPAR_INTPNT_TOL_DSAFE DParam = C.MSK_DPAR_INTPNT_TOL_DSAFE // Controls the interior-point dual starting point. + DPAR_INTPNT_TOL_INFEAS DParam = C.MSK_DPAR_INTPNT_TOL_INFEAS // Infeasibility tolerance used by the interior-point optimizer for linear problems. + DPAR_INTPNT_TOL_MU_RED DParam = C.MSK_DPAR_INTPNT_TOL_MU_RED // Relative complementarity gap tolerance used by the interior-point optimizer for linear problems. + DPAR_INTPNT_TOL_PATH DParam = C.MSK_DPAR_INTPNT_TOL_PATH // Interior-point centering aggressiveness. + DPAR_INTPNT_TOL_PFEAS DParam = C.MSK_DPAR_INTPNT_TOL_PFEAS // Primal feasibility tolerance used by the interior-point optimizer for linear problems. + DPAR_INTPNT_TOL_PSAFE DParam = C.MSK_DPAR_INTPNT_TOL_PSAFE // Controls the interior-point primal starting point. + DPAR_INTPNT_TOL_REL_GAP DParam = C.MSK_DPAR_INTPNT_TOL_REL_GAP // Relative gap termination tolerance used by the interior-point optimizer for linear problems. + DPAR_INTPNT_TOL_REL_STEP DParam = C.MSK_DPAR_INTPNT_TOL_REL_STEP // Relative step size to the boundary for linear and quadratic optimization problems. + DPAR_INTPNT_TOL_STEP_SIZE DParam = C.MSK_DPAR_INTPNT_TOL_STEP_SIZE // Minimal step size tolerance for the interior-point optimizer. + DPAR_LOWER_OBJ_CUT DParam = C.MSK_DPAR_LOWER_OBJ_CUT // Objective bound. + DPAR_LOWER_OBJ_CUT_FINITE_TRH DParam = C.MSK_DPAR_LOWER_OBJ_CUT_FINITE_TRH // Objective bound. + DPAR_MIO_DJC_MAX_BIGM DParam = C.MSK_DPAR_MIO_DJC_MAX_BIGM // Maximum allowed big-M value when reformulating disjunctive constraints to linear constraints. + DPAR_MIO_MAX_TIME DParam = C.MSK_DPAR_MIO_MAX_TIME // Time limit for the mixed-integer optimizer. + DPAR_MIO_REL_GAP_CONST DParam = C.MSK_DPAR_MIO_REL_GAP_CONST // This value is used to compute the relative gap for the solution to an integer optimization problem. + DPAR_MIO_TOL_ABS_GAP DParam = C.MSK_DPAR_MIO_TOL_ABS_GAP // Absolute optimality tolerance employed by the mixed-integer optimizer. + DPAR_MIO_TOL_ABS_RELAX_INT DParam = C.MSK_DPAR_MIO_TOL_ABS_RELAX_INT // Integer feasibility tolerance. + DPAR_MIO_TOL_FEAS DParam = C.MSK_DPAR_MIO_TOL_FEAS // Feasibility tolerance for mixed integer solver. + DPAR_MIO_TOL_REL_DUAL_BOUND_IMPROVEMENT DParam = C.MSK_DPAR_MIO_TOL_REL_DUAL_BOUND_IMPROVEMENT // Controls cut generation for mixed-integer optimizer. + DPAR_MIO_TOL_REL_GAP DParam = C.MSK_DPAR_MIO_TOL_REL_GAP // Relative optimality tolerance employed by the mixed-integer optimizer. + DPAR_OPTIMIZER_MAX_TICKS DParam = C.MSK_DPAR_OPTIMIZER_MAX_TICKS // Solver ticks limit. + DPAR_OPTIMIZER_MAX_TIME DParam = C.MSK_DPAR_OPTIMIZER_MAX_TIME // Solver time limit. + DPAR_PRESOLVE_TOL_ABS_LINDEP DParam = C.MSK_DPAR_PRESOLVE_TOL_ABS_LINDEP // Absolute tolerance employed by the linear dependency checker. + DPAR_PRESOLVE_TOL_AIJ DParam = C.MSK_DPAR_PRESOLVE_TOL_AIJ // Absolute zero tolerance employed for constraint coefficients in the presolve. + DPAR_PRESOLVE_TOL_PRIMAL_INFEAS_PERTURBATION DParam = C.MSK_DPAR_PRESOLVE_TOL_PRIMAL_INFEAS_PERTURBATION // The presolve is allowed to perturb a bound on a constraint or variable by this amount if it removes an infeasibility. + DPAR_PRESOLVE_TOL_REL_LINDEP DParam = C.MSK_DPAR_PRESOLVE_TOL_REL_LINDEP // Relative tolerance employed by the linear dependency checker. + DPAR_PRESOLVE_TOL_S DParam = C.MSK_DPAR_PRESOLVE_TOL_S // Absolute zero tolerance employed for slack variables in the presolve. + DPAR_PRESOLVE_TOL_X DParam = C.MSK_DPAR_PRESOLVE_TOL_X // Absolute zero tolerance employed for variables in the presolve. + DPAR_QCQO_REFORMULATE_REL_DROP_TOL DParam = C.MSK_DPAR_QCQO_REFORMULATE_REL_DROP_TOL // This parameter determines when columns are dropped in incomplete Cholesky factorization during reformulation of quadratic problems. + DPAR_SEMIDEFINITE_TOL_APPROX DParam = C.MSK_DPAR_SEMIDEFINITE_TOL_APPROX // Tolerance to define a matrix to be positive semidefinite. + DPAR_SIM_LU_TOL_REL_PIV DParam = C.MSK_DPAR_SIM_LU_TOL_REL_PIV // Relative pivot tolerance employed when computing the LU factorization of the basis matrix. + DPAR_SIMPLEX_ABS_TOL_PIV DParam = C.MSK_DPAR_SIMPLEX_ABS_TOL_PIV // Absolute pivot tolerance employed by the simplex optimizers. + DPAR_UPPER_OBJ_CUT DParam = C.MSK_DPAR_UPPER_OBJ_CUT // Objective bound. + DPAR_UPPER_OBJ_CUT_FINITE_TRH DParam = C.MSK_DPAR_UPPER_OBJ_CUT_FINITE_TRH // Objective bound. ) var _DParam_map = map[DParam]string{ diff --git a/feature_enum.go b/feature_enum.go index 3884173..9063d5c 100644 --- a/feature_enum.go +++ b/feature_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Feature is MSKfeature_enum. @@ -11,8 +14,8 @@ import "strconv" type Feature uint32 const ( - FEATURE_PTS Feature = 0 // Base system. - FEATURE_PTON Feature = 1 // Conic extension. + FEATURE_PTS Feature = C.MSK_FEATURE_PTS // Base system. + FEATURE_PTON Feature = C.MSK_FEATURE_PTON // Conic extension. ) var _Feature_map = map[Feature]string{ diff --git a/iinfitem_enum.go b/iinfitem_enum.go index 448ff75..e426995 100644 --- a/iinfitem_enum.go +++ b/iinfitem_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // IInfItem is MSKiinfitem_enum. @@ -11,123 +14,123 @@ import "strconv" type IInfItem uint32 const ( - IINF_ANA_PRO_NUM_CON IInfItem = 0 // Number of constraints in the problem. - IINF_ANA_PRO_NUM_CON_EQ IInfItem = 1 // Number of equality constraints. - IINF_ANA_PRO_NUM_CON_FR IInfItem = 2 // Number of unbounded constraints. - IINF_ANA_PRO_NUM_CON_LO IInfItem = 3 // Number of constraints with a lower bound and an infinite upper bound. - IINF_ANA_PRO_NUM_CON_RA IInfItem = 4 // Number of constraints with finite lower and upper bounds. - IINF_ANA_PRO_NUM_CON_UP IInfItem = 5 // Number of constraints with an upper bound and an infinite lower bound. - IINF_ANA_PRO_NUM_VAR IInfItem = 6 // Number of variables in the problem. - IINF_ANA_PRO_NUM_VAR_BIN IInfItem = 7 // Number of binary variables. - IINF_ANA_PRO_NUM_VAR_CONT IInfItem = 8 // Number of continuous variables. - IINF_ANA_PRO_NUM_VAR_EQ IInfItem = 9 // Number of fixed variables. - IINF_ANA_PRO_NUM_VAR_FR IInfItem = 10 // Number of unbounded constraints. - IINF_ANA_PRO_NUM_VAR_INT IInfItem = 11 // Number of general integer variables. - IINF_ANA_PRO_NUM_VAR_LO IInfItem = 12 // Number of variables with a lower bound and an infinite upper bound. - IINF_ANA_PRO_NUM_VAR_RA IInfItem = 13 // Number of variables with finite lower and upper bounds. - IINF_ANA_PRO_NUM_VAR_UP IInfItem = 14 // Number of variables with an upper bound and an infinite lower bound. - IINF_INTPNT_FACTOR_DIM_DENSE IInfItem = 15 // Dimension of the dense sub system in factorization. - IINF_INTPNT_ITER IInfItem = 16 // Number of interior-point iterations since invoking the interior-point optimizer. - IINF_INTPNT_NUM_THREADS IInfItem = 17 // Number of threads that the interior-point optimizer is using. - IINF_INTPNT_SOLVE_DUAL IInfItem = 18 // Non-zero if the interior-point optimizer is solving the dual problem. - IINF_MIO_ABSGAP_SATISFIED IInfItem = 19 // Non-zero if absolute gap is within tolerances. - IINF_MIO_CLIQUE_TABLE_SIZE IInfItem = 20 // Size of the clique table. - IINF_MIO_CONSTRUCT_SOLUTION IInfItem = 21 // Informs if MOSEK successfully constructed an initial integer feasible solution. - IINF_MIO_INITIAL_FEASIBLE_SOLUTION IInfItem = 22 // Informs if MOSEK found the solution provided by the user to be feasible - IINF_MIO_NODE_DEPTH IInfItem = 23 // Depth of the last node solved. - IINF_MIO_NUM_ACTIVE_NODES IInfItem = 24 // Number of active branch and bound nodes. - IINF_MIO_NUM_ACTIVE_ROOT_CUTS IInfItem = 25 // Number of active cuts in the final relaxation after the mixed-integer optimizer's root cut generation. - IINF_MIO_NUM_BRANCH IInfItem = 26 // Number of branches performed during the optimization. - IINF_MIO_NUM_INT_SOLUTIONS IInfItem = 27 // Number of integer feasible solutions that have been found. - IINF_MIO_NUM_RELAX IInfItem = 28 // Number of relaxations solved during the optimization. - IINF_MIO_NUM_REPEATED_PRESOLVE IInfItem = 29 // Number of times presolve was repeated at root. - IINF_MIO_NUM_RESTARTS IInfItem = 30 // Number of restarts performed during the optimization. - IINF_MIO_NUM_ROOT_CUT_ROUNDS IInfItem = 31 // Number of cut separation rounds at the root node of the mixed-integer optimizer. - IINF_MIO_NUM_SELECTED_CLIQUE_CUTS IInfItem = 32 // Number of clique cuts selected to be included in the relaxation. - IINF_MIO_NUM_SELECTED_CMIR_CUTS IInfItem = 33 // Number of Complemented Mixed Integer Rounding (CMIR) cuts selected to be included in the relaxation. - IINF_MIO_NUM_SELECTED_GOMORY_CUTS IInfItem = 34 // Number of Gomory cuts selected to be included in the relaxation. - IINF_MIO_NUM_SELECTED_IMPLIED_BOUND_CUTS IInfItem = 35 // Number of implied bound cuts selected to be included in the relaxation. - IINF_MIO_NUM_SELECTED_KNAPSACK_COVER_CUTS IInfItem = 36 // Number of clique cuts selected to be included in the relaxation. - IINF_MIO_NUM_SELECTED_LIPRO_CUTS IInfItem = 37 // Number of lift-and-project cuts selected to be included in the relaxation. - IINF_MIO_NUM_SEPARATED_CLIQUE_CUTS IInfItem = 38 // Number of separated clique cuts. - IINF_MIO_NUM_SEPARATED_CMIR_CUTS IInfItem = 39 // Number of separated Complemented Mixed Integer Rounding (CMIR) cuts. - IINF_MIO_NUM_SEPARATED_GOMORY_CUTS IInfItem = 40 // Number of separated Gomory cuts. - IINF_MIO_NUM_SEPARATED_IMPLIED_BOUND_CUTS IInfItem = 41 // Number of separated implied bound cuts. - IINF_MIO_NUM_SEPARATED_KNAPSACK_COVER_CUTS IInfItem = 42 // Number of separated clique cuts. - IINF_MIO_NUM_SEPARATED_LIPRO_CUTS IInfItem = 43 // Number of separated lift-and-project cuts. - IINF_MIO_NUM_SOLVED_NODES IInfItem = 44 // Number of branch and bounds nodes solved in the main branch and bound tree. - IINF_MIO_NUMBIN IInfItem = 45 // Number of binary variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMBINCONEVAR IInfItem = 46 // Number of binary cone variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMCON IInfItem = 47 // Number of constraints in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMCONE IInfItem = 48 // Number of cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMCONEVAR IInfItem = 49 // Number of cone variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMCONT IInfItem = 50 // Number of continuous variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMCONTCONEVAR IInfItem = 51 // Number of continuous cone variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMDEXPCONES IInfItem = 52 // Number of dual exponential cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMDJC IInfItem = 53 // Number of disjunctive constraints in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMDPOWCONES IInfItem = 54 // Number of dual power cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMINT IInfItem = 55 // Number of integer variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMINTCONEVAR IInfItem = 56 // Number of integer cone variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMPEXPCONES IInfItem = 57 // Number of primal exponential cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMPPOWCONES IInfItem = 58 // Number of primal power cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMQCONES IInfItem = 59 // Number of quadratic cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMRQCONES IInfItem = 60 // Number of rotated quadratic cones in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_NUMVAR IInfItem = 61 // Number of variables in the problem to be solved by the mixed-integer optimizer. - IINF_MIO_OBJ_BOUND_DEFINED IInfItem = 62 // Non-zero if a valid objective bound has been found, otherwise zero. - IINF_MIO_PRESOLVED_NUMBIN IInfItem = 63 // Number of binary variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMBINCONEVAR IInfItem = 64 // Number of binary cone variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMCON IInfItem = 65 // Number of constraints in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMCONE IInfItem = 66 // Number of cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMCONEVAR IInfItem = 67 // Number of cone variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMCONT IInfItem = 68 // Number of continuous variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMCONTCONEVAR IInfItem = 69 // Number of continuous cone variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMDEXPCONES IInfItem = 70 // Number of dual exponential cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMDJC IInfItem = 71 // Number of disjunctive constraints in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMDPOWCONES IInfItem = 72 // Number of dual power cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMINT IInfItem = 73 // Number of integer variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMINTCONEVAR IInfItem = 74 // Number of integer cone variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMPEXPCONES IInfItem = 75 // Number of primal exponential cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMPPOWCONES IInfItem = 76 // Number of primal power cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMQCONES IInfItem = 77 // Number of quadratic cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMRQCONES IInfItem = 78 // Number of rotated quadratic cones in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_PRESOLVED_NUMVAR IInfItem = 79 // Number of variables in the problem after the mixed-integer optimizer's presolve. - IINF_MIO_RELGAP_SATISFIED IInfItem = 80 // Non-zero if relative gap is within tolerances. - IINF_MIO_TOTAL_NUM_SELECTED_CUTS IInfItem = 81 // Total number of cuts selected to be included in the relaxation by the mixed-integer optimizer. - IINF_MIO_TOTAL_NUM_SEPARATED_CUTS IInfItem = 82 // Total number of cuts separated by the mixed-integer optimizer. - IINF_MIO_USER_OBJ_CUT IInfItem = 83 // If it is non-zero, then the objective cut is used. - IINF_OPT_NUMCON IInfItem = 84 // Number of constraints in the problem solved when the optimizer is called. - IINF_OPT_NUMVAR IInfItem = 85 // Number of variables in the problem solved when the optimizer is called - IINF_OPTIMIZE_RESPONSE IInfItem = 86 // The response code returned by optimize. - IINF_PRESOLVE_NUM_PRIMAL_PERTURBATIONS IInfItem = 87 // Number perturbations to thhe bounds of the primal problem. - IINF_PURIFY_DUAL_SUCCESS IInfItem = 88 // Is nonzero if the dual solution is purified. - IINF_PURIFY_PRIMAL_SUCCESS IInfItem = 89 // Is nonzero if the primal solution is purified. - IINF_RD_NUMBARVAR IInfItem = 90 // Number of symmetric variables read. - IINF_RD_NUMCON IInfItem = 91 // Number of constraints read. - IINF_RD_NUMCONE IInfItem = 92 // Number of conic constraints read. - IINF_RD_NUMINTVAR IInfItem = 93 // Number of integer-constrained variables read. - IINF_RD_NUMQ IInfItem = 94 // Number of nonempty Q matrices read. - IINF_RD_NUMVAR IInfItem = 95 // Number of variables read. - IINF_RD_PROTYPE IInfItem = 96 // Problem type. - IINF_SIM_DUAL_DEG_ITER IInfItem = 97 // The number of dual degenerate iterations. - IINF_SIM_DUAL_HOTSTART IInfItem = 98 // If 1 then the dual simplex algorithm is solving from an advanced basis. - IINF_SIM_DUAL_HOTSTART_LU IInfItem = 99 // If 1 then a valid basis factorization of full rank was located and used by the dual simplex algorithm. - IINF_SIM_DUAL_INF_ITER IInfItem = 100 // The number of iterations taken with dual infeasibility. - IINF_SIM_DUAL_ITER IInfItem = 101 // Number of dual simplex iterations during the last optimization. - IINF_SIM_NUMCON IInfItem = 102 // Number of constraints in the problem solved by the simplex optimizer. - IINF_SIM_NUMVAR IInfItem = 103 // Number of variables in the problem solved by the simplex optimizer. - IINF_SIM_PRIMAL_DEG_ITER IInfItem = 104 // The number of primal degenerate iterations. - IINF_SIM_PRIMAL_HOTSTART IInfItem = 105 // If 1 then the primal simplex algorithm is solving from an advanced basis. - IINF_SIM_PRIMAL_HOTSTART_LU IInfItem = 106 // If 1 then a valid basis factorization of full rank was located and used by the primal simplex algorithm. - IINF_SIM_PRIMAL_INF_ITER IInfItem = 107 // The number of iterations taken with primal infeasibility. - IINF_SIM_PRIMAL_ITER IInfItem = 108 // Number of primal simplex iterations during the last optimization. - IINF_SIM_SOLVE_DUAL IInfItem = 109 // Is non-zero if dual problem is solved. - IINF_SOL_BAS_PROSTA IInfItem = 110 // Problem status of the basic solution. Updated after each optimization. - IINF_SOL_BAS_SOLSTA IInfItem = 111 // Solution status of the basic solution. Updated after each optimization. - IINF_SOL_ITG_PROSTA IInfItem = 112 // Problem status of the integer solution. Updated after each optimization. - IINF_SOL_ITG_SOLSTA IInfItem = 113 // Solution status of the integer solution. Updated after each optimization. - IINF_SOL_ITR_PROSTA IInfItem = 114 // Problem status of the interior-point solution. Updated after each optimization. - IINF_SOL_ITR_SOLSTA IInfItem = 115 // Solution status of the interior-point solution. Updated after each optimization. - IINF_STO_NUM_A_REALLOC IInfItem = 116 // Number of times the storage for storing the linear coefficient matrix has been changed. + IINF_ANA_PRO_NUM_CON IInfItem = C.MSK_IINF_ANA_PRO_NUM_CON // Number of constraints in the problem. + IINF_ANA_PRO_NUM_CON_EQ IInfItem = C.MSK_IINF_ANA_PRO_NUM_CON_EQ // Number of equality constraints. + IINF_ANA_PRO_NUM_CON_FR IInfItem = C.MSK_IINF_ANA_PRO_NUM_CON_FR // Number of unbounded constraints. + IINF_ANA_PRO_NUM_CON_LO IInfItem = C.MSK_IINF_ANA_PRO_NUM_CON_LO // Number of constraints with a lower bound and an infinite upper bound. + IINF_ANA_PRO_NUM_CON_RA IInfItem = C.MSK_IINF_ANA_PRO_NUM_CON_RA // Number of constraints with finite lower and upper bounds. + IINF_ANA_PRO_NUM_CON_UP IInfItem = C.MSK_IINF_ANA_PRO_NUM_CON_UP // Number of constraints with an upper bound and an infinite lower bound. + IINF_ANA_PRO_NUM_VAR IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR // Number of variables in the problem. + IINF_ANA_PRO_NUM_VAR_BIN IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_BIN // Number of binary variables. + IINF_ANA_PRO_NUM_VAR_CONT IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_CONT // Number of continuous variables. + IINF_ANA_PRO_NUM_VAR_EQ IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_EQ // Number of fixed variables. + IINF_ANA_PRO_NUM_VAR_FR IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_FR // Number of unbounded constraints. + IINF_ANA_PRO_NUM_VAR_INT IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_INT // Number of general integer variables. + IINF_ANA_PRO_NUM_VAR_LO IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_LO // Number of variables with a lower bound and an infinite upper bound. + IINF_ANA_PRO_NUM_VAR_RA IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_RA // Number of variables with finite lower and upper bounds. + IINF_ANA_PRO_NUM_VAR_UP IInfItem = C.MSK_IINF_ANA_PRO_NUM_VAR_UP // Number of variables with an upper bound and an infinite lower bound. + IINF_INTPNT_FACTOR_DIM_DENSE IInfItem = C.MSK_IINF_INTPNT_FACTOR_DIM_DENSE // Dimension of the dense sub system in factorization. + IINF_INTPNT_ITER IInfItem = C.MSK_IINF_INTPNT_ITER // Number of interior-point iterations since invoking the interior-point optimizer. + IINF_INTPNT_NUM_THREADS IInfItem = C.MSK_IINF_INTPNT_NUM_THREADS // Number of threads that the interior-point optimizer is using. + IINF_INTPNT_SOLVE_DUAL IInfItem = C.MSK_IINF_INTPNT_SOLVE_DUAL // Non-zero if the interior-point optimizer is solving the dual problem. + IINF_MIO_ABSGAP_SATISFIED IInfItem = C.MSK_IINF_MIO_ABSGAP_SATISFIED // Non-zero if absolute gap is within tolerances. + IINF_MIO_CLIQUE_TABLE_SIZE IInfItem = C.MSK_IINF_MIO_CLIQUE_TABLE_SIZE // Size of the clique table. + IINF_MIO_CONSTRUCT_SOLUTION IInfItem = C.MSK_IINF_MIO_CONSTRUCT_SOLUTION // Informs if MOSEK successfully constructed an initial integer feasible solution. + IINF_MIO_INITIAL_FEASIBLE_SOLUTION IInfItem = C.MSK_IINF_MIO_INITIAL_FEASIBLE_SOLUTION // Informs if MOSEK found the solution provided by the user to be feasible + IINF_MIO_NODE_DEPTH IInfItem = C.MSK_IINF_MIO_NODE_DEPTH // Depth of the last node solved. + IINF_MIO_NUM_ACTIVE_NODES IInfItem = C.MSK_IINF_MIO_NUM_ACTIVE_NODES // Number of active branch and bound nodes. + IINF_MIO_NUM_ACTIVE_ROOT_CUTS IInfItem = C.MSK_IINF_MIO_NUM_ACTIVE_ROOT_CUTS // Number of active cuts in the final relaxation after the mixed-integer optimizer's root cut generation. + IINF_MIO_NUM_BRANCH IInfItem = C.MSK_IINF_MIO_NUM_BRANCH // Number of branches performed during the optimization. + IINF_MIO_NUM_INT_SOLUTIONS IInfItem = C.MSK_IINF_MIO_NUM_INT_SOLUTIONS // Number of integer feasible solutions that have been found. + IINF_MIO_NUM_RELAX IInfItem = C.MSK_IINF_MIO_NUM_RELAX // Number of relaxations solved during the optimization. + IINF_MIO_NUM_REPEATED_PRESOLVE IInfItem = C.MSK_IINF_MIO_NUM_REPEATED_PRESOLVE // Number of times presolve was repeated at root. + IINF_MIO_NUM_RESTARTS IInfItem = C.MSK_IINF_MIO_NUM_RESTARTS // Number of restarts performed during the optimization. + IINF_MIO_NUM_ROOT_CUT_ROUNDS IInfItem = C.MSK_IINF_MIO_NUM_ROOT_CUT_ROUNDS // Number of cut separation rounds at the root node of the mixed-integer optimizer. + IINF_MIO_NUM_SELECTED_CLIQUE_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SELECTED_CLIQUE_CUTS // Number of clique cuts selected to be included in the relaxation. + IINF_MIO_NUM_SELECTED_CMIR_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SELECTED_CMIR_CUTS // Number of Complemented Mixed Integer Rounding (CMIR) cuts selected to be included in the relaxation. + IINF_MIO_NUM_SELECTED_GOMORY_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SELECTED_GOMORY_CUTS // Number of Gomory cuts selected to be included in the relaxation. + IINF_MIO_NUM_SELECTED_IMPLIED_BOUND_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SELECTED_IMPLIED_BOUND_CUTS // Number of implied bound cuts selected to be included in the relaxation. + IINF_MIO_NUM_SELECTED_KNAPSACK_COVER_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SELECTED_KNAPSACK_COVER_CUTS // Number of clique cuts selected to be included in the relaxation. + IINF_MIO_NUM_SELECTED_LIPRO_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SELECTED_LIPRO_CUTS // Number of lift-and-project cuts selected to be included in the relaxation. + IINF_MIO_NUM_SEPARATED_CLIQUE_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SEPARATED_CLIQUE_CUTS // Number of separated clique cuts. + IINF_MIO_NUM_SEPARATED_CMIR_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SEPARATED_CMIR_CUTS // Number of separated Complemented Mixed Integer Rounding (CMIR) cuts. + IINF_MIO_NUM_SEPARATED_GOMORY_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SEPARATED_GOMORY_CUTS // Number of separated Gomory cuts. + IINF_MIO_NUM_SEPARATED_IMPLIED_BOUND_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SEPARATED_IMPLIED_BOUND_CUTS // Number of separated implied bound cuts. + IINF_MIO_NUM_SEPARATED_KNAPSACK_COVER_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SEPARATED_KNAPSACK_COVER_CUTS // Number of separated clique cuts. + IINF_MIO_NUM_SEPARATED_LIPRO_CUTS IInfItem = C.MSK_IINF_MIO_NUM_SEPARATED_LIPRO_CUTS // Number of separated lift-and-project cuts. + IINF_MIO_NUM_SOLVED_NODES IInfItem = C.MSK_IINF_MIO_NUM_SOLVED_NODES // Number of branch and bounds nodes solved in the main branch and bound tree. + IINF_MIO_NUMBIN IInfItem = C.MSK_IINF_MIO_NUMBIN // Number of binary variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMBINCONEVAR IInfItem = C.MSK_IINF_MIO_NUMBINCONEVAR // Number of binary cone variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMCON IInfItem = C.MSK_IINF_MIO_NUMCON // Number of constraints in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMCONE IInfItem = C.MSK_IINF_MIO_NUMCONE // Number of cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMCONEVAR IInfItem = C.MSK_IINF_MIO_NUMCONEVAR // Number of cone variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMCONT IInfItem = C.MSK_IINF_MIO_NUMCONT // Number of continuous variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMCONTCONEVAR IInfItem = C.MSK_IINF_MIO_NUMCONTCONEVAR // Number of continuous cone variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMDEXPCONES IInfItem = C.MSK_IINF_MIO_NUMDEXPCONES // Number of dual exponential cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMDJC IInfItem = C.MSK_IINF_MIO_NUMDJC // Number of disjunctive constraints in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMDPOWCONES IInfItem = C.MSK_IINF_MIO_NUMDPOWCONES // Number of dual power cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMINT IInfItem = C.MSK_IINF_MIO_NUMINT // Number of integer variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMINTCONEVAR IInfItem = C.MSK_IINF_MIO_NUMINTCONEVAR // Number of integer cone variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMPEXPCONES IInfItem = C.MSK_IINF_MIO_NUMPEXPCONES // Number of primal exponential cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMPPOWCONES IInfItem = C.MSK_IINF_MIO_NUMPPOWCONES // Number of primal power cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMQCONES IInfItem = C.MSK_IINF_MIO_NUMQCONES // Number of quadratic cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMRQCONES IInfItem = C.MSK_IINF_MIO_NUMRQCONES // Number of rotated quadratic cones in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_NUMVAR IInfItem = C.MSK_IINF_MIO_NUMVAR // Number of variables in the problem to be solved by the mixed-integer optimizer. + IINF_MIO_OBJ_BOUND_DEFINED IInfItem = C.MSK_IINF_MIO_OBJ_BOUND_DEFINED // Non-zero if a valid objective bound has been found, otherwise zero. + IINF_MIO_PRESOLVED_NUMBIN IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMBIN // Number of binary variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMBINCONEVAR IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMBINCONEVAR // Number of binary cone variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMCON IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMCON // Number of constraints in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMCONE IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMCONE // Number of cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMCONEVAR IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMCONEVAR // Number of cone variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMCONT IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMCONT // Number of continuous variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMCONTCONEVAR IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMCONTCONEVAR // Number of continuous cone variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMDEXPCONES IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMDEXPCONES // Number of dual exponential cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMDJC IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMDJC // Number of disjunctive constraints in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMDPOWCONES IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMDPOWCONES // Number of dual power cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMINT IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMINT // Number of integer variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMINTCONEVAR IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMINTCONEVAR // Number of integer cone variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMPEXPCONES IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMPEXPCONES // Number of primal exponential cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMPPOWCONES IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMPPOWCONES // Number of primal power cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMQCONES IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMQCONES // Number of quadratic cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMRQCONES IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMRQCONES // Number of rotated quadratic cones in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_PRESOLVED_NUMVAR IInfItem = C.MSK_IINF_MIO_PRESOLVED_NUMVAR // Number of variables in the problem after the mixed-integer optimizer's presolve. + IINF_MIO_RELGAP_SATISFIED IInfItem = C.MSK_IINF_MIO_RELGAP_SATISFIED // Non-zero if relative gap is within tolerances. + IINF_MIO_TOTAL_NUM_SELECTED_CUTS IInfItem = C.MSK_IINF_MIO_TOTAL_NUM_SELECTED_CUTS // Total number of cuts selected to be included in the relaxation by the mixed-integer optimizer. + IINF_MIO_TOTAL_NUM_SEPARATED_CUTS IInfItem = C.MSK_IINF_MIO_TOTAL_NUM_SEPARATED_CUTS // Total number of cuts separated by the mixed-integer optimizer. + IINF_MIO_USER_OBJ_CUT IInfItem = C.MSK_IINF_MIO_USER_OBJ_CUT // If it is non-zero, then the objective cut is used. + IINF_OPT_NUMCON IInfItem = C.MSK_IINF_OPT_NUMCON // Number of constraints in the problem solved when the optimizer is called. + IINF_OPT_NUMVAR IInfItem = C.MSK_IINF_OPT_NUMVAR // Number of variables in the problem solved when the optimizer is called + IINF_OPTIMIZE_RESPONSE IInfItem = C.MSK_IINF_OPTIMIZE_RESPONSE // The response code returned by optimize. + IINF_PRESOLVE_NUM_PRIMAL_PERTURBATIONS IInfItem = C.MSK_IINF_PRESOLVE_NUM_PRIMAL_PERTURBATIONS // Number perturbations to thhe bounds of the primal problem. + IINF_PURIFY_DUAL_SUCCESS IInfItem = C.MSK_IINF_PURIFY_DUAL_SUCCESS // Is nonzero if the dual solution is purified. + IINF_PURIFY_PRIMAL_SUCCESS IInfItem = C.MSK_IINF_PURIFY_PRIMAL_SUCCESS // Is nonzero if the primal solution is purified. + IINF_RD_NUMBARVAR IInfItem = C.MSK_IINF_RD_NUMBARVAR // Number of symmetric variables read. + IINF_RD_NUMCON IInfItem = C.MSK_IINF_RD_NUMCON // Number of constraints read. + IINF_RD_NUMCONE IInfItem = C.MSK_IINF_RD_NUMCONE // Number of conic constraints read. + IINF_RD_NUMINTVAR IInfItem = C.MSK_IINF_RD_NUMINTVAR // Number of integer-constrained variables read. + IINF_RD_NUMQ IInfItem = C.MSK_IINF_RD_NUMQ // Number of nonempty Q matrices read. + IINF_RD_NUMVAR IInfItem = C.MSK_IINF_RD_NUMVAR // Number of variables read. + IINF_RD_PROTYPE IInfItem = C.MSK_IINF_RD_PROTYPE // Problem type. + IINF_SIM_DUAL_DEG_ITER IInfItem = C.MSK_IINF_SIM_DUAL_DEG_ITER // The number of dual degenerate iterations. + IINF_SIM_DUAL_HOTSTART IInfItem = C.MSK_IINF_SIM_DUAL_HOTSTART // If 1 then the dual simplex algorithm is solving from an advanced basis. + IINF_SIM_DUAL_HOTSTART_LU IInfItem = C.MSK_IINF_SIM_DUAL_HOTSTART_LU // If 1 then a valid basis factorization of full rank was located and used by the dual simplex algorithm. + IINF_SIM_DUAL_INF_ITER IInfItem = C.MSK_IINF_SIM_DUAL_INF_ITER // The number of iterations taken with dual infeasibility. + IINF_SIM_DUAL_ITER IInfItem = C.MSK_IINF_SIM_DUAL_ITER // Number of dual simplex iterations during the last optimization. + IINF_SIM_NUMCON IInfItem = C.MSK_IINF_SIM_NUMCON // Number of constraints in the problem solved by the simplex optimizer. + IINF_SIM_NUMVAR IInfItem = C.MSK_IINF_SIM_NUMVAR // Number of variables in the problem solved by the simplex optimizer. + IINF_SIM_PRIMAL_DEG_ITER IInfItem = C.MSK_IINF_SIM_PRIMAL_DEG_ITER // The number of primal degenerate iterations. + IINF_SIM_PRIMAL_HOTSTART IInfItem = C.MSK_IINF_SIM_PRIMAL_HOTSTART // If 1 then the primal simplex algorithm is solving from an advanced basis. + IINF_SIM_PRIMAL_HOTSTART_LU IInfItem = C.MSK_IINF_SIM_PRIMAL_HOTSTART_LU // If 1 then a valid basis factorization of full rank was located and used by the primal simplex algorithm. + IINF_SIM_PRIMAL_INF_ITER IInfItem = C.MSK_IINF_SIM_PRIMAL_INF_ITER // The number of iterations taken with primal infeasibility. + IINF_SIM_PRIMAL_ITER IInfItem = C.MSK_IINF_SIM_PRIMAL_ITER // Number of primal simplex iterations during the last optimization. + IINF_SIM_SOLVE_DUAL IInfItem = C.MSK_IINF_SIM_SOLVE_DUAL // Is non-zero if dual problem is solved. + IINF_SOL_BAS_PROSTA IInfItem = C.MSK_IINF_SOL_BAS_PROSTA // Problem status of the basic solution. Updated after each optimization. + IINF_SOL_BAS_SOLSTA IInfItem = C.MSK_IINF_SOL_BAS_SOLSTA // Solution status of the basic solution. Updated after each optimization. + IINF_SOL_ITG_PROSTA IInfItem = C.MSK_IINF_SOL_ITG_PROSTA // Problem status of the integer solution. Updated after each optimization. + IINF_SOL_ITG_SOLSTA IInfItem = C.MSK_IINF_SOL_ITG_SOLSTA // Solution status of the integer solution. Updated after each optimization. + IINF_SOL_ITR_PROSTA IInfItem = C.MSK_IINF_SOL_ITR_PROSTA // Problem status of the interior-point solution. Updated after each optimization. + IINF_SOL_ITR_SOLSTA IInfItem = C.MSK_IINF_SOL_ITR_SOLSTA // Solution status of the interior-point solution. Updated after each optimization. + IINF_STO_NUM_A_REALLOC IInfItem = C.MSK_IINF_STO_NUM_A_REALLOC // Number of times the storage for storing the linear coefficient matrix has been changed. ) var _IInfItem_map = map[IInfItem]string{ diff --git a/inftype_enum.go b/inftype_enum.go index d00d89f..ad04d8a 100644 --- a/inftype_enum.go +++ b/inftype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // InfType is MSKinftype_enum. @@ -11,9 +14,9 @@ import "strconv" type InfType uint32 const ( - INF_DOU_TYPE InfType = 0 // Is a double information type. - INF_INT_TYPE InfType = 1 // Is an integer. - INF_LINT_TYPE InfType = 2 // Is a long integer. + INF_DOU_TYPE InfType = C.MSK_INF_DOU_TYPE // Is a double information type. + INF_INT_TYPE InfType = C.MSK_INF_INT_TYPE // Is an integer. + INF_LINT_TYPE InfType = C.MSK_INF_LINT_TYPE // Is a long integer. ) var _InfType_map = map[InfType]string{ diff --git a/intpnthotstart_enum.go b/intpnthotstart_enum.go index 375c4fa..030b20f 100644 --- a/intpnthotstart_enum.go +++ b/intpnthotstart_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // IntpntHotstart is MSKintpnthotstart_enum. @@ -11,10 +14,10 @@ import "strconv" type IntpntHotstart uint32 const ( - INTPNT_HOTSTART_NONE IntpntHotstart = 0 // The interior-point optimizer performs a coldstart. - INTPNT_HOTSTART_PRIMAL IntpntHotstart = 1 // The interior-point optimizer exploits the primal solution only. - INTPNT_HOTSTART_DUAL IntpntHotstart = 2 // The interior-point optimizer exploits the dual solution only. - INTPNT_HOTSTART_PRIMAL_DUAL IntpntHotstart = 3 // The interior-point optimizer exploits both the primal and dual solution. + INTPNT_HOTSTART_NONE IntpntHotstart = C.MSK_INTPNT_HOTSTART_NONE // The interior-point optimizer performs a coldstart. + INTPNT_HOTSTART_PRIMAL IntpntHotstart = C.MSK_INTPNT_HOTSTART_PRIMAL // The interior-point optimizer exploits the primal solution only. + INTPNT_HOTSTART_DUAL IntpntHotstart = C.MSK_INTPNT_HOTSTART_DUAL // The interior-point optimizer exploits the dual solution only. + INTPNT_HOTSTART_PRIMAL_DUAL IntpntHotstart = C.MSK_INTPNT_HOTSTART_PRIMAL_DUAL // The interior-point optimizer exploits both the primal and dual solution. ) var _IntpntHotstart_map = map[IntpntHotstart]string{ diff --git a/iomode_enum.go b/iomode_enum.go index a6db990..8e6de77 100644 --- a/iomode_enum.go +++ b/iomode_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // IoMode is MSKiomode_enum. @@ -11,9 +14,9 @@ import "strconv" type IoMode uint32 const ( - IOMODE_READ IoMode = 0 // The file is read-only. - IOMODE_WRITE IoMode = 1 // The file is write-only. If the file exists then it is truncated when it is opened. Otherwise it is created when it is opened. - IOMODE_READWRITE IoMode = 2 // The file is to read and write. + IOMODE_READ IoMode = C.MSK_IOMODE_READ // The file is read-only. + IOMODE_WRITE IoMode = C.MSK_IOMODE_WRITE // The file is write-only. If the file exists then it is truncated when it is opened. Otherwise it is created when it is opened. + IOMODE_READWRITE IoMode = C.MSK_IOMODE_READWRITE // The file is to read and write. ) var _IoMode_map = map[IoMode]string{ diff --git a/iparam_enum.go b/iparam_enum.go index 98fe213..725413b 100644 --- a/iparam_enum.go +++ b/iparam_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // IParam is MSKiparam_enum. @@ -12,196 +15,196 @@ import "strconv" type IParam uint32 const ( - IPAR_ANA_SOL_BASIS IParam = 0 // Controls whether the basis matrix is analyzed in solution analyzer. - IPAR_ANA_SOL_PRINT_VIOLATED IParam = 1 // Controls whether a list of violated constraints is printed. - IPAR_AUTO_SORT_A_BEFORE_OPT IParam = 2 // Controls whether the elements in each column of A are sorted before an optimization is performed. - IPAR_AUTO_UPDATE_SOL_INFO IParam = 3 // Controls whether the solution information items are automatically updated after an optimization is performed. - IPAR_BASIS_SOLVE_USE_PLUS_ONE IParam = 4 // Controls the sign of the columns in the basis matrix corresponding to slack variables. - IPAR_BI_CLEAN_OPTIMIZER IParam = 5 // Controls which simplex optimizer is used in the clean-up phase. - IPAR_BI_IGNORE_MAX_ITER IParam = 6 // Turns on basis identification in case the interior-point optimizer is terminated due to maximum number of iterations. - IPAR_BI_IGNORE_NUM_ERROR IParam = 7 // Turns on basis identification in case the interior-point optimizer is terminated due to a numerical problem. - IPAR_BI_MAX_ITERATIONS IParam = 8 // Maximum number of iterations after basis identification. - IPAR_CACHE_LICENSE IParam = 9 // Control license caching. - IPAR_COMPRESS_STATFILE IParam = 10 // Control compression of stat files. - IPAR_INFEAS_GENERIC_NAMES IParam = 11 // Controls the contents of the infeasibility report. - IPAR_INFEAS_PREFER_PRIMAL IParam = 12 // Controls which certificate is used if both primal- and dual- certificate of infeasibility is available. - IPAR_INFEAS_REPORT_AUTO IParam = 13 // Turns the feasibility report on or off. - IPAR_INFEAS_REPORT_LEVEL IParam = 14 // Controls the contents of the infeasibility report. - IPAR_INTPNT_BASIS IParam = 15 // Controls whether basis identification is performed. - IPAR_INTPNT_DIFF_STEP IParam = 16 // Controls whether different step sizes are allowed in the primal and dual space. - IPAR_INTPNT_HOTSTART IParam = 17 // Currently not in use. - IPAR_INTPNT_MAX_ITERATIONS IParam = 18 // Controls the maximum number of iterations allowed in the interior-point optimizer. - IPAR_INTPNT_MAX_NUM_COR IParam = 19 // Maximum number of correction steps. - IPAR_INTPNT_MAX_NUM_REFINEMENT_STEPS IParam = 20 // Maximum number of steps to be used by the iterative search direction refinement. - IPAR_INTPNT_OFF_COL_TRH IParam = 21 // Controls the aggressiveness of the offending column detection. - IPAR_INTPNT_ORDER_GP_NUM_SEEDS IParam = 22 // This parameter controls the number of random seeds tried. - IPAR_INTPNT_ORDER_METHOD IParam = 23 // Controls the ordering strategy. - IPAR_INTPNT_PURIFY IParam = 24 // Currently not in use. - IPAR_INTPNT_REGULARIZATION_USE IParam = 25 // Controls whether regularization is allowed. - IPAR_INTPNT_SCALING IParam = 26 // Controls how the problem is scaled before the interior-point optimizer is used. - IPAR_INTPNT_SOLVE_FORM IParam = 27 // Controls whether the primal or the dual problem is solved. - IPAR_INTPNT_STARTING_POINT IParam = 28 // Starting point used by the interior-point optimizer. - IPAR_LICENSE_DEBUG IParam = 29 // Controls the license manager client debugging behavior. - IPAR_LICENSE_PAUSE_TIME IParam = 30 // Controls license manager client behavior. - IPAR_LICENSE_SUPPRESS_EXPIRE_WRNS IParam = 31 // Controls license manager client behavior. - IPAR_LICENSE_TRH_EXPIRY_WRN IParam = 32 // Controls when expiry warnings are issued. - IPAR_LICENSE_WAIT IParam = 33 // Controls if MOSEK should queue for a license if none is available. - IPAR_LOG IParam = 34 // Controls the amount of log information. - IPAR_LOG_ANA_PRO IParam = 35 // Controls amount of output from the problem analyzer. - IPAR_LOG_BI IParam = 36 // Controls the amount of output printed by the basis identification procedure. A higher level implies that more information is logged. - IPAR_LOG_BI_FREQ IParam = 37 // Controls the logging frequency. - IPAR_LOG_CUT_SECOND_OPT IParam = 38 // Controls the reduction in the log levels for the second and any subsequent optimizations. - IPAR_LOG_EXPAND IParam = 39 // Controls the amount of logging when a data item such as the maximum number constrains is expanded. - IPAR_LOG_FEAS_REPAIR IParam = 40 // Controls the amount of output printed when performing feasibility repair. A value higher than one means extensive logging. - IPAR_LOG_FILE IParam = 41 // If turned on, then some log info is printed when a file is written or read. - IPAR_LOG_INCLUDE_SUMMARY IParam = 42 // Controls whether solution summary should be printed by the optimizer. - IPAR_LOG_INFEAS_ANA IParam = 43 // Controls log level for the infeasibility analyzer. - IPAR_LOG_INTPNT IParam = 44 // Controls the amount of log information from the interior-point optimizers. - IPAR_LOG_LOCAL_INFO IParam = 45 // Control whether local identifying information is printed to the log. - IPAR_LOG_MIO IParam = 46 // Controls the amount of log information from the mixed-integer optimizers. - IPAR_LOG_MIO_FREQ IParam = 47 // The mixed-integer optimizer logging frequency. - IPAR_LOG_ORDER IParam = 48 // If turned on, then factor lines are added to the log. - IPAR_LOG_PRESOLVE IParam = 49 // Controls amount of output printed by the presolve procedure. A higher level implies that more information is logged. - IPAR_LOG_RESPONSE IParam = 50 // Controls amount of output printed when response codes are reported. A higher level implies that more information is logged. - IPAR_LOG_SENSITIVITY IParam = 51 // Control logging in sensitivity analyzer. - IPAR_LOG_SENSITIVITY_OPT IParam = 52 // Control logging in sensitivity analyzer. - IPAR_LOG_SIM IParam = 53 // Controls the amount of log information from the simplex optimizers. - IPAR_LOG_SIM_FREQ IParam = 54 // Controls simplex logging frequency. - IPAR_LOG_SIM_MINOR IParam = 55 // Currently not in use. - IPAR_LOG_STORAGE IParam = 56 // Controls the memory related log information. - IPAR_MAX_NUM_WARNINGS IParam = 57 // Each warning is shown a limited number of times controlled by this parameter. A negative value is identical to infinite number of times. - IPAR_MIO_BRANCH_DIR IParam = 58 // Controls whether the mixed-integer optimizer is branching up or down by default. - IPAR_MIO_CONIC_OUTER_APPROXIMATION IParam = 59 // Toggles outer approximation for conic problems. - IPAR_MIO_CONSTRUCT_SOL IParam = 60 // Controls if an initial mixed integer solution should be constructed from the values of the integer variables. - IPAR_MIO_CUT_CLIQUE IParam = 61 // Controls whether clique cuts should be generated. - IPAR_MIO_CUT_CMIR IParam = 62 // Controls whether mixed integer rounding cuts should be generated. - IPAR_MIO_CUT_GMI IParam = 63 // Controls whether GMI cuts should be generated. - IPAR_MIO_CUT_IMPLIED_BOUND IParam = 64 // Controls whether implied bound cuts should be generated. - IPAR_MIO_CUT_KNAPSACK_COVER IParam = 65 // Controls whether knapsack cover cuts should be generated. - IPAR_MIO_CUT_LIPRO IParam = 66 // Controls whether lift-and-project cuts should be generated. - IPAR_MIO_CUT_SELECTION_LEVEL IParam = 67 // Controls how aggressively generated cuts are selected to be included in the relaxation. - IPAR_MIO_DATA_PERMUTATION_METHOD IParam = 68 // Controls what problem data permutation method is appplied to mixed-integer problems. - IPAR_MIO_DUAL_RAY_ANALYSIS_LEVEL IParam = 69 // Controls the amount of dual ray analysis employed by the mixed-integer optimizer in presolve. - IPAR_MIO_FEASPUMP_LEVEL IParam = 70 // Controls the way the Feasibility Pump heuristic is employed by the mixed-integer optimizer. - IPAR_MIO_HEURISTIC_LEVEL IParam = 71 // Controls the heuristic employed by the mixed-integer optimizer to locate an initial integer feasible solution. - IPAR_MIO_MAX_NUM_BRANCHES IParam = 72 // Maximum number of branches allowed during the branch and bound search. - IPAR_MIO_MAX_NUM_RELAXS IParam = 73 // Maximum number of relaxations in branch and bound search. - IPAR_MIO_MAX_NUM_RESTARTS IParam = 74 // Maximum number of restarts allowed during the branch and bound search. - IPAR_MIO_MAX_NUM_ROOT_CUT_ROUNDS IParam = 75 // Maximum number of cut separation rounds at the root node. - IPAR_MIO_MAX_NUM_SOLUTIONS IParam = 76 // Controls how many feasible solutions the mixed-integer optimizer investigates. - IPAR_MIO_MEMORY_EMPHASIS_LEVEL IParam = 77 // Controls how much emphasis is put on reducing memory usage. - IPAR_MIO_MIN_REL IParam = 78 // Number of times a variable must have been branched on for its pseudocost to be cosidered reliable. - IPAR_MIO_MODE IParam = 79 // Turns on/off the mixed-integer mode. - IPAR_MIO_NODE_OPTIMIZER IParam = 80 // Controls which optimizer is employed at the non-root nodes in the mixed-integer optimizer. - IPAR_MIO_NODE_SELECTION IParam = 81 // Controls the node selection strategy employed by the mixed-integer optimizer. - IPAR_MIO_NUMERICAL_EMPHASIS_LEVEL IParam = 82 // Controls how much emphasis is put on reducing numerical problems - IPAR_MIO_PERSPECTIVE_REFORMULATE IParam = 83 // Enables or disables perspective reformulation in presolve. - IPAR_MIO_PRESOLVE_AGGREGATOR_USE IParam = 84 // Controls if the aggregator should be used. - IPAR_MIO_PROBING_LEVEL IParam = 85 // Controls the amount of probing employed by the mixed-integer optimizer in presolve. - IPAR_MIO_PROPAGATE_OBJECTIVE_CONSTRAINT IParam = 86 // Use objective domain propagation. - IPAR_MIO_QCQO_REFORMULATION_METHOD IParam = 87 // Controls what reformulation method is applied to mixed-integer quadratic problems. - IPAR_MIO_RINS_MAX_NODES IParam = 88 // Maximum number of nodes in each call to RINS. - IPAR_MIO_ROOT_OPTIMIZER IParam = 89 // Controls which optimizer is employed at the root node in the mixed-integer optimizer. - IPAR_MIO_ROOT_REPEAT_PRESOLVE_LEVEL IParam = 90 // Controls whether presolve can be repeated at root node. - IPAR_MIO_SEED IParam = 91 // Sets the random seed used for randomization in the mixed integer optimizer. - IPAR_MIO_SYMMETRY_LEVEL IParam = 92 // Controls the amount of symmetry detection and handling employed by the mixed-integer optimizer in presolve. - IPAR_MIO_VAR_SELECTION IParam = 93 // Controls the variable selection strategy employed by the mixed-integer optimizer. - IPAR_MIO_VB_DETECTION_LEVEL IParam = 94 // Controls how much effort is put into detecting variable bounds. - IPAR_MT_SPINCOUNT IParam = 95 // Set the number of iterations to spin before sleeping. - IPAR_NG IParam = 96 // Not in use - IPAR_NUM_THREADS IParam = 97 // The number of threads employed by the optimizer. - IPAR_OPF_WRITE_HEADER IParam = 98 // Write a text header with date and MOSEK version in an OPF file. - IPAR_OPF_WRITE_HINTS IParam = 99 // Write a hint section with problem dimensions in the beginning of an OPF file. - IPAR_OPF_WRITE_LINE_LENGTH IParam = 100 // Aim to keep lines in OPF files not much longer than this. - IPAR_OPF_WRITE_PARAMETERS IParam = 101 // Write a parameter section in an OPF file. - IPAR_OPF_WRITE_PROBLEM IParam = 102 // Write objective, constraints, bounds etc. to an OPF file. - IPAR_OPF_WRITE_SOL_BAS IParam = 103 // Controls what is written to the OPF files. - IPAR_OPF_WRITE_SOL_ITG IParam = 104 // Controls what is written to the OPF files. - IPAR_OPF_WRITE_SOL_ITR IParam = 105 // Controls what is written to the OPF files. - IPAR_OPF_WRITE_SOLUTIONS IParam = 106 // Enable inclusion of solutions in the OPF files. - IPAR_OPTIMIZER IParam = 107 // Controls which optimizer is used to optimize the task. - IPAR_PARAM_READ_CASE_NAME IParam = 108 // If turned on, then names in the parameter file are case sensitive. - IPAR_PARAM_READ_IGN_ERROR IParam = 109 // If turned on, then errors in parameter settings is ignored. - IPAR_PRESOLVE_ELIMINATOR_MAX_FILL IParam = 110 // Maximum amount of fill-in created in one pivot during the elimination phase. - IPAR_PRESOLVE_ELIMINATOR_MAX_NUM_TRIES IParam = 111 // Control the maximum number of times the eliminator is tried. - IPAR_PRESOLVE_LEVEL IParam = 112 // Currently not used. - IPAR_PRESOLVE_LINDEP_ABS_WORK_TRH IParam = 113 // Controls linear dependency check in presolve. - IPAR_PRESOLVE_LINDEP_NEW IParam = 114 // Controls whether whether a new experimental linear dependency checker is employed. - IPAR_PRESOLVE_LINDEP_REL_WORK_TRH IParam = 115 // Controls linear dependency check in presolve. - IPAR_PRESOLVE_LINDEP_USE IParam = 116 // Controls whether the linear constraints are checked for linear dependencies. - IPAR_PRESOLVE_MAX_NUM_PASS IParam = 117 // Control the maximum number of times presolve passes over the problem. - IPAR_PRESOLVE_MAX_NUM_REDUCTIONS IParam = 118 // Controls the maximum number of reductions performed by the presolve. - IPAR_PRESOLVE_USE IParam = 119 // Controls whether the presolve is applied to a problem before it is optimized. - IPAR_PRIMAL_REPAIR_OPTIMIZER IParam = 120 // Controls which optimizer that is used to find the optimal repair. - IPAR_PTF_WRITE_PARAMETERS IParam = 121 // Controls whether parameters section is written in PTF files. - IPAR_PTF_WRITE_SOLUTIONS IParam = 122 // Controls whether solution section is written in PTF files. - IPAR_PTF_WRITE_TRANSFORM IParam = 123 // Controls if simple transformation are done when writing PTF files. - IPAR_READ_DEBUG IParam = 124 // Turns on additional debugging information when reading files. - IPAR_READ_KEEP_FREE_CON IParam = 125 // Controls whether the free constraints are included in the problem. - IPAR_READ_MPS_FORMAT IParam = 126 // Controls how strictly the MPS file reader interprets the MPS format. - IPAR_READ_MPS_WIDTH IParam = 127 // Controls the maximal number of characters allowed in one line of the MPS file. - IPAR_READ_TASK_IGNORE_PARAM IParam = 128 // Controls what information is used from the task files. - IPAR_REMOTE_USE_COMPRESSION IParam = 129 // Use compression when sending data to an optimization server - IPAR_REMOVE_UNUSED_SOLUTIONS IParam = 130 // Removes unused solutions before the optimization is performed. - IPAR_SENSITIVITY_ALL IParam = 131 // Controls sensitivity report behavior. - IPAR_SENSITIVITY_OPTIMIZER IParam = 132 // Controls which optimizer is used for optimal partition sensitivity analysis. - IPAR_SENSITIVITY_TYPE IParam = 133 // Controls which type of sensitivity analysis is to be performed. - IPAR_SIM_BASIS_FACTOR_USE IParam = 134 // Controls whether an LU factorization of the basis is used in a hot-start. - IPAR_SIM_DEGEN IParam = 135 // Controls how aggressively degeneration is handled. - IPAR_SIM_DETECT_PWL IParam = 136 // Not in use. - IPAR_SIM_DUAL_CRASH IParam = 137 // Controls whether crashing is performed in the dual simplex optimizer. - IPAR_SIM_DUAL_PHASEONE_METHOD IParam = 138 // An experimental feature. - IPAR_SIM_DUAL_RESTRICT_SELECTION IParam = 139 // Controls how aggressively restricted selection is used. - IPAR_SIM_DUAL_SELECTION IParam = 140 // Controls the dual simplex strategy. - IPAR_SIM_EXPLOIT_DUPVEC IParam = 141 // Controls if the simplex optimizers are allowed to exploit duplicated columns. - IPAR_SIM_HOTSTART IParam = 142 // Controls the type of hot-start that the simplex optimizer perform. - IPAR_SIM_HOTSTART_LU IParam = 143 // Determines if the simplex optimizer should exploit the initial factorization. - IPAR_SIM_MAX_ITERATIONS IParam = 144 // Maximum number of iterations that can be used by a simplex optimizer. - IPAR_SIM_MAX_NUM_SETBACKS IParam = 145 // Controls how many set-backs that are allowed within a simplex optimizer. - IPAR_SIM_NON_SINGULAR IParam = 146 // Controls if the simplex optimizer ensures a non-singular basis, if possible. - IPAR_SIM_PRIMAL_CRASH IParam = 147 // Controls the simplex crash. - IPAR_SIM_PRIMAL_PHASEONE_METHOD IParam = 148 // An experimental feature. - IPAR_SIM_PRIMAL_RESTRICT_SELECTION IParam = 149 // Controls how aggressively restricted selection is used. - IPAR_SIM_PRIMAL_SELECTION IParam = 150 // Controls the primal simplex strategy. - IPAR_SIM_REFACTOR_FREQ IParam = 151 // Controls the basis refactoring frequency. - IPAR_SIM_REFORMULATION IParam = 152 // Controls if the simplex optimizers are allowed to reformulate the problem. - IPAR_SIM_SAVE_LU IParam = 153 // Controls if the LU factorization stored should be replaced with the LU factorization corresponding to the initial basis. - IPAR_SIM_SCALING IParam = 154 // Controls how much effort is used in scaling the problem before a simplex optimizer is used. - IPAR_SIM_SCALING_METHOD IParam = 155 // Controls how the problem is scaled before a simplex optimizer is used. - IPAR_SIM_SEED IParam = 156 // Sets the random seed used for randomization in the simplex optimizers. - IPAR_SIM_SOLVE_FORM IParam = 157 // Controls whether the primal or the dual problem is solved by the primal-/dual-simplex optimizer. - IPAR_SIM_STABILITY_PRIORITY IParam = 158 // Controls how high priority the numerical stability should be given. - IPAR_SIM_SWITCH_OPTIMIZER IParam = 159 // Controls the simplex behavior. - IPAR_SOL_FILTER_KEEP_BASIC IParam = 160 // Control the contents of the solution files. - IPAR_SOL_FILTER_KEEP_RANGED IParam = 161 // Control the contents of the solution files. - IPAR_SOL_READ_NAME_WIDTH IParam = 162 // Controls the input solution file format. - IPAR_SOL_READ_WIDTH IParam = 163 // Controls the input solution file format. - IPAR_SOLUTION_CALLBACK IParam = 164 // Indicates whether solution callbacks will be performed during the optimization. - IPAR_TIMING_LEVEL IParam = 165 // Controls the amount of timing performed inside MOSEK. - IPAR_WRITE_BAS_CONSTRAINTS IParam = 166 // Controls the basic solution file format. - IPAR_WRITE_BAS_HEAD IParam = 167 // Controls the basic solution file format. - IPAR_WRITE_BAS_VARIABLES IParam = 168 // Controls the basic solution file format. - IPAR_WRITE_COMPRESSION IParam = 169 // Controls output file compression. - IPAR_WRITE_DATA_PARAM IParam = 170 // Controls output file data. - IPAR_WRITE_FREE_CON IParam = 171 // Controls the output file data. - IPAR_WRITE_GENERIC_NAMES IParam = 172 // Controls the output file data. - IPAR_WRITE_GENERIC_NAMES_IO IParam = 173 // Index origin used in generic names. - IPAR_WRITE_IGNORE_INCOMPATIBLE_ITEMS IParam = 174 // Controls if the writer ignores incompatible problem items when writing files. - IPAR_WRITE_INT_CONSTRAINTS IParam = 175 // Controls the integer solution file format. - IPAR_WRITE_INT_HEAD IParam = 176 // Controls the integer solution file format. - IPAR_WRITE_INT_VARIABLES IParam = 177 // Controls the integer solution file format. - IPAR_WRITE_JSON_INDENTATION IParam = 178 // When set, the JSON task and solution files are written with indentation for better readability. - IPAR_WRITE_LP_FULL_OBJ IParam = 179 // Write full linear objective - IPAR_WRITE_LP_LINE_WIDTH IParam = 180 // Controls the LP output file format. - IPAR_WRITE_MPS_FORMAT IParam = 181 // Controls in which format the MPS is written. - IPAR_WRITE_MPS_INT IParam = 182 // Controls the output file data. - IPAR_WRITE_SOL_BARVARIABLES IParam = 183 // Controls the solution file format. - IPAR_WRITE_SOL_CONSTRAINTS IParam = 184 // Controls the solution file format. - IPAR_WRITE_SOL_HEAD IParam = 185 // Controls solution file format. - IPAR_WRITE_SOL_IGNORE_INVALID_NAMES IParam = 186 // Controls whether the user specified names are employed even if they are invalid names. - IPAR_WRITE_SOL_VARIABLES IParam = 187 // Controls the solution file format. - IPAR_WRITE_TASK_INC_SOL IParam = 188 // Controls whether the solutions are stored in the task file too. - IPAR_WRITE_XML_MODE IParam = 189 // Controls if linear coefficients should be written by row or column when writing in the XML file format. + IPAR_ANA_SOL_BASIS IParam = C.MSK_IPAR_ANA_SOL_BASIS // Controls whether the basis matrix is analyzed in solution analyzer. + IPAR_ANA_SOL_PRINT_VIOLATED IParam = C.MSK_IPAR_ANA_SOL_PRINT_VIOLATED // Controls whether a list of violated constraints is printed. + IPAR_AUTO_SORT_A_BEFORE_OPT IParam = C.MSK_IPAR_AUTO_SORT_A_BEFORE_OPT // Controls whether the elements in each column of A are sorted before an optimization is performed. + IPAR_AUTO_UPDATE_SOL_INFO IParam = C.MSK_IPAR_AUTO_UPDATE_SOL_INFO // Controls whether the solution information items are automatically updated after an optimization is performed. + IPAR_BASIS_SOLVE_USE_PLUS_ONE IParam = C.MSK_IPAR_BASIS_SOLVE_USE_PLUS_ONE // Controls the sign of the columns in the basis matrix corresponding to slack variables. + IPAR_BI_CLEAN_OPTIMIZER IParam = C.MSK_IPAR_BI_CLEAN_OPTIMIZER // Controls which simplex optimizer is used in the clean-up phase. + IPAR_BI_IGNORE_MAX_ITER IParam = C.MSK_IPAR_BI_IGNORE_MAX_ITER // Turns on basis identification in case the interior-point optimizer is terminated due to maximum number of iterations. + IPAR_BI_IGNORE_NUM_ERROR IParam = C.MSK_IPAR_BI_IGNORE_NUM_ERROR // Turns on basis identification in case the interior-point optimizer is terminated due to a numerical problem. + IPAR_BI_MAX_ITERATIONS IParam = C.MSK_IPAR_BI_MAX_ITERATIONS // Maximum number of iterations after basis identification. + IPAR_CACHE_LICENSE IParam = C.MSK_IPAR_CACHE_LICENSE // Control license caching. + IPAR_COMPRESS_STATFILE IParam = C.MSK_IPAR_COMPRESS_STATFILE // Control compression of stat files. + IPAR_INFEAS_GENERIC_NAMES IParam = C.MSK_IPAR_INFEAS_GENERIC_NAMES // Controls the contents of the infeasibility report. + IPAR_INFEAS_PREFER_PRIMAL IParam = C.MSK_IPAR_INFEAS_PREFER_PRIMAL // Controls which certificate is used if both primal- and dual- certificate of infeasibility is available. + IPAR_INFEAS_REPORT_AUTO IParam = C.MSK_IPAR_INFEAS_REPORT_AUTO // Turns the feasibility report on or off. + IPAR_INFEAS_REPORT_LEVEL IParam = C.MSK_IPAR_INFEAS_REPORT_LEVEL // Controls the contents of the infeasibility report. + IPAR_INTPNT_BASIS IParam = C.MSK_IPAR_INTPNT_BASIS // Controls whether basis identification is performed. + IPAR_INTPNT_DIFF_STEP IParam = C.MSK_IPAR_INTPNT_DIFF_STEP // Controls whether different step sizes are allowed in the primal and dual space. + IPAR_INTPNT_HOTSTART IParam = C.MSK_IPAR_INTPNT_HOTSTART // Currently not in use. + IPAR_INTPNT_MAX_ITERATIONS IParam = C.MSK_IPAR_INTPNT_MAX_ITERATIONS // Controls the maximum number of iterations allowed in the interior-point optimizer. + IPAR_INTPNT_MAX_NUM_COR IParam = C.MSK_IPAR_INTPNT_MAX_NUM_COR // Maximum number of correction steps. + IPAR_INTPNT_MAX_NUM_REFINEMENT_STEPS IParam = C.MSK_IPAR_INTPNT_MAX_NUM_REFINEMENT_STEPS // Maximum number of steps to be used by the iterative search direction refinement. + IPAR_INTPNT_OFF_COL_TRH IParam = C.MSK_IPAR_INTPNT_OFF_COL_TRH // Controls the aggressiveness of the offending column detection. + IPAR_INTPNT_ORDER_GP_NUM_SEEDS IParam = C.MSK_IPAR_INTPNT_ORDER_GP_NUM_SEEDS // This parameter controls the number of random seeds tried. + IPAR_INTPNT_ORDER_METHOD IParam = C.MSK_IPAR_INTPNT_ORDER_METHOD // Controls the ordering strategy. + IPAR_INTPNT_PURIFY IParam = C.MSK_IPAR_INTPNT_PURIFY // Currently not in use. + IPAR_INTPNT_REGULARIZATION_USE IParam = C.MSK_IPAR_INTPNT_REGULARIZATION_USE // Controls whether regularization is allowed. + IPAR_INTPNT_SCALING IParam = C.MSK_IPAR_INTPNT_SCALING // Controls how the problem is scaled before the interior-point optimizer is used. + IPAR_INTPNT_SOLVE_FORM IParam = C.MSK_IPAR_INTPNT_SOLVE_FORM // Controls whether the primal or the dual problem is solved. + IPAR_INTPNT_STARTING_POINT IParam = C.MSK_IPAR_INTPNT_STARTING_POINT // Starting point used by the interior-point optimizer. + IPAR_LICENSE_DEBUG IParam = C.MSK_IPAR_LICENSE_DEBUG // Controls the license manager client debugging behavior. + IPAR_LICENSE_PAUSE_TIME IParam = C.MSK_IPAR_LICENSE_PAUSE_TIME // Controls license manager client behavior. + IPAR_LICENSE_SUPPRESS_EXPIRE_WRNS IParam = C.MSK_IPAR_LICENSE_SUPPRESS_EXPIRE_WRNS // Controls license manager client behavior. + IPAR_LICENSE_TRH_EXPIRY_WRN IParam = C.MSK_IPAR_LICENSE_TRH_EXPIRY_WRN // Controls when expiry warnings are issued. + IPAR_LICENSE_WAIT IParam = C.MSK_IPAR_LICENSE_WAIT // Controls if MOSEK should queue for a license if none is available. + IPAR_LOG IParam = C.MSK_IPAR_LOG // Controls the amount of log information. + IPAR_LOG_ANA_PRO IParam = C.MSK_IPAR_LOG_ANA_PRO // Controls amount of output from the problem analyzer. + IPAR_LOG_BI IParam = C.MSK_IPAR_LOG_BI // Controls the amount of output printed by the basis identification procedure. A higher level implies that more information is logged. + IPAR_LOG_BI_FREQ IParam = C.MSK_IPAR_LOG_BI_FREQ // Controls the logging frequency. + IPAR_LOG_CUT_SECOND_OPT IParam = C.MSK_IPAR_LOG_CUT_SECOND_OPT // Controls the reduction in the log levels for the second and any subsequent optimizations. + IPAR_LOG_EXPAND IParam = C.MSK_IPAR_LOG_EXPAND // Controls the amount of logging when a data item such as the maximum number constrains is expanded. + IPAR_LOG_FEAS_REPAIR IParam = C.MSK_IPAR_LOG_FEAS_REPAIR // Controls the amount of output printed when performing feasibility repair. A value higher than one means extensive logging. + IPAR_LOG_FILE IParam = C.MSK_IPAR_LOG_FILE // If turned on, then some log info is printed when a file is written or read. + IPAR_LOG_INCLUDE_SUMMARY IParam = C.MSK_IPAR_LOG_INCLUDE_SUMMARY // Controls whether solution summary should be printed by the optimizer. + IPAR_LOG_INFEAS_ANA IParam = C.MSK_IPAR_LOG_INFEAS_ANA // Controls log level for the infeasibility analyzer. + IPAR_LOG_INTPNT IParam = C.MSK_IPAR_LOG_INTPNT // Controls the amount of log information from the interior-point optimizers. + IPAR_LOG_LOCAL_INFO IParam = C.MSK_IPAR_LOG_LOCAL_INFO // Control whether local identifying information is printed to the log. + IPAR_LOG_MIO IParam = C.MSK_IPAR_LOG_MIO // Controls the amount of log information from the mixed-integer optimizers. + IPAR_LOG_MIO_FREQ IParam = C.MSK_IPAR_LOG_MIO_FREQ // The mixed-integer optimizer logging frequency. + IPAR_LOG_ORDER IParam = C.MSK_IPAR_LOG_ORDER // If turned on, then factor lines are added to the log. + IPAR_LOG_PRESOLVE IParam = C.MSK_IPAR_LOG_PRESOLVE // Controls amount of output printed by the presolve procedure. A higher level implies that more information is logged. + IPAR_LOG_RESPONSE IParam = C.MSK_IPAR_LOG_RESPONSE // Controls amount of output printed when response codes are reported. A higher level implies that more information is logged. + IPAR_LOG_SENSITIVITY IParam = C.MSK_IPAR_LOG_SENSITIVITY // Control logging in sensitivity analyzer. + IPAR_LOG_SENSITIVITY_OPT IParam = C.MSK_IPAR_LOG_SENSITIVITY_OPT // Control logging in sensitivity analyzer. + IPAR_LOG_SIM IParam = C.MSK_IPAR_LOG_SIM // Controls the amount of log information from the simplex optimizers. + IPAR_LOG_SIM_FREQ IParam = C.MSK_IPAR_LOG_SIM_FREQ // Controls simplex logging frequency. + IPAR_LOG_SIM_MINOR IParam = C.MSK_IPAR_LOG_SIM_MINOR // Currently not in use. + IPAR_LOG_STORAGE IParam = C.MSK_IPAR_LOG_STORAGE // Controls the memory related log information. + IPAR_MAX_NUM_WARNINGS IParam = C.MSK_IPAR_MAX_NUM_WARNINGS // Each warning is shown a limited number of times controlled by this parameter. A negative value is identical to infinite number of times. + IPAR_MIO_BRANCH_DIR IParam = C.MSK_IPAR_MIO_BRANCH_DIR // Controls whether the mixed-integer optimizer is branching up or down by default. + IPAR_MIO_CONIC_OUTER_APPROXIMATION IParam = C.MSK_IPAR_MIO_CONIC_OUTER_APPROXIMATION // Toggles outer approximation for conic problems. + IPAR_MIO_CONSTRUCT_SOL IParam = C.MSK_IPAR_MIO_CONSTRUCT_SOL // Controls if an initial mixed integer solution should be constructed from the values of the integer variables. + IPAR_MIO_CUT_CLIQUE IParam = C.MSK_IPAR_MIO_CUT_CLIQUE // Controls whether clique cuts should be generated. + IPAR_MIO_CUT_CMIR IParam = C.MSK_IPAR_MIO_CUT_CMIR // Controls whether mixed integer rounding cuts should be generated. + IPAR_MIO_CUT_GMI IParam = C.MSK_IPAR_MIO_CUT_GMI // Controls whether GMI cuts should be generated. + IPAR_MIO_CUT_IMPLIED_BOUND IParam = C.MSK_IPAR_MIO_CUT_IMPLIED_BOUND // Controls whether implied bound cuts should be generated. + IPAR_MIO_CUT_KNAPSACK_COVER IParam = C.MSK_IPAR_MIO_CUT_KNAPSACK_COVER // Controls whether knapsack cover cuts should be generated. + IPAR_MIO_CUT_LIPRO IParam = C.MSK_IPAR_MIO_CUT_LIPRO // Controls whether lift-and-project cuts should be generated. + IPAR_MIO_CUT_SELECTION_LEVEL IParam = C.MSK_IPAR_MIO_CUT_SELECTION_LEVEL // Controls how aggressively generated cuts are selected to be included in the relaxation. + IPAR_MIO_DATA_PERMUTATION_METHOD IParam = C.MSK_IPAR_MIO_DATA_PERMUTATION_METHOD // Controls what problem data permutation method is appplied to mixed-integer problems. + IPAR_MIO_DUAL_RAY_ANALYSIS_LEVEL IParam = C.MSK_IPAR_MIO_DUAL_RAY_ANALYSIS_LEVEL // Controls the amount of dual ray analysis employed by the mixed-integer optimizer in presolve. + IPAR_MIO_FEASPUMP_LEVEL IParam = C.MSK_IPAR_MIO_FEASPUMP_LEVEL // Controls the way the Feasibility Pump heuristic is employed by the mixed-integer optimizer. + IPAR_MIO_HEURISTIC_LEVEL IParam = C.MSK_IPAR_MIO_HEURISTIC_LEVEL // Controls the heuristic employed by the mixed-integer optimizer to locate an initial integer feasible solution. + IPAR_MIO_MAX_NUM_BRANCHES IParam = C.MSK_IPAR_MIO_MAX_NUM_BRANCHES // Maximum number of branches allowed during the branch and bound search. + IPAR_MIO_MAX_NUM_RELAXS IParam = C.MSK_IPAR_MIO_MAX_NUM_RELAXS // Maximum number of relaxations in branch and bound search. + IPAR_MIO_MAX_NUM_RESTARTS IParam = C.MSK_IPAR_MIO_MAX_NUM_RESTARTS // Maximum number of restarts allowed during the branch and bound search. + IPAR_MIO_MAX_NUM_ROOT_CUT_ROUNDS IParam = C.MSK_IPAR_MIO_MAX_NUM_ROOT_CUT_ROUNDS // Maximum number of cut separation rounds at the root node. + IPAR_MIO_MAX_NUM_SOLUTIONS IParam = C.MSK_IPAR_MIO_MAX_NUM_SOLUTIONS // Controls how many feasible solutions the mixed-integer optimizer investigates. + IPAR_MIO_MEMORY_EMPHASIS_LEVEL IParam = C.MSK_IPAR_MIO_MEMORY_EMPHASIS_LEVEL // Controls how much emphasis is put on reducing memory usage. + IPAR_MIO_MIN_REL IParam = C.MSK_IPAR_MIO_MIN_REL // Number of times a variable must have been branched on for its pseudocost to be cosidered reliable. + IPAR_MIO_MODE IParam = C.MSK_IPAR_MIO_MODE // Turns on/off the mixed-integer mode. + IPAR_MIO_NODE_OPTIMIZER IParam = C.MSK_IPAR_MIO_NODE_OPTIMIZER // Controls which optimizer is employed at the non-root nodes in the mixed-integer optimizer. + IPAR_MIO_NODE_SELECTION IParam = C.MSK_IPAR_MIO_NODE_SELECTION // Controls the node selection strategy employed by the mixed-integer optimizer. + IPAR_MIO_NUMERICAL_EMPHASIS_LEVEL IParam = C.MSK_IPAR_MIO_NUMERICAL_EMPHASIS_LEVEL // Controls how much emphasis is put on reducing numerical problems + IPAR_MIO_PERSPECTIVE_REFORMULATE IParam = C.MSK_IPAR_MIO_PERSPECTIVE_REFORMULATE // Enables or disables perspective reformulation in presolve. + IPAR_MIO_PRESOLVE_AGGREGATOR_USE IParam = C.MSK_IPAR_MIO_PRESOLVE_AGGREGATOR_USE // Controls if the aggregator should be used. + IPAR_MIO_PROBING_LEVEL IParam = C.MSK_IPAR_MIO_PROBING_LEVEL // Controls the amount of probing employed by the mixed-integer optimizer in presolve. + IPAR_MIO_PROPAGATE_OBJECTIVE_CONSTRAINT IParam = C.MSK_IPAR_MIO_PROPAGATE_OBJECTIVE_CONSTRAINT // Use objective domain propagation. + IPAR_MIO_QCQO_REFORMULATION_METHOD IParam = C.MSK_IPAR_MIO_QCQO_REFORMULATION_METHOD // Controls what reformulation method is applied to mixed-integer quadratic problems. + IPAR_MIO_RINS_MAX_NODES IParam = C.MSK_IPAR_MIO_RINS_MAX_NODES // Maximum number of nodes in each call to RINS. + IPAR_MIO_ROOT_OPTIMIZER IParam = C.MSK_IPAR_MIO_ROOT_OPTIMIZER // Controls which optimizer is employed at the root node in the mixed-integer optimizer. + IPAR_MIO_ROOT_REPEAT_PRESOLVE_LEVEL IParam = C.MSK_IPAR_MIO_ROOT_REPEAT_PRESOLVE_LEVEL // Controls whether presolve can be repeated at root node. + IPAR_MIO_SEED IParam = C.MSK_IPAR_MIO_SEED // Sets the random seed used for randomization in the mixed integer optimizer. + IPAR_MIO_SYMMETRY_LEVEL IParam = C.MSK_IPAR_MIO_SYMMETRY_LEVEL // Controls the amount of symmetry detection and handling employed by the mixed-integer optimizer in presolve. + IPAR_MIO_VAR_SELECTION IParam = C.MSK_IPAR_MIO_VAR_SELECTION // Controls the variable selection strategy employed by the mixed-integer optimizer. + IPAR_MIO_VB_DETECTION_LEVEL IParam = C.MSK_IPAR_MIO_VB_DETECTION_LEVEL // Controls how much effort is put into detecting variable bounds. + IPAR_MT_SPINCOUNT IParam = C.MSK_IPAR_MT_SPINCOUNT // Set the number of iterations to spin before sleeping. + IPAR_NG IParam = C.MSK_IPAR_NG // Not in use + IPAR_NUM_THREADS IParam = C.MSK_IPAR_NUM_THREADS // The number of threads employed by the optimizer. + IPAR_OPF_WRITE_HEADER IParam = C.MSK_IPAR_OPF_WRITE_HEADER // Write a text header with date and MOSEK version in an OPF file. + IPAR_OPF_WRITE_HINTS IParam = C.MSK_IPAR_OPF_WRITE_HINTS // Write a hint section with problem dimensions in the beginning of an OPF file. + IPAR_OPF_WRITE_LINE_LENGTH IParam = C.MSK_IPAR_OPF_WRITE_LINE_LENGTH // Aim to keep lines in OPF files not much longer than this. + IPAR_OPF_WRITE_PARAMETERS IParam = C.MSK_IPAR_OPF_WRITE_PARAMETERS // Write a parameter section in an OPF file. + IPAR_OPF_WRITE_PROBLEM IParam = C.MSK_IPAR_OPF_WRITE_PROBLEM // Write objective, constraints, bounds etc. to an OPF file. + IPAR_OPF_WRITE_SOL_BAS IParam = C.MSK_IPAR_OPF_WRITE_SOL_BAS // Controls what is written to the OPF files. + IPAR_OPF_WRITE_SOL_ITG IParam = C.MSK_IPAR_OPF_WRITE_SOL_ITG // Controls what is written to the OPF files. + IPAR_OPF_WRITE_SOL_ITR IParam = C.MSK_IPAR_OPF_WRITE_SOL_ITR // Controls what is written to the OPF files. + IPAR_OPF_WRITE_SOLUTIONS IParam = C.MSK_IPAR_OPF_WRITE_SOLUTIONS // Enable inclusion of solutions in the OPF files. + IPAR_OPTIMIZER IParam = C.MSK_IPAR_OPTIMIZER // Controls which optimizer is used to optimize the task. + IPAR_PARAM_READ_CASE_NAME IParam = C.MSK_IPAR_PARAM_READ_CASE_NAME // If turned on, then names in the parameter file are case sensitive. + IPAR_PARAM_READ_IGN_ERROR IParam = C.MSK_IPAR_PARAM_READ_IGN_ERROR // If turned on, then errors in parameter settings is ignored. + IPAR_PRESOLVE_ELIMINATOR_MAX_FILL IParam = C.MSK_IPAR_PRESOLVE_ELIMINATOR_MAX_FILL // Maximum amount of fill-in created in one pivot during the elimination phase. + IPAR_PRESOLVE_ELIMINATOR_MAX_NUM_TRIES IParam = C.MSK_IPAR_PRESOLVE_ELIMINATOR_MAX_NUM_TRIES // Control the maximum number of times the eliminator is tried. + IPAR_PRESOLVE_LEVEL IParam = C.MSK_IPAR_PRESOLVE_LEVEL // Currently not used. + IPAR_PRESOLVE_LINDEP_ABS_WORK_TRH IParam = C.MSK_IPAR_PRESOLVE_LINDEP_ABS_WORK_TRH // Controls linear dependency check in presolve. + IPAR_PRESOLVE_LINDEP_NEW IParam = C.MSK_IPAR_PRESOLVE_LINDEP_NEW // Controls whether whether a new experimental linear dependency checker is employed. + IPAR_PRESOLVE_LINDEP_REL_WORK_TRH IParam = C.MSK_IPAR_PRESOLVE_LINDEP_REL_WORK_TRH // Controls linear dependency check in presolve. + IPAR_PRESOLVE_LINDEP_USE IParam = C.MSK_IPAR_PRESOLVE_LINDEP_USE // Controls whether the linear constraints are checked for linear dependencies. + IPAR_PRESOLVE_MAX_NUM_PASS IParam = C.MSK_IPAR_PRESOLVE_MAX_NUM_PASS // Control the maximum number of times presolve passes over the problem. + IPAR_PRESOLVE_MAX_NUM_REDUCTIONS IParam = C.MSK_IPAR_PRESOLVE_MAX_NUM_REDUCTIONS // Controls the maximum number of reductions performed by the presolve. + IPAR_PRESOLVE_USE IParam = C.MSK_IPAR_PRESOLVE_USE // Controls whether the presolve is applied to a problem before it is optimized. + IPAR_PRIMAL_REPAIR_OPTIMIZER IParam = C.MSK_IPAR_PRIMAL_REPAIR_OPTIMIZER // Controls which optimizer that is used to find the optimal repair. + IPAR_PTF_WRITE_PARAMETERS IParam = C.MSK_IPAR_PTF_WRITE_PARAMETERS // Controls whether parameters section is written in PTF files. + IPAR_PTF_WRITE_SOLUTIONS IParam = C.MSK_IPAR_PTF_WRITE_SOLUTIONS // Controls whether solution section is written in PTF files. + IPAR_PTF_WRITE_TRANSFORM IParam = C.MSK_IPAR_PTF_WRITE_TRANSFORM // Controls if simple transformation are done when writing PTF files. + IPAR_READ_DEBUG IParam = C.MSK_IPAR_READ_DEBUG // Turns on additional debugging information when reading files. + IPAR_READ_KEEP_FREE_CON IParam = C.MSK_IPAR_READ_KEEP_FREE_CON // Controls whether the free constraints are included in the problem. + IPAR_READ_MPS_FORMAT IParam = C.MSK_IPAR_READ_MPS_FORMAT // Controls how strictly the MPS file reader interprets the MPS format. + IPAR_READ_MPS_WIDTH IParam = C.MSK_IPAR_READ_MPS_WIDTH // Controls the maximal number of characters allowed in one line of the MPS file. + IPAR_READ_TASK_IGNORE_PARAM IParam = C.MSK_IPAR_READ_TASK_IGNORE_PARAM // Controls what information is used from the task files. + IPAR_REMOTE_USE_COMPRESSION IParam = C.MSK_IPAR_REMOTE_USE_COMPRESSION // Use compression when sending data to an optimization server + IPAR_REMOVE_UNUSED_SOLUTIONS IParam = C.MSK_IPAR_REMOVE_UNUSED_SOLUTIONS // Removes unused solutions before the optimization is performed. + IPAR_SENSITIVITY_ALL IParam = C.MSK_IPAR_SENSITIVITY_ALL // Controls sensitivity report behavior. + IPAR_SENSITIVITY_OPTIMIZER IParam = C.MSK_IPAR_SENSITIVITY_OPTIMIZER // Controls which optimizer is used for optimal partition sensitivity analysis. + IPAR_SENSITIVITY_TYPE IParam = C.MSK_IPAR_SENSITIVITY_TYPE // Controls which type of sensitivity analysis is to be performed. + IPAR_SIM_BASIS_FACTOR_USE IParam = C.MSK_IPAR_SIM_BASIS_FACTOR_USE // Controls whether an LU factorization of the basis is used in a hot-start. + IPAR_SIM_DEGEN IParam = C.MSK_IPAR_SIM_DEGEN // Controls how aggressively degeneration is handled. + IPAR_SIM_DETECT_PWL IParam = C.MSK_IPAR_SIM_DETECT_PWL // Not in use. + IPAR_SIM_DUAL_CRASH IParam = C.MSK_IPAR_SIM_DUAL_CRASH // Controls whether crashing is performed in the dual simplex optimizer. + IPAR_SIM_DUAL_PHASEONE_METHOD IParam = C.MSK_IPAR_SIM_DUAL_PHASEONE_METHOD // An experimental feature. + IPAR_SIM_DUAL_RESTRICT_SELECTION IParam = C.MSK_IPAR_SIM_DUAL_RESTRICT_SELECTION // Controls how aggressively restricted selection is used. + IPAR_SIM_DUAL_SELECTION IParam = C.MSK_IPAR_SIM_DUAL_SELECTION // Controls the dual simplex strategy. + IPAR_SIM_EXPLOIT_DUPVEC IParam = C.MSK_IPAR_SIM_EXPLOIT_DUPVEC // Controls if the simplex optimizers are allowed to exploit duplicated columns. + IPAR_SIM_HOTSTART IParam = C.MSK_IPAR_SIM_HOTSTART // Controls the type of hot-start that the simplex optimizer perform. + IPAR_SIM_HOTSTART_LU IParam = C.MSK_IPAR_SIM_HOTSTART_LU // Determines if the simplex optimizer should exploit the initial factorization. + IPAR_SIM_MAX_ITERATIONS IParam = C.MSK_IPAR_SIM_MAX_ITERATIONS // Maximum number of iterations that can be used by a simplex optimizer. + IPAR_SIM_MAX_NUM_SETBACKS IParam = C.MSK_IPAR_SIM_MAX_NUM_SETBACKS // Controls how many set-backs that are allowed within a simplex optimizer. + IPAR_SIM_NON_SINGULAR IParam = C.MSK_IPAR_SIM_NON_SINGULAR // Controls if the simplex optimizer ensures a non-singular basis, if possible. + IPAR_SIM_PRIMAL_CRASH IParam = C.MSK_IPAR_SIM_PRIMAL_CRASH // Controls the simplex crash. + IPAR_SIM_PRIMAL_PHASEONE_METHOD IParam = C.MSK_IPAR_SIM_PRIMAL_PHASEONE_METHOD // An experimental feature. + IPAR_SIM_PRIMAL_RESTRICT_SELECTION IParam = C.MSK_IPAR_SIM_PRIMAL_RESTRICT_SELECTION // Controls how aggressively restricted selection is used. + IPAR_SIM_PRIMAL_SELECTION IParam = C.MSK_IPAR_SIM_PRIMAL_SELECTION // Controls the primal simplex strategy. + IPAR_SIM_REFACTOR_FREQ IParam = C.MSK_IPAR_SIM_REFACTOR_FREQ // Controls the basis refactoring frequency. + IPAR_SIM_REFORMULATION IParam = C.MSK_IPAR_SIM_REFORMULATION // Controls if the simplex optimizers are allowed to reformulate the problem. + IPAR_SIM_SAVE_LU IParam = C.MSK_IPAR_SIM_SAVE_LU // Controls if the LU factorization stored should be replaced with the LU factorization corresponding to the initial basis. + IPAR_SIM_SCALING IParam = C.MSK_IPAR_SIM_SCALING // Controls how much effort is used in scaling the problem before a simplex optimizer is used. + IPAR_SIM_SCALING_METHOD IParam = C.MSK_IPAR_SIM_SCALING_METHOD // Controls how the problem is scaled before a simplex optimizer is used. + IPAR_SIM_SEED IParam = C.MSK_IPAR_SIM_SEED // Sets the random seed used for randomization in the simplex optimizers. + IPAR_SIM_SOLVE_FORM IParam = C.MSK_IPAR_SIM_SOLVE_FORM // Controls whether the primal or the dual problem is solved by the primal-/dual-simplex optimizer. + IPAR_SIM_STABILITY_PRIORITY IParam = C.MSK_IPAR_SIM_STABILITY_PRIORITY // Controls how high priority the numerical stability should be given. + IPAR_SIM_SWITCH_OPTIMIZER IParam = C.MSK_IPAR_SIM_SWITCH_OPTIMIZER // Controls the simplex behavior. + IPAR_SOL_FILTER_KEEP_BASIC IParam = C.MSK_IPAR_SOL_FILTER_KEEP_BASIC // Control the contents of the solution files. + IPAR_SOL_FILTER_KEEP_RANGED IParam = C.MSK_IPAR_SOL_FILTER_KEEP_RANGED // Control the contents of the solution files. + IPAR_SOL_READ_NAME_WIDTH IParam = C.MSK_IPAR_SOL_READ_NAME_WIDTH // Controls the input solution file format. + IPAR_SOL_READ_WIDTH IParam = C.MSK_IPAR_SOL_READ_WIDTH // Controls the input solution file format. + IPAR_SOLUTION_CALLBACK IParam = C.MSK_IPAR_SOLUTION_CALLBACK // Indicates whether solution callbacks will be performed during the optimization. + IPAR_TIMING_LEVEL IParam = C.MSK_IPAR_TIMING_LEVEL // Controls the amount of timing performed inside MOSEK. + IPAR_WRITE_BAS_CONSTRAINTS IParam = C.MSK_IPAR_WRITE_BAS_CONSTRAINTS // Controls the basic solution file format. + IPAR_WRITE_BAS_HEAD IParam = C.MSK_IPAR_WRITE_BAS_HEAD // Controls the basic solution file format. + IPAR_WRITE_BAS_VARIABLES IParam = C.MSK_IPAR_WRITE_BAS_VARIABLES // Controls the basic solution file format. + IPAR_WRITE_COMPRESSION IParam = C.MSK_IPAR_WRITE_COMPRESSION // Controls output file compression. + IPAR_WRITE_DATA_PARAM IParam = C.MSK_IPAR_WRITE_DATA_PARAM // Controls output file data. + IPAR_WRITE_FREE_CON IParam = C.MSK_IPAR_WRITE_FREE_CON // Controls the output file data. + IPAR_WRITE_GENERIC_NAMES IParam = C.MSK_IPAR_WRITE_GENERIC_NAMES // Controls the output file data. + IPAR_WRITE_GENERIC_NAMES_IO IParam = C.MSK_IPAR_WRITE_GENERIC_NAMES_IO // Index origin used in generic names. + IPAR_WRITE_IGNORE_INCOMPATIBLE_ITEMS IParam = C.MSK_IPAR_WRITE_IGNORE_INCOMPATIBLE_ITEMS // Controls if the writer ignores incompatible problem items when writing files. + IPAR_WRITE_INT_CONSTRAINTS IParam = C.MSK_IPAR_WRITE_INT_CONSTRAINTS // Controls the integer solution file format. + IPAR_WRITE_INT_HEAD IParam = C.MSK_IPAR_WRITE_INT_HEAD // Controls the integer solution file format. + IPAR_WRITE_INT_VARIABLES IParam = C.MSK_IPAR_WRITE_INT_VARIABLES // Controls the integer solution file format. + IPAR_WRITE_JSON_INDENTATION IParam = C.MSK_IPAR_WRITE_JSON_INDENTATION // When set, the JSON task and solution files are written with indentation for better readability. + IPAR_WRITE_LP_FULL_OBJ IParam = C.MSK_IPAR_WRITE_LP_FULL_OBJ // Write full linear objective + IPAR_WRITE_LP_LINE_WIDTH IParam = C.MSK_IPAR_WRITE_LP_LINE_WIDTH // Controls the LP output file format. + IPAR_WRITE_MPS_FORMAT IParam = C.MSK_IPAR_WRITE_MPS_FORMAT // Controls in which format the MPS is written. + IPAR_WRITE_MPS_INT IParam = C.MSK_IPAR_WRITE_MPS_INT // Controls the output file data. + IPAR_WRITE_SOL_BARVARIABLES IParam = C.MSK_IPAR_WRITE_SOL_BARVARIABLES // Controls the solution file format. + IPAR_WRITE_SOL_CONSTRAINTS IParam = C.MSK_IPAR_WRITE_SOL_CONSTRAINTS // Controls the solution file format. + IPAR_WRITE_SOL_HEAD IParam = C.MSK_IPAR_WRITE_SOL_HEAD // Controls solution file format. + IPAR_WRITE_SOL_IGNORE_INVALID_NAMES IParam = C.MSK_IPAR_WRITE_SOL_IGNORE_INVALID_NAMES // Controls whether the user specified names are employed even if they are invalid names. + IPAR_WRITE_SOL_VARIABLES IParam = C.MSK_IPAR_WRITE_SOL_VARIABLES // Controls the solution file format. + IPAR_WRITE_TASK_INC_SOL IParam = C.MSK_IPAR_WRITE_TASK_INC_SOL // Controls whether the solutions are stored in the task file too. + IPAR_WRITE_XML_MODE IParam = C.MSK_IPAR_WRITE_XML_MODE // Controls if linear coefficients should be written by row or column when writing in the XML file format. ) var _IParam_map = map[IParam]string{ diff --git a/liinfitem_enum.go b/liinfitem_enum.go index 942328c..2473f55 100644 --- a/liinfitem_enum.go +++ b/liinfitem_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // LIInfItem is MSKliinfitem_enum. @@ -11,27 +14,27 @@ import "strconv" type LIInfItem uint32 const ( - LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_COLUMNS LIInfItem = 0 // Number of columns in the scalarized constraint matrix. - LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_NZ LIInfItem = 1 // Number of non-zero entries in the scalarized constraint matrix. - LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_ROWS LIInfItem = 2 // Number of rows in the scalarized constraint matrix. - LIINF_BI_CLEAN_DUAL_DEG_ITER LIInfItem = 3 // Number of dual degenerate clean iterations performed in the basis identification. - LIINF_BI_CLEAN_DUAL_ITER LIInfItem = 4 // Number of dual clean iterations performed in the basis identification. - LIINF_BI_CLEAN_PRIMAL_DEG_ITER LIInfItem = 5 // Number of primal degenerate clean iterations performed in the basis identification. - LIINF_BI_CLEAN_PRIMAL_ITER LIInfItem = 6 // Number of primal clean iterations performed in the basis identification. - LIINF_BI_DUAL_ITER LIInfItem = 7 // Number of dual pivots performed in the basis identification. - LIINF_BI_PRIMAL_ITER LIInfItem = 8 // Number of primal pivots performed in the basis identification. - LIINF_INTPNT_FACTOR_NUM_NZ LIInfItem = 9 // Number of non-zeros in factorization. - LIINF_MIO_ANZ LIInfItem = 10 // Number of non-zero entries in the constraint matrix of the problem to be solved by the mixed-integer optimizer. - LIINF_MIO_INTPNT_ITER LIInfItem = 11 // Number of interior-point iterations performed by the mixed-integer optimizer. - LIINF_MIO_NUM_DUAL_ILLPOSED_CER LIInfItem = 12 // Number of dual illposed certificates encountered by the mixed-integer optimizer. - LIINF_MIO_NUM_PRIM_ILLPOSED_CER LIInfItem = 13 // Number of primal illposed certificates encountered by the mixed-integer optimizer. - LIINF_MIO_PRESOLVED_ANZ LIInfItem = 14 // Number of non-zero entries in the constraint matrix of the problem after the mixed-integer optimizer's presolve. - LIINF_MIO_SIMPLEX_ITER LIInfItem = 15 // Number of simplex iterations performed by the mixed-integer optimizer. - LIINF_RD_NUMACC LIInfItem = 16 // Number of affince conic constraints. - LIINF_RD_NUMANZ LIInfItem = 17 // Number of non-zeros in A that is read. - LIINF_RD_NUMDJC LIInfItem = 18 // Number of disjuncive constraints. - LIINF_RD_NUMQNZ LIInfItem = 19 // Number of Q non-zeros. - LIINF_SIMPLEX_ITER LIInfItem = 20 // Number of iterations performed by the simplex optimizer. + LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_COLUMNS LIInfItem = C.MSK_LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_COLUMNS // Number of columns in the scalarized constraint matrix. + LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_NZ LIInfItem = C.MSK_LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_NZ // Number of non-zero entries in the scalarized constraint matrix. + LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_ROWS LIInfItem = C.MSK_LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_ROWS // Number of rows in the scalarized constraint matrix. + LIINF_BI_CLEAN_DUAL_DEG_ITER LIInfItem = C.MSK_LIINF_BI_CLEAN_DUAL_DEG_ITER // Number of dual degenerate clean iterations performed in the basis identification. + LIINF_BI_CLEAN_DUAL_ITER LIInfItem = C.MSK_LIINF_BI_CLEAN_DUAL_ITER // Number of dual clean iterations performed in the basis identification. + LIINF_BI_CLEAN_PRIMAL_DEG_ITER LIInfItem = C.MSK_LIINF_BI_CLEAN_PRIMAL_DEG_ITER // Number of primal degenerate clean iterations performed in the basis identification. + LIINF_BI_CLEAN_PRIMAL_ITER LIInfItem = C.MSK_LIINF_BI_CLEAN_PRIMAL_ITER // Number of primal clean iterations performed in the basis identification. + LIINF_BI_DUAL_ITER LIInfItem = C.MSK_LIINF_BI_DUAL_ITER // Number of dual pivots performed in the basis identification. + LIINF_BI_PRIMAL_ITER LIInfItem = C.MSK_LIINF_BI_PRIMAL_ITER // Number of primal pivots performed in the basis identification. + LIINF_INTPNT_FACTOR_NUM_NZ LIInfItem = C.MSK_LIINF_INTPNT_FACTOR_NUM_NZ // Number of non-zeros in factorization. + LIINF_MIO_ANZ LIInfItem = C.MSK_LIINF_MIO_ANZ // Number of non-zero entries in the constraint matrix of the problem to be solved by the mixed-integer optimizer. + LIINF_MIO_INTPNT_ITER LIInfItem = C.MSK_LIINF_MIO_INTPNT_ITER // Number of interior-point iterations performed by the mixed-integer optimizer. + LIINF_MIO_NUM_DUAL_ILLPOSED_CER LIInfItem = C.MSK_LIINF_MIO_NUM_DUAL_ILLPOSED_CER // Number of dual illposed certificates encountered by the mixed-integer optimizer. + LIINF_MIO_NUM_PRIM_ILLPOSED_CER LIInfItem = C.MSK_LIINF_MIO_NUM_PRIM_ILLPOSED_CER // Number of primal illposed certificates encountered by the mixed-integer optimizer. + LIINF_MIO_PRESOLVED_ANZ LIInfItem = C.MSK_LIINF_MIO_PRESOLVED_ANZ // Number of non-zero entries in the constraint matrix of the problem after the mixed-integer optimizer's presolve. + LIINF_MIO_SIMPLEX_ITER LIInfItem = C.MSK_LIINF_MIO_SIMPLEX_ITER // Number of simplex iterations performed by the mixed-integer optimizer. + LIINF_RD_NUMACC LIInfItem = C.MSK_LIINF_RD_NUMACC // Number of affince conic constraints. + LIINF_RD_NUMANZ LIInfItem = C.MSK_LIINF_RD_NUMANZ // Number of non-zeros in A that is read. + LIINF_RD_NUMDJC LIInfItem = C.MSK_LIINF_RD_NUMDJC // Number of disjuncive constraints. + LIINF_RD_NUMQNZ LIInfItem = C.MSK_LIINF_RD_NUMQNZ // Number of Q non-zeros. + LIINF_SIMPLEX_ITER LIInfItem = C.MSK_LIINF_SIMPLEX_ITER // Number of iterations performed by the simplex optimizer. ) var _LIInfItem_map = map[LIInfItem]string{ diff --git a/mark_enum.go b/mark_enum.go index 0a9085f..221dc8f 100644 --- a/mark_enum.go +++ b/mark_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Mark is MSKmark_enum. @@ -11,8 +14,8 @@ import "strconv" type Mark uint32 const ( - MARK_LO Mark = 0 // The lower bound is selected for sensitivity analysis. - MARK_UP Mark = 1 // The upper bound is selected for sensitivity analysis. + MARK_LO Mark = C.MSK_MARK_LO // The lower bound is selected for sensitivity analysis. + MARK_UP Mark = C.MSK_MARK_UP // The upper bound is selected for sensitivity analysis. ) var _Mark_map = map[Mark]string{ diff --git a/miocontsoltype_enum.go b/miocontsoltype_enum.go index 47efc46..77f7011 100644 --- a/miocontsoltype_enum.go +++ b/miocontsoltype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MioContSolType is MSKmiocontsoltype_enum. @@ -11,10 +14,10 @@ import "strconv" type MioContSolType uint32 const ( - MIO_CONT_SOL_NONE MioContSolType = 0 // No interior-point or basic solution. - MIO_CONT_SOL_ROOT MioContSolType = 1 // Solutions to the root node problem. - MIO_CONT_SOL_ITG MioContSolType = 2 // A feasible primal solution. - MIO_CONT_SOL_ITG_REL MioContSolType = 3 // A feasible primal solution or a root node solution if the problem is infeasible. + MIO_CONT_SOL_NONE MioContSolType = C.MSK_MIO_CONT_SOL_NONE // No interior-point or basic solution. + MIO_CONT_SOL_ROOT MioContSolType = C.MSK_MIO_CONT_SOL_ROOT // Solutions to the root node problem. + MIO_CONT_SOL_ITG MioContSolType = C.MSK_MIO_CONT_SOL_ITG // A feasible primal solution. + MIO_CONT_SOL_ITG_REL MioContSolType = C.MSK_MIO_CONT_SOL_ITG_REL // A feasible primal solution or a root node solution if the problem is infeasible. ) var _MioContSolType_map = map[MioContSolType]string{ diff --git a/miodatapermmethod_enum.go b/miodatapermmethod_enum.go index 628b6dd..e05e546 100644 --- a/miodatapermmethod_enum.go +++ b/miodatapermmethod_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MioDataPermMethod is MSKmiodatapermmethod_enum. @@ -11,9 +14,9 @@ import "strconv" type MioDataPermMethod uint32 const ( - MIO_DATA_PERMUTATION_METHOD_NONE MioDataPermMethod = 0 // No problem data permutation is applied. - MIO_DATA_PERMUTATION_METHOD_CYCLIC_SHIFT MioDataPermMethod = 1 // A random cyclic shift is applied to permute the problem data. - MIO_DATA_PERMUTATION_METHOD_RANDOM MioDataPermMethod = 2 // A random permutation is applied to the problem data. + MIO_DATA_PERMUTATION_METHOD_NONE MioDataPermMethod = C.MSK_MIO_DATA_PERMUTATION_METHOD_NONE // No problem data permutation is applied. + MIO_DATA_PERMUTATION_METHOD_CYCLIC_SHIFT MioDataPermMethod = C.MSK_MIO_DATA_PERMUTATION_METHOD_CYCLIC_SHIFT // A random cyclic shift is applied to permute the problem data. + MIO_DATA_PERMUTATION_METHOD_RANDOM MioDataPermMethod = C.MSK_MIO_DATA_PERMUTATION_METHOD_RANDOM // A random permutation is applied to the problem data. ) var _MioDataPermMethod_map = map[MioDataPermMethod]string{ diff --git a/miomode_enum.go b/miomode_enum.go index 61d1992..422dd6c 100644 --- a/miomode_enum.go +++ b/miomode_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MioMode is MSKmiomode_enum. @@ -11,8 +14,8 @@ import "strconv" type MioMode uint32 const ( - MIO_MODE_IGNORED MioMode = 0 // The integer constraints are ignored and the problem is solved as a continuous problem. - MIO_MODE_SATISFIED MioMode = 1 // Integer restrictions should be satisfied. + MIO_MODE_IGNORED MioMode = C.MSK_MIO_MODE_IGNORED // The integer constraints are ignored and the problem is solved as a continuous problem. + MIO_MODE_SATISFIED MioMode = C.MSK_MIO_MODE_SATISFIED // Integer restrictions should be satisfied. ) var _MioMode_map = map[MioMode]string{ diff --git a/mionodeseltype_enum.go b/mionodeseltype_enum.go index dc13490..1bdc178 100644 --- a/mionodeseltype_enum.go +++ b/mionodeseltype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MioNodeSelType is MSKmionodeseltype_enum. @@ -11,10 +14,10 @@ import "strconv" type MioNodeSelType uint32 const ( - MIO_NODE_SELECTION_FREE MioNodeSelType = 0 // The optimizer decides the node selection strategy. - MIO_NODE_SELECTION_FIRST MioNodeSelType = 1 // The optimizer employs a depth first node selection strategy. - MIO_NODE_SELECTION_BEST MioNodeSelType = 2 // The optimizer employs a best bound node selection strategy. - MIO_NODE_SELECTION_PSEUDO MioNodeSelType = 3 // The optimizer employs selects the node based on a pseudo cost estimate. + MIO_NODE_SELECTION_FREE MioNodeSelType = C.MSK_MIO_NODE_SELECTION_FREE // The optimizer decides the node selection strategy. + MIO_NODE_SELECTION_FIRST MioNodeSelType = C.MSK_MIO_NODE_SELECTION_FIRST // The optimizer employs a depth first node selection strategy. + MIO_NODE_SELECTION_BEST MioNodeSelType = C.MSK_MIO_NODE_SELECTION_BEST // The optimizer employs a best bound node selection strategy. + MIO_NODE_SELECTION_PSEUDO MioNodeSelType = C.MSK_MIO_NODE_SELECTION_PSEUDO // The optimizer employs selects the node based on a pseudo cost estimate. ) var _MioNodeSelType_map = map[MioNodeSelType]string{ diff --git a/miovarseltype_enum.go b/miovarseltype_enum.go index f622b00..73d36d7 100644 --- a/miovarseltype_enum.go +++ b/miovarseltype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MioVarSelType is MSKmiovarseltype_enum. @@ -11,9 +14,9 @@ import "strconv" type MioVarSelType uint32 const ( - MIO_VAR_SELECTION_FREE MioVarSelType = 0 // The optimizer decides the variable selection strategy. - MIO_VAR_SELECTION_PSEUDOCOST MioVarSelType = 1 // The optimizer employs pseudocost variable selection. - MIO_VAR_SELECTION_STRONG MioVarSelType = 2 // The optimizer employs strong branching variable selection. + MIO_VAR_SELECTION_FREE MioVarSelType = C.MSK_MIO_VAR_SELECTION_FREE // The optimizer decides the variable selection strategy. + MIO_VAR_SELECTION_PSEUDOCOST MioVarSelType = C.MSK_MIO_VAR_SELECTION_PSEUDOCOST // The optimizer employs pseudocost variable selection. + MIO_VAR_SELECTION_STRONG MioVarSelType = C.MSK_MIO_VAR_SELECTION_STRONG // The optimizer employs strong branching variable selection. ) var _MioVarSelType_map = map[MioVarSelType]string{ diff --git a/miqcqoreformmethod_enum.go b/miqcqoreformmethod_enum.go index 0630b0f..466cd5f 100644 --- a/miqcqoreformmethod_enum.go +++ b/miqcqoreformmethod_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MiQcQoReformMethod is MSKmiqcqoreformmethod_enum. @@ -11,12 +14,12 @@ import "strconv" type MiQcQoReformMethod uint32 const ( - MIO_QCQO_REFORMULATION_METHOD_FREE MiQcQoReformMethod = 0 // The mixed-integer optimizer decides which reformulation method to apply. - MIO_QCQO_REFORMULATION_METHOD_NONE MiQcQoReformMethod = 1 // No reformulation method is applied. - MIO_QCQO_REFORMULATION_METHOD_LINEARIZATION MiQcQoReformMethod = 2 // A reformulation via linearization is applied. - MIO_QCQO_REFORMULATION_METHOD_EIGEN_VAL_METHOD MiQcQoReformMethod = 3 // The eigenvalue method is applied. - MIO_QCQO_REFORMULATION_METHOD_DIAG_SDP MiQcQoReformMethod = 4 // A perturbation of matrix diagonals via the solution of SDPs is applied. - MIO_QCQO_REFORMULATION_METHOD_RELAX_SDP MiQcQoReformMethod = 5 // A Reformulation based on the solution of an SDP-relaxation of the problem is applied. + MIO_QCQO_REFORMULATION_METHOD_FREE MiQcQoReformMethod = C.MSK_MIO_QCQO_REFORMULATION_METHOD_FREE // The mixed-integer optimizer decides which reformulation method to apply. + MIO_QCQO_REFORMULATION_METHOD_NONE MiQcQoReformMethod = C.MSK_MIO_QCQO_REFORMULATION_METHOD_NONE // No reformulation method is applied. + MIO_QCQO_REFORMULATION_METHOD_LINEARIZATION MiQcQoReformMethod = C.MSK_MIO_QCQO_REFORMULATION_METHOD_LINEARIZATION // A reformulation via linearization is applied. + MIO_QCQO_REFORMULATION_METHOD_EIGEN_VAL_METHOD MiQcQoReformMethod = C.MSK_MIO_QCQO_REFORMULATION_METHOD_EIGEN_VAL_METHOD // The eigenvalue method is applied. + MIO_QCQO_REFORMULATION_METHOD_DIAG_SDP MiQcQoReformMethod = C.MSK_MIO_QCQO_REFORMULATION_METHOD_DIAG_SDP // A perturbation of matrix diagonals via the solution of SDPs is applied. + MIO_QCQO_REFORMULATION_METHOD_RELAX_SDP MiQcQoReformMethod = C.MSK_MIO_QCQO_REFORMULATION_METHOD_RELAX_SDP // A Reformulation based on the solution of an SDP-relaxation of the problem is applied. ) var _MiQcQoReformMethod_map = map[MiQcQoReformMethod]string{ diff --git a/mpsformat_enum.go b/mpsformat_enum.go index 61c3654..f0ea9a7 100644 --- a/mpsformat_enum.go +++ b/mpsformat_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // MPSFormat is MSKmpsformat_enum. @@ -11,10 +14,10 @@ import "strconv" type MPSFormat uint32 const ( - MPS_FORMAT_STRICT MPSFormat = 0 // It is assumed that the input file satisfies the MPS format strictly. - MPS_FORMAT_RELAXED MPSFormat = 1 // It is assumed that the input file satisfies a slightly relaxed version of the MPS format. - MPS_FORMAT_FREE MPSFormat = 2 // It is assumed that the input file satisfies the free MPS format. This implies that spaces are not allowed in names. Otherwise the format is free. - MPS_FORMAT_CPLEX MPSFormat = 3 // The CPLEX compatible version of the MPS format is employed. + MPS_FORMAT_STRICT MPSFormat = C.MSK_MPS_FORMAT_STRICT // It is assumed that the input file satisfies the MPS format strictly. + MPS_FORMAT_RELAXED MPSFormat = C.MSK_MPS_FORMAT_RELAXED // It is assumed that the input file satisfies a slightly relaxed version of the MPS format. + MPS_FORMAT_FREE MPSFormat = C.MSK_MPS_FORMAT_FREE // It is assumed that the input file satisfies the free MPS format. This implies that spaces are not allowed in names. Otherwise the format is free. + MPS_FORMAT_CPLEX MPSFormat = C.MSK_MPS_FORMAT_CPLEX // The CPLEX compatible version of the MPS format is employed. ) var _MPSFormat_map = map[MPSFormat]string{ diff --git a/nametype_enum.go b/nametype_enum.go index 6ee4a44..68b6c72 100644 --- a/nametype_enum.go +++ b/nametype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // NameType is MSKnametype_enum. @@ -11,9 +14,9 @@ import "strconv" type NameType uint32 const ( - NAME_TYPE_GEN NameType = 0 // General names. However, no duplicate and blank names are allowed. - NAME_TYPE_MPS NameType = 1 // MPS type names. - NAME_TYPE_LP NameType = 2 // LP type names. + NAME_TYPE_GEN NameType = C.MSK_NAME_TYPE_GEN // General names. However, no duplicate and blank names are allowed. + NAME_TYPE_MPS NameType = C.MSK_NAME_TYPE_MPS // MPS type names. + NAME_TYPE_LP NameType = C.MSK_NAME_TYPE_LP // LP type names. ) var _NameType_map = map[NameType]string{ diff --git a/objsense_enum.go b/objsense_enum.go index 5cd2290..787ef2e 100644 --- a/objsense_enum.go +++ b/objsense_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ObjectiveSense is MSKobjsense_enum. @@ -11,8 +14,8 @@ import "strconv" type ObjectiveSense uint32 const ( - OBJECTIVE_SENSE_MINIMIZE ObjectiveSense = 0 // The problem should be minimized. - OBJECTIVE_SENSE_MAXIMIZE ObjectiveSense = 1 // The problem should be maximized. + OBJECTIVE_SENSE_MINIMIZE ObjectiveSense = C.MSK_OBJECTIVE_SENSE_MINIMIZE // The problem should be minimized. + OBJECTIVE_SENSE_MAXIMIZE ObjectiveSense = C.MSK_OBJECTIVE_SENSE_MAXIMIZE // The problem should be maximized. ) var _ObjectiveSense_map = map[ObjectiveSense]string{ diff --git a/onoffkey_enum.go b/onoffkey_enum.go index 7f4a15e..188cead 100644 --- a/onoffkey_enum.go +++ b/onoffkey_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + // OnOff is MSKonoffkey_enum. // // This is alias of int32, because golang distinguishes @@ -10,6 +13,6 @@ package gmsk type OnOff = int32 const ( - OFF OnOff = 0 // Switch the option off. - ON OnOff = 1 // Switch the option on. + OFF OnOff = C.MSK_OFF // Switch the option off. + ON OnOff = C.MSK_ON // Switch the option on. ) diff --git a/optimizertype_enum.go b/optimizertype_enum.go index e44b8bd..1d7cf95 100644 --- a/optimizertype_enum.go +++ b/optimizertype_enum.go @@ -3,17 +3,20 @@ package gmsk +// #include +import "C" + // OptimizerType is MSKoptimizertype_enum. // // can be set for the integer parameter [IPAR_OPTIMIZER] type OptimizerType = int32 const ( - OPTIMIZER_CONIC OptimizerType = 0 // The optimizer for problems having conic constraints. - OPTIMIZER_DUAL_SIMPLEX OptimizerType = 1 // The dual simplex optimizer is used. - OPTIMIZER_FREE OptimizerType = 2 // The optimizer is chosen automatically. - OPTIMIZER_FREE_SIMPLEX OptimizerType = 3 // One of the simplex optimizers is used. - OPTIMIZER_INTPNT OptimizerType = 4 // The interior-point optimizer is used. - OPTIMIZER_MIXED_INT OptimizerType = 5 // The mixed-integer optimizer. - OPTIMIZER_PRIMAL_SIMPLEX OptimizerType = 6 // The primal simplex optimizer is used. + OPTIMIZER_CONIC OptimizerType = C.MSK_OPTIMIZER_CONIC // The optimizer for problems having conic constraints. + OPTIMIZER_DUAL_SIMPLEX OptimizerType = C.MSK_OPTIMIZER_DUAL_SIMPLEX // The dual simplex optimizer is used. + OPTIMIZER_FREE OptimizerType = C.MSK_OPTIMIZER_FREE // The optimizer is chosen automatically. + OPTIMIZER_FREE_SIMPLEX OptimizerType = C.MSK_OPTIMIZER_FREE_SIMPLEX // One of the simplex optimizers is used. + OPTIMIZER_INTPNT OptimizerType = C.MSK_OPTIMIZER_INTPNT // The interior-point optimizer is used. + OPTIMIZER_MIXED_INT OptimizerType = C.MSK_OPTIMIZER_MIXED_INT // The mixed-integer optimizer. + OPTIMIZER_PRIMAL_SIMPLEX OptimizerType = C.MSK_OPTIMIZER_PRIMAL_SIMPLEX // The primal simplex optimizer is used. ) diff --git a/orderingtype_enum.go b/orderingtype_enum.go index 8cc9bf0..b53f7ef 100644 --- a/orderingtype_enum.go +++ b/orderingtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // OrderingType is MSKorderingtype_enum. @@ -11,12 +14,12 @@ import "strconv" type OrderingType uint32 const ( - ORDER_METHOD_FREE OrderingType = 0 // The ordering method is chosen automatically. - ORDER_METHOD_APPMINLOC OrderingType = 1 // Approximate minimum local fill-in ordering is employed. - ORDER_METHOD_EXPERIMENTAL OrderingType = 2 // This option should not be used. - ORDER_METHOD_TRY_GRAPHPAR OrderingType = 3 // Always try the graph partitioning based ordering. - ORDER_METHOD_FORCE_GRAPHPAR OrderingType = 4 // Always use the graph partitioning based ordering even if it is worse than the approximate minimum local fill ordering. - ORDER_METHOD_NONE OrderingType = 5 // No ordering is used. Note using this value almost always leads to a significantly slow down. + ORDER_METHOD_FREE OrderingType = C.MSK_ORDER_METHOD_FREE // The ordering method is chosen automatically. + ORDER_METHOD_APPMINLOC OrderingType = C.MSK_ORDER_METHOD_APPMINLOC // Approximate minimum local fill-in ordering is employed. + ORDER_METHOD_EXPERIMENTAL OrderingType = C.MSK_ORDER_METHOD_EXPERIMENTAL // This option should not be used. + ORDER_METHOD_TRY_GRAPHPAR OrderingType = C.MSK_ORDER_METHOD_TRY_GRAPHPAR // Always try the graph partitioning based ordering. + ORDER_METHOD_FORCE_GRAPHPAR OrderingType = C.MSK_ORDER_METHOD_FORCE_GRAPHPAR // Always use the graph partitioning based ordering even if it is worse than the approximate minimum local fill ordering. + ORDER_METHOD_NONE OrderingType = C.MSK_ORDER_METHOD_NONE // No ordering is used. Note using this value almost always leads to a significantly slow down. ) var _OrderingType_map = map[OrderingType]string{ diff --git a/parametertype_enum.go b/parametertype_enum.go index 1065c81..c1d73c8 100644 --- a/parametertype_enum.go +++ b/parametertype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ParameterType is MSKparametertype_enum. @@ -11,10 +14,10 @@ import "strconv" type ParameterType uint32 const ( - PAR_INVALID_TYPE ParameterType = 0 // Not a valid parameter. - PAR_DOU_TYPE ParameterType = 1 // Is a double parameter. - PAR_INT_TYPE ParameterType = 2 // Is an integer parameter. - PAR_STR_TYPE ParameterType = 3 // Is a string parameter. + PAR_INVALID_TYPE ParameterType = C.MSK_PAR_INVALID_TYPE // Not a valid parameter. + PAR_DOU_TYPE ParameterType = C.MSK_PAR_DOU_TYPE // Is a double parameter. + PAR_INT_TYPE ParameterType = C.MSK_PAR_INT_TYPE // Is an integer parameter. + PAR_STR_TYPE ParameterType = C.MSK_PAR_STR_TYPE // Is a string parameter. ) var _ParameterType_map = map[ParameterType]string{ diff --git a/presolvemode_enum.go b/presolvemode_enum.go index e450a5c..d6e48bf 100644 --- a/presolvemode_enum.go +++ b/presolvemode_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // PresolveMode is MSKpresolvemode_enum. @@ -11,9 +14,9 @@ import "strconv" type PresolveMode uint32 const ( - PRESOLVE_MODE_OFF PresolveMode = 0 // The problem is not presolved before it is optimized. - PRESOLVE_MODE_ON PresolveMode = 1 // The problem is presolved before it is optimized. - PRESOLVE_MODE_FREE PresolveMode = 2 // It is decided automatically whether to presolve before the problem is optimized. + PRESOLVE_MODE_OFF PresolveMode = C.MSK_PRESOLVE_MODE_OFF // The problem is not presolved before it is optimized. + PRESOLVE_MODE_ON PresolveMode = C.MSK_PRESOLVE_MODE_ON // The problem is presolved before it is optimized. + PRESOLVE_MODE_FREE PresolveMode = C.MSK_PRESOLVE_MODE_FREE // It is decided automatically whether to presolve before the problem is optimized. ) var _PresolveMode_map = map[PresolveMode]string{ diff --git a/problemitem_enum.go b/problemitem_enum.go index 804cf08..0ebc070 100644 --- a/problemitem_enum.go +++ b/problemitem_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ProblemItem is MSKproblemitem_enum. @@ -11,9 +14,9 @@ import "strconv" type ProblemItem uint32 const ( - PI_VAR ProblemItem = 0 // Item is a variable. - PI_CON ProblemItem = 1 // Item is a constraint. - PI_CONE ProblemItem = 2 // Item is a cone. + PI_VAR ProblemItem = C.MSK_PI_VAR // Item is a variable. + PI_CON ProblemItem = C.MSK_PI_CON // Item is a constraint. + PI_CONE ProblemItem = C.MSK_PI_CONE // Item is a cone. ) var _ProblemItem_map = map[ProblemItem]string{ diff --git a/problemtype_enum.go b/problemtype_enum.go index bcd310c..22ff707 100644 --- a/problemtype_enum.go +++ b/problemtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ProblemType is MSKproblemtype_enum. @@ -11,11 +14,11 @@ import "strconv" type ProblemType uint32 const ( - PROBTYPE_LO ProblemType = 0 // The problem is a linear optimization problem. - PROBTYPE_QO ProblemType = 1 // The problem is a quadratic optimization problem. - PROBTYPE_QCQO ProblemType = 2 // The problem is a quadratically constrained optimization problem. - PROBTYPE_CONIC ProblemType = 3 // A conic optimization. - PROBTYPE_MIXED ProblemType = 4 // General nonlinear constraints and conic constraints. This combination can not be solved by MOSEK. + PROBTYPE_LO ProblemType = C.MSK_PROBTYPE_LO // The problem is a linear optimization problem. + PROBTYPE_QO ProblemType = C.MSK_PROBTYPE_QO // The problem is a quadratic optimization problem. + PROBTYPE_QCQO ProblemType = C.MSK_PROBTYPE_QCQO // The problem is a quadratically constrained optimization problem. + PROBTYPE_CONIC ProblemType = C.MSK_PROBTYPE_CONIC // A conic optimization. + PROBTYPE_MIXED ProblemType = C.MSK_PROBTYPE_MIXED // General nonlinear constraints and conic constraints. This combination can not be solved by MOSEK. ) var _ProblemType_map = map[ProblemType]string{ diff --git a/prosta_enum.go b/prosta_enum.go index acaf8fb..e7e07b6 100644 --- a/prosta_enum.go +++ b/prosta_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ProSta is MSKprosta_enum. @@ -11,15 +14,15 @@ import "strconv" type ProSta uint32 const ( - PRO_STA_UNKNOWN ProSta = 0 // Unknown problem status. - PRO_STA_PRIM_AND_DUAL_FEAS ProSta = 1 // The problem is primal and dual feasible. - PRO_STA_PRIM_FEAS ProSta = 2 // The problem is primal feasible. - PRO_STA_DUAL_FEAS ProSta = 3 // The problem is dual feasible. - PRO_STA_PRIM_INFEAS ProSta = 4 // The problem is primal infeasible. - PRO_STA_DUAL_INFEAS ProSta = 5 // The problem is dual infeasible. - PRO_STA_PRIM_AND_DUAL_INFEAS ProSta = 6 // The problem is primal and dual infeasible. - PRO_STA_ILL_POSED ProSta = 7 // The problem is ill-posed. For example, it may be primal and dual feasible but have a positive duality gap. - PRO_STA_PRIM_INFEAS_OR_UNBOUNDED ProSta = 8 // The problem is either primal infeasible or unbounded. This may occur for mixed-integer problems. + PRO_STA_UNKNOWN ProSta = C.MSK_PRO_STA_UNKNOWN // Unknown problem status. + PRO_STA_PRIM_AND_DUAL_FEAS ProSta = C.MSK_PRO_STA_PRIM_AND_DUAL_FEAS // The problem is primal and dual feasible. + PRO_STA_PRIM_FEAS ProSta = C.MSK_PRO_STA_PRIM_FEAS // The problem is primal feasible. + PRO_STA_DUAL_FEAS ProSta = C.MSK_PRO_STA_DUAL_FEAS // The problem is dual feasible. + PRO_STA_PRIM_INFEAS ProSta = C.MSK_PRO_STA_PRIM_INFEAS // The problem is primal infeasible. + PRO_STA_DUAL_INFEAS ProSta = C.MSK_PRO_STA_DUAL_INFEAS // The problem is dual infeasible. + PRO_STA_PRIM_AND_DUAL_INFEAS ProSta = C.MSK_PRO_STA_PRIM_AND_DUAL_INFEAS // The problem is primal and dual infeasible. + PRO_STA_ILL_POSED ProSta = C.MSK_PRO_STA_ILL_POSED // The problem is ill-posed. For example, it may be primal and dual feasible but have a positive duality gap. + PRO_STA_PRIM_INFEAS_OR_UNBOUNDED ProSta = C.MSK_PRO_STA_PRIM_INFEAS_OR_UNBOUNDED // The problem is either primal infeasible or unbounded. This may occur for mixed-integer problems. ) var _ProSta_map = map[ProSta]string{ diff --git a/purify_enum.go b/purify_enum.go index ba8f05a..6324a03 100644 --- a/purify_enum.go +++ b/purify_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Purify is MSKpurify_enum. @@ -11,11 +14,11 @@ import "strconv" type Purify uint32 const ( - PURIFY_NONE Purify = 0 // The optimizer performs no solution purification. - PURIFY_PRIMAL Purify = 1 // The optimizer purifies the primal solution. - PURIFY_DUAL Purify = 2 // The optimizer purifies the dual solution. - PURIFY_PRIMAL_DUAL Purify = 3 // The optimizer purifies both the primal and dual solution. - PURIFY_AUTO Purify = 4 // TBD + PURIFY_NONE Purify = C.MSK_PURIFY_NONE // The optimizer performs no solution purification. + PURIFY_PRIMAL Purify = C.MSK_PURIFY_PRIMAL // The optimizer purifies the primal solution. + PURIFY_DUAL Purify = C.MSK_PURIFY_DUAL // The optimizer purifies the dual solution. + PURIFY_PRIMAL_DUAL Purify = C.MSK_PURIFY_PRIMAL_DUAL // The optimizer purifies both the primal and dual solution. + PURIFY_AUTO Purify = C.MSK_PURIFY_AUTO // TBD ) var _Purify_map = map[Purify]string{ diff --git a/res/codes.go b/res/codes.go index 9af3868..803e1e2 100644 --- a/res/codes.go +++ b/res/codes.go @@ -3,6 +3,9 @@ package res +// #include +import "C" + import "strconv" // Code is MSKrescode_enum. @@ -11,551 +14,551 @@ import "strconv" type Code uint32 const ( - OK Code = 0 // No error occurred. - WRN_OPEN_PARAM_FILE Code = 50 // The parameter file could not be opened. - WRN_LARGE_BOUND Code = 51 // A numerically large bound value is specified. - WRN_LARGE_LO_BOUND Code = 52 // A numerically large lower bound value is specified. - WRN_LARGE_UP_BOUND Code = 53 // A numerically large upper bound value is specified. - WRN_LARGE_CON_FX Code = 54 // A equality constraint is fixed to numerically large value. - WRN_LARGE_CJ Code = 57 // A numerically large value is specified for one element in c. - WRN_LARGE_AIJ Code = 62 // A numerically large value is specified for an element in A. - WRN_ZERO_AIJ Code = 63 // One or more zero elements are specified in A. - WRN_NAME_MAX_LEN Code = 65 // A name is longer than the buffer that is supposed to hold it. - WRN_SPAR_MAX_LEN Code = 66 // A value for a string parameter is longer than the buffer that is supposed to hold it. - WRN_MPS_SPLIT_RHS_VECTOR Code = 70 // An RHS vector is split into several nonadjacent parts. - WRN_MPS_SPLIT_RAN_VECTOR Code = 71 // A RANGE vector is split into several nonadjacent parts in an MPS file. - WRN_MPS_SPLIT_BOU_VECTOR Code = 72 // A BOUNDS vector is split into several nonadjacent parts in an MPS file. - WRN_LP_OLD_QUAD_FORMAT Code = 80 // Missing '/2' after quadratic expressions in bound or objective. - WRN_LP_DROP_VARIABLE Code = 85 // Ignore a variable because the variable was not previously defined. - WRN_NZ_IN_UPR_TRI Code = 200 // Non-zero elements specified in the upper triangle of a matrix were ignored. - WRN_DROPPED_NZ_QOBJ Code = 201 // One or more non-zero elements were dropped in the Q matrix in the objective. - WRN_IGNORE_INTEGER Code = 250 // Ignored integer constraints. - WRN_NO_GLOBAL_OPTIMIZER Code = 251 // No global optimizer is available. - WRN_MIO_INFEASIBLE_FINAL Code = 270 // The final mixed-integer problem with all the integer variables fixed at their optimal values is infeasible. - WRN_SOL_FILTER Code = 300 // Invalid solution filter is specified. - WRN_UNDEF_SOL_FILE_NAME Code = 350 // Undefined name occurred in a solution. - WRN_SOL_FILE_IGNORED_CON Code = 351 // One or more lines in the constraint section were ignored when reading a solution file. - WRN_SOL_FILE_IGNORED_VAR Code = 352 // One or more lines in the variable section were ignored when reading a solution file. - WRN_TOO_FEW_BASIS_VARS Code = 400 // An incomplete basis is specified. - WRN_TOO_MANY_BASIS_VARS Code = 405 // A basis with too many variables is specified. - WRN_LICENSE_EXPIRE Code = 500 // The license expires. - WRN_LICENSE_SERVER Code = 501 // The license server is not responding. - WRN_EMPTY_NAME Code = 502 // A variable or constraint name is empty. The output file may be invalid. - WRN_USING_GENERIC_NAMES Code = 503 // Generic names are used because a name is invalid for requested format. - WRN_INVALID_MPS_NAME Code = 504 // A name e.g. a row name is not a valid MPS name. - WRN_INVALID_MPS_OBJ_NAME Code = 505 // The objective name is not a valid MPS name. - WRN_LICENSE_FEATURE_EXPIRE Code = 509 // The license expires. - WRN_PARAM_NAME_DOU Code = 510 // Parameter name not recognized. - WRN_PARAM_NAME_INT Code = 511 // Parameter name not recognized. - WRN_PARAM_NAME_STR Code = 512 // Parameter name not recognized. - WRN_PARAM_STR_VALUE Code = 515 // A parameter value is not correct. - WRN_PARAM_IGNORED_CMIO Code = 516 // A parameter was ignored by the conic mixed integer optimizer. - WRN_ZEROS_IN_SPARSE_ROW Code = 705 // One or more (near) zero elements are specified in a sparse row of a matrix. - WRN_ZEROS_IN_SPARSE_COL Code = 710 // One or more (near) zero elements are specified in a sparse column of a matrix. - WRN_INCOMPLETE_LINEAR_DEPENDENCY_CHECK Code = 800 // The linear dependency check(s) is incomplete. - WRN_ELIMINATOR_SPACE Code = 801 // The eliminator is skipped at least once due to lack of space. - WRN_PRESOLVE_OUTOFSPACE Code = 802 // The presolve is incomplete due to lack of space. - WRN_PRESOLVE_PRIMAL_PERTUBATIONS Code = 803 // The presolve perturbed the bounds of the primal problem. This is an indication that the problem is nearly infeasible. - WRN_WRITE_CHANGED_NAMES Code = 830 // Some names were changed because they were invalid for the output file format. - WRN_WRITE_DISCARDED_CFIX Code = 831 // The fixed objective term was discarded in the output file. - WRN_DUPLICATE_CONSTRAINT_NAMES Code = 850 // Two constraint names are identical. - WRN_DUPLICATE_VARIABLE_NAMES Code = 851 // Two variable names are identical. - WRN_DUPLICATE_BARVARIABLE_NAMES Code = 852 // Two barvariable names are identical. - WRN_DUPLICATE_CONE_NAMES Code = 853 // Two cone names are identical. - WRN_WRITE_LP_INVALID_VAR_NAMES Code = 854 // LP file will be written with generic variable names. - WRN_WRITE_LP_DUPLICATE_VAR_NAMES Code = 855 // LP file will be written with generic variable names. - WRN_WRITE_LP_INVALID_CON_NAMES Code = 856 // LP file will be written with generic constraint names. - WRN_WRITE_LP_DUPLICATE_CON_NAMES Code = 857 // LP file will be written with generic constraint names. - WRN_ANA_LARGE_BOUNDS Code = 900 // Warn against very large bounds. - WRN_ANA_C_ZERO Code = 901 // Warn against all objective coefficients being zero. - WRN_ANA_EMPTY_COLS Code = 902 // Warn against empty columns. - WRN_ANA_CLOSE_BOUNDS Code = 903 // Warn against close bounds. - WRN_ANA_ALMOST_INT_BOUNDS Code = 904 // Warn against almost integral bounds. - WRN_NO_INFEASIBILITY_REPORT_WHEN_MATRIX_VARIABLES Code = 930 // An infeasibility report is not available when the problem contains matrix variables. - WRN_NO_DUALIZER Code = 950 // No automatic dualizer is available for the specified problem. - WRN_SYM_MAT_LARGE Code = 960 // A numerically large value is specified for an element in E. - WRN_MODIFIED_DOUBLE_PARAMETER Code = 970 // A double parameter related to solver tolerances has a non-default value. - WRN_LARGE_FIJ Code = 980 // A numerically large value is specified for an element in F. - ERR_LICENSE Code = 1000 // Invalid license. - ERR_LICENSE_EXPIRED Code = 1001 // The license has expired. - ERR_LICENSE_VERSION Code = 1002 // Invalid license version. - ERR_LICENSE_OLD_SERVER_VERSION Code = 1003 // The license server version is too old. - ERR_SIZE_LICENSE Code = 1005 // The problem is bigger than the license. - ERR_PROB_LICENSE Code = 1006 // The software is not licensed to solve the problem. - ERR_FILE_LICENSE Code = 1007 // Invalid license file. - ERR_MISSING_LICENSE_FILE Code = 1008 // A license cannot be located. - ERR_SIZE_LICENSE_CON Code = 1010 // The problem has too many constraints. - ERR_SIZE_LICENSE_VAR Code = 1011 // The problem has too many variables. - ERR_SIZE_LICENSE_INTVAR Code = 1012 // The problem contains too many integer variables. - ERR_OPTIMIZER_LICENSE Code = 1013 // The optimizer required is not licensed. - ERR_FLEXLM Code = 1014 // The license manager reported an error. - ERR_LICENSE_SERVER Code = 1015 // The license server is not responding. - ERR_LICENSE_MAX Code = 1016 // Maximum number of licenses is reached. - ERR_LICENSE_MOSEKLM_DAEMON Code = 1017 // The MOSEKLM license manager daemon is not up and running. - ERR_LICENSE_FEATURE Code = 1018 // A requested feature is not available in the license file(s). - ERR_PLATFORM_NOT_LICENSED Code = 1019 // A requested license feature is not available for the required platform. - ERR_LICENSE_CANNOT_ALLOCATE Code = 1020 // The license system cannot allocate the memory required. - ERR_LICENSE_CANNOT_CONNECT Code = 1021 // MOSEK cannot connect to the license server. - ERR_LICENSE_INVALID_HOSTID Code = 1025 // The host ID specified in the license file does not match the host ID of the computer. - ERR_LICENSE_SERVER_VERSION Code = 1026 // The version specified in the checkout request is greater than the highest version number the daemon supports. - ERR_LICENSE_NO_SERVER_SUPPORT Code = 1027 // The license server does not support the requested feature. - ERR_LICENSE_NO_SERVER_LINE Code = 1028 // No SERVER lines in license file. - ERR_OLDER_DLL Code = 1035 // The dynamic link library is older than the specified version. - ERR_NEWER_DLL Code = 1036 // The dynamic link library is newer than the specified version. - ERR_LINK_FILE_DLL Code = 1040 // A file cannot be linked to a stream in the DLL version. - ERR_THREAD_MUTEX_INIT Code = 1045 // Could not initialize a mutex. - ERR_THREAD_MUTEX_LOCK Code = 1046 // Could not lock a mutex. - ERR_THREAD_MUTEX_UNLOCK Code = 1047 // Could not unlock a mutex. - ERR_THREAD_CREATE Code = 1048 // Could not create a thread. - ERR_THREAD_COND_INIT Code = 1049 // Could not initialize a condition. - ERR_UNKNOWN Code = 1050 // Unknown error. - ERR_SPACE Code = 1051 // Out of space. - ERR_FILE_OPEN Code = 1052 // An error occurred while opening a file. - ERR_FILE_READ Code = 1053 // An error occurred while reading file. - ERR_FILE_WRITE Code = 1054 // An error occurred while writing to a file. - ERR_DATA_FILE_EXT Code = 1055 // The data file format cannot be determined from the file name. - ERR_INVALID_FILE_NAME Code = 1056 // An invalid file name has been specified. - ERR_INVALID_SOL_FILE_NAME Code = 1057 // An invalid file name has been specified. - ERR_END_OF_FILE Code = 1059 // End of file reached. - ERR_NULL_ENV Code = 1060 // env is a null pointer. - ERR_NULL_TASK Code = 1061 // task is a null pointer. - ERR_INVALID_STREAM Code = 1062 // An invalid stream is referenced. - ERR_NO_INIT_ENV Code = 1063 // Environment is not initialized. - ERR_INVALID_TASK Code = 1064 // The task is invalid. - ERR_NULL_POINTER Code = 1065 // An argument to a function is unexpectedly a null pointer. - ERR_LIVING_TASKS Code = 1066 // Not all tasks associated with the environment have been deleted. - ERR_READ_GZIP Code = 1067 // Error encountered in GZIP stream. - ERR_READ_ZSTD Code = 1068 // Error encountered in ZSTD stream. - ERR_BLANK_NAME Code = 1070 // An all blank name has been specified. - ERR_DUP_NAME Code = 1071 // Duplicate names specified. - ERR_FORMAT_STRING Code = 1072 // The name format string is invalid. - ERR_SPARSITY_SPECIFICATION Code = 1073 // The sparsity included an index that was out of bounds of the shape. - ERR_MISMATCHING_DIMENSION Code = 1074 // Mismatching dimensions specified in arguments - ERR_INVALID_OBJ_NAME Code = 1075 // An invalid objective name is specified. - ERR_INVALID_CON_NAME Code = 1076 // An invalid constraint name is used. - ERR_INVALID_VAR_NAME Code = 1077 // An invalid variable name is used. - ERR_INVALID_CONE_NAME Code = 1078 // An invalid cone name is used. - ERR_INVALID_BARVAR_NAME Code = 1079 // An invalid symmetric matrix variable name is used. - ERR_SPACE_LEAKING Code = 1080 // MOSEK is leaking memory. - ERR_SPACE_NO_INFO Code = 1081 // No available information about the space usage. - ERR_DIMENSION_SPECIFICATION Code = 1082 // Invalid dimension specification - ERR_AXIS_NAME_SPECIFICATION Code = 1083 // Invalid axis names specification - ERR_READ_FORMAT Code = 1090 // The specified format cannot be read. - ERR_MPS_FILE Code = 1100 // An error occurred while reading an MPS file. - ERR_MPS_INV_FIELD Code = 1101 // Invalid field occurred while reading an MPS file. - ERR_MPS_INV_MARKER Code = 1102 // An invalid marker has been specified in the MPS file. - ERR_MPS_NULL_CON_NAME Code = 1103 // An empty constraint name is used in an MPS file. - ERR_MPS_NULL_VAR_NAME Code = 1104 // An empty variable name is used in an MPS file. - ERR_MPS_UNDEF_CON_NAME Code = 1105 // An undefined constraint name occurred in an MPS file. - ERR_MPS_UNDEF_VAR_NAME Code = 1106 // An undefined variable name occurred in an MPS file. - ERR_MPS_INVALID_CON_KEY Code = 1107 // An invalid constraint key occurred in an MPS file. - ERR_MPS_INVALID_BOUND_KEY Code = 1108 // An invalid bound key occurred in an MPS file. - ERR_MPS_INVALID_SEC_NAME Code = 1109 // An invalid section name occurred in an MPS file. - ERR_MPS_NO_OBJECTIVE Code = 1110 // No objective is defined in an MPS file. - ERR_MPS_SPLITTED_VAR Code = 1111 // The non-zero elements in A corresponding to a variable in an MPS file must be specified consecutively. - ERR_MPS_MUL_CON_NAME Code = 1112 // A constraint name is specified multiple times in the ROWS section in an MPS file. - ERR_MPS_MUL_QSEC Code = 1113 // Multiple QSECTIONs are specified for a constraint. - ERR_MPS_MUL_QOBJ Code = 1114 // The Q term in the objective is specified multiple times. - ERR_MPS_INV_SEC_ORDER Code = 1115 // The sections in an MPS file is not in the correct order. - ERR_MPS_MUL_CSEC Code = 1116 // Multiple CSECTIONs are given the same name. - ERR_MPS_CONE_TYPE Code = 1117 // Invalid cone type specified in a CSECTION. - ERR_MPS_CONE_OVERLAP Code = 1118 // A variable is specified to be a member of several cones. - ERR_MPS_CONE_REPEAT Code = 1119 // A variable is repeated within the CSECTION. - ERR_MPS_NON_SYMMETRIC_Q Code = 1120 // A non symmetric matrix has been speciefied. - ERR_MPS_DUPLICATE_Q_ELEMENT Code = 1121 // Duplicate elements is specified in a Q matrix. - ERR_MPS_INVALID_OBJSENSE Code = 1122 // An invalid objective sense is specified. - ERR_MPS_TAB_IN_FIELD2 Code = 1125 // A tab char occurred in field 2. - ERR_MPS_TAB_IN_FIELD3 Code = 1126 // A tab char occurred in field 3. - ERR_MPS_TAB_IN_FIELD5 Code = 1127 // A tab char occurred in field 5. - ERR_MPS_INVALID_OBJ_NAME Code = 1128 // An invalid objective name is specified. - ERR_MPS_INVALID_KEY Code = 1129 // An invalid indicator key occurred in an MPS file. - ERR_MPS_INVALID_INDICATOR_CONSTRAINT Code = 1130 // An invalid indicator constraint is used. It must not be a ranged constraint. - ERR_MPS_INVALID_INDICATOR_VARIABLE Code = 1131 // An invalid indicator variable is specfied. It must be a binary variable. - ERR_MPS_INVALID_INDICATOR_VALUE Code = 1132 // An invalid indicator value is specfied. It must be either 0 or 1. - ERR_MPS_INVALID_INDICATOR_QUADRATIC_CONSTRAINT Code = 1133 // A quadratic constraint can be be an indicator constraint. - ERR_OPF_SYNTAX Code = 1134 // Syntax error in an OPF file - ERR_OPF_PREMATURE_EOF Code = 1136 // Premature end of file in an OPF file. - ERR_OPF_MISMATCHED_TAG Code = 1137 // Mismatched end-tag in OPF file - ERR_OPF_DUPLICATE_BOUND Code = 1138 // Either upper or lower bound was specified twice in OPF file - ERR_OPF_DUPLICATE_CONSTRAINT_NAME Code = 1139 // Duplicate constraint name in OPF File - ERR_OPF_INVALID_CONE_TYPE Code = 1140 // Invalid cone type in OPF File - ERR_OPF_INCORRECT_TAG_PARAM Code = 1141 // Invalid number of parameters in start-tag in OPF File - ERR_OPF_INVALID_TAG Code = 1142 // Invalid start-tag in OPF File - ERR_OPF_DUPLICATE_CONE_ENTRY Code = 1143 // Same variable appears in multiple cones in OPF File - ERR_OPF_TOO_LARGE Code = 1144 // The problem is too large to be correctly loaded - ERR_OPF_DUAL_INTEGER_SOLUTION Code = 1146 // Dual solution values are not allowed in OPF File - ERR_LP_EMPTY Code = 1151 // The problem cannot be written to an LP formatted file. - ERR_WRITE_MPS_INVALID_NAME Code = 1153 // An invalid name is created while writing an MPS file. - ERR_LP_INVALID_VAR_NAME Code = 1154 // A variable name is invalid when used in an LP formatted file. - ERR_WRITE_OPF_INVALID_VAR_NAME Code = 1156 // Empty variable names cannot be written to OPF files. - ERR_LP_FILE_FORMAT Code = 1157 // Syntax error in an LP file. - ERR_LP_EXPECTED_NUMBER Code = 1158 // Expected a number in LP file - ERR_READ_LP_MISSING_END_TAG Code = 1159 // Syntax error in LP fil. Possibly missing End tag. - ERR_LP_INDICATOR_VAR Code = 1160 // An indicator variable was not declared binary - ERR_LP_EXPECTED_OBJECTIVE Code = 1161 // Expected an objective section in LP file - ERR_LP_EXPECTED_CONSTRAINT_RELATION Code = 1162 // Expected constraint relation - ERR_LP_AMBIGUOUS_CONSTRAINT_BOUND Code = 1163 // Constraint has ambiguous or invalid bound - ERR_LP_DUPLICATE_SECTION Code = 1164 // Duplicate section - ERR_READ_LP_DELAYED_ROWS_NOT_SUPPORTED Code = 1165 // Duplicate section - ERR_WRITING_FILE Code = 1166 // An error occurred while writing file - ERR_INVALID_NAME_IN_SOL_FILE Code = 1170 // An invalid name occurred in a solution file. - ERR_JSON_SYNTAX Code = 1175 // Syntax error in an JSON data - ERR_JSON_STRING Code = 1176 // Error in JSON string. - ERR_JSON_NUMBER_OVERFLOW Code = 1177 // Invalid number entry - wrong type or value overflow. - ERR_JSON_FORMAT Code = 1178 // Error in an JSON Task file - ERR_JSON_DATA Code = 1179 // Inconsistent data in JSON Task file - ERR_JSON_MISSING_DATA Code = 1180 // Missing data section in JSON task file. - ERR_PTF_INCOMPATIBILITY Code = 1181 // Incompatible item - ERR_PTF_UNDEFINED_ITEM Code = 1182 // Undefined symbol referenced - ERR_PTF_INCONSISTENCY Code = 1183 // Inconsistent size of item - ERR_PTF_FORMAT Code = 1184 // Syntax error in an PTF file - ERR_ARGUMENT_LENNEQ Code = 1197 // Incorrect length of arguments. - ERR_ARGUMENT_TYPE Code = 1198 // Incorrect argument type. - ERR_NUM_ARGUMENTS Code = 1199 // Incorrect number of function arguments. - ERR_IN_ARGUMENT Code = 1200 // A function argument is incorrect. - ERR_ARGUMENT_DIMENSION Code = 1201 // A function argument is of incorrect dimension. - ERR_SHAPE_IS_TOO_LARGE Code = 1202 // The size of the n-dimensional shape is too large. - ERR_INDEX_IS_TOO_SMALL Code = 1203 // An index in an argument is too small. - ERR_INDEX_IS_TOO_LARGE Code = 1204 // An index in an argument is too large. - ERR_INDEX_IS_NOT_UNIQUE Code = 1205 // An index in an argument is is unique. - ERR_PARAM_NAME Code = 1206 // A parameter name is not correct. - ERR_PARAM_NAME_DOU Code = 1207 // A parameter name is not correct. - ERR_PARAM_NAME_INT Code = 1208 // A parameter name is not correct. - ERR_PARAM_NAME_STR Code = 1209 // A parameter name is not correct. - ERR_PARAM_INDEX Code = 1210 // Parameter index is out of range. - ERR_PARAM_IS_TOO_LARGE Code = 1215 // A parameter value is too large. - ERR_PARAM_IS_TOO_SMALL Code = 1216 // A parameter value is too small. - ERR_PARAM_VALUE_STR Code = 1217 // A parameter value string is incorrect. - ERR_PARAM_TYPE Code = 1218 // A parameter type is invalid. - ERR_INF_DOU_INDEX Code = 1219 // A double information index is out of range for the specified type. - ERR_INF_INT_INDEX Code = 1220 // An integer information index is out of range for the specified type. - ERR_INDEX_ARR_IS_TOO_SMALL Code = 1221 // An index in an array argument is too small. - ERR_INDEX_ARR_IS_TOO_LARGE Code = 1222 // An index in an array argument is too large. - ERR_INF_LINT_INDEX Code = 1225 // A long integer information index is out of range for the specified type. - ERR_ARG_IS_TOO_SMALL Code = 1226 // The value of a argument is too small. - ERR_ARG_IS_TOO_LARGE Code = 1227 // The value of a argument is too large. - ERR_INVALID_WHICHSOL Code = 1228 // whichsol is invalid. - ERR_INF_DOU_NAME Code = 1230 // A double information name is invalid. - ERR_INF_INT_NAME Code = 1231 // An integer information name is invalid. - ERR_INF_TYPE Code = 1232 // The information type is invalid. - ERR_INF_LINT_NAME Code = 1234 // A long integer information name is invalid. - ERR_INDEX Code = 1235 // An index is out of range. - ERR_WHICHSOL Code = 1236 // The solution defined by whichsol does not exists. - ERR_SOLITEM Code = 1237 // The solution number solemn does not exists. - ERR_WHICHITEM_NOT_ALLOWED Code = 1238 // whichitem is unacceptable. - ERR_MAXNUMCON Code = 1240 // Invalid maximum number of constraints specified. - ERR_MAXNUMVAR Code = 1241 // The maximum number of variables limit is too small. - ERR_MAXNUMBARVAR Code = 1242 // The maximum number of semidefinite variables limit is too small. - ERR_MAXNUMQNZ Code = 1243 // Too small maximum number of non-zeros for the Q matrices is specified. - ERR_TOO_SMALL_MAX_NUM_NZ Code = 1245 // The maximum number of non-zeros specified is too small. - ERR_INVALID_IDX Code = 1246 // A specified index is invalid. - ERR_INVALID_MAX_NUM Code = 1247 // A specified index is invalid. - ERR_UNALLOWED_WHICHSOL Code = 1248 // The value of whichsol is not allowed. - ERR_NUMCONLIM Code = 1250 // Maximum number of constraints limit is exceeded. - ERR_NUMVARLIM Code = 1251 // Maximum number of variables limit is exceeded. - ERR_TOO_SMALL_MAXNUMANZ Code = 1252 // Too small maximum number of non-zeros in A specified. - ERR_INV_APTRE Code = 1253 // aptre\[j\] is strictly smaller than aptrb\[j\] for some j. - ERR_MUL_A_ELEMENT Code = 1254 // An element in A is defined multiple times. - ERR_INV_BK Code = 1255 // Invalid bound key. - ERR_INV_BKC Code = 1256 // Invalid bound key is specified for a constraint. - ERR_INV_BKX Code = 1257 // An invalid bound key is specified for a variable. - ERR_INV_VAR_TYPE Code = 1258 // An invalid variable type is specified for a variable. - ERR_SOLVER_PROBTYPE Code = 1259 // Problem type does not match the chosen optimizer. - ERR_OBJECTIVE_RANGE Code = 1260 // Empty objective range. - ERR_INV_RESCODE Code = 1261 // Invalid response code. - ERR_INV_IINF Code = 1262 // Invalid integer information item. - ERR_INV_LIINF Code = 1263 // Invalid long integer information item. - ERR_INV_DINF Code = 1264 // Invalid double information item. - ERR_BASIS Code = 1266 // Invalid basis is specified. - ERR_INV_SKC Code = 1267 // Invalid value in skc encountered. - ERR_INV_SKX Code = 1268 // Invalid value in skx encountered. - ERR_INV_SK_STR Code = 1269 // Invalid status key string encountered. - ERR_INV_SK Code = 1270 // Invalid status key code encountered. - ERR_INV_CONE_TYPE_STR Code = 1271 // Invalid cone type string encountered. - ERR_INV_CONE_TYPE Code = 1272 // Invalid cone type code encountered. - ERR_INV_SKN Code = 1274 // Invalid value in skn encountered. - ERR_INVALID_SURPLUS Code = 1275 // Invalid surplus. - ERR_INV_NAME_ITEM Code = 1280 // An invalid name item code is used. - ERR_PRO_ITEM Code = 1281 // An invalid problem item is used. - ERR_INVALID_FORMAT_TYPE Code = 1283 // Invalid format type. - ERR_FIRSTI Code = 1285 // Invalid firsti. - ERR_LASTI Code = 1286 // Invalid lasti. - ERR_FIRSTJ Code = 1287 // Invalid firstj. - ERR_LASTJ Code = 1288 // Invalid lastj. - ERR_MAX_LEN_IS_TOO_SMALL Code = 1289 // A maximum length that is too small has been specified. - ERR_NONLINEAR_EQUALITY Code = 1290 // The model contains a nonlinear equality. - ERR_NONCONVEX Code = 1291 // The optimization problem is nonconvex. - ERR_NONLINEAR_RANGED Code = 1292 // The problem contains a nonlinear constraint with inite lower and upper bound. - ERR_CON_Q_NOT_PSD Code = 1293 // The quadratic constraint matrix is not PSD. - ERR_CON_Q_NOT_NSD Code = 1294 // The quadratic constraint matrix is not NSD. - ERR_OBJ_Q_NOT_PSD Code = 1295 // The quadratic coefficient matrix in the objective is not PSD. - ERR_OBJ_Q_NOT_NSD Code = 1296 // The quadratic coefficient matrix in the objective is not NSD. - ERR_ARGUMENT_PERM_ARRAY Code = 1299 // An invalid permutation array is specified. - ERR_CONE_INDEX Code = 1300 // An index of a non-existing cone has been specified. - ERR_CONE_SIZE Code = 1301 // A cone with incorrect number of members is specified. - ERR_CONE_OVERLAP Code = 1302 // One or more of variables in the cone to be added is already member of another cone. - ERR_CONE_REP_VAR Code = 1303 // A variable is included multiple times in the cone. - ERR_MAXNUMCONE Code = 1304 // The value specified for maxnumcone is too small. - ERR_CONE_TYPE Code = 1305 // Invalid cone type specified. - ERR_CONE_TYPE_STR Code = 1306 // Invalid cone type specified. - ERR_CONE_OVERLAP_APPEND Code = 1307 // The cone to be appended has one variable which is already member of another cone. - ERR_REMOVE_CONE_VARIABLE Code = 1310 // A variable cannot be removed because it will make a cone invalid. - ERR_APPENDING_TOO_BIG_CONE Code = 1311 // Trying to append a too big cone. - ERR_CONE_PARAMETER Code = 1320 // An invalid cone parameter. - ERR_SOL_FILE_INVALID_NUMBER Code = 1350 // An invalid number is specified in a solution file. - ERR_HUGE_C Code = 1375 // A huge value in absolute size is specified for an objective coefficient. - ERR_HUGE_AIJ Code = 1380 // A numerically huge value is specified for an element in A. - ERR_DUPLICATE_AIJ Code = 1385 // An element in the A matrix is specified twice. - ERR_LOWER_BOUND_IS_A_NAN Code = 1390 // The lower bound specified is not a number (nan). - ERR_UPPER_BOUND_IS_A_NAN Code = 1391 // The upper bound specified is not a number (nan). - ERR_INFINITE_BOUND Code = 1400 // A numerically huge bound value is specified. - ERR_INV_QOBJ_SUBI Code = 1401 // Invalid value %d at qosubi. - ERR_INV_QOBJ_SUBJ Code = 1402 // Invalid value in qosubj. - ERR_INV_QOBJ_VAL Code = 1403 // Invalid value in qoval. - ERR_INV_QCON_SUBK Code = 1404 // Invalid value in qcsubk. - ERR_INV_QCON_SUBI Code = 1405 // Invalid value in qcsubi. - ERR_INV_QCON_SUBJ Code = 1406 // Invalid value in qcsubj. - ERR_INV_QCON_VAL Code = 1407 // Invalid value in qcval. - ERR_QCON_SUBI_TOO_SMALL Code = 1408 // Invalid value in qcsubi. - ERR_QCON_SUBI_TOO_LARGE Code = 1409 // Invalid value in qcsubi. - ERR_QOBJ_UPPER_TRIANGLE Code = 1415 // An element in the upper triangle of the quadratic term in the objective is specified. - ERR_QCON_UPPER_TRIANGLE Code = 1417 // An element in the upper triangle of the quadratic term in a constraint. - ERR_FIXED_BOUND_VALUES Code = 1420 // A fixed constraint/variable has been specified using the bound keys but the numerical bounds are different. - ERR_TOO_SMALL_A_TRUNCATION_VALUE Code = 1421 // A too small value for the A trucation value is specified. - ERR_INVALID_OBJECTIVE_SENSE Code = 1445 // An invalid objective sense is specified. - ERR_UNDEFINED_OBJECTIVE_SENSE Code = 1446 // The objective sense has not been specified before the optimization. - ERR_Y_IS_UNDEFINED Code = 1449 // The solution item y is undefined. - ERR_NAN_IN_DOUBLE_DATA Code = 1450 // An invalid floating value was used in some double data. - ERR_INF_IN_DOUBLE_DATA Code = 1451 // An infinite floating value was used in some double data. - ERR_NAN_IN_BLC Code = 1461 // blc contains an invalid floating point value, i.e. a NaN. - ERR_NAN_IN_BUC Code = 1462 // buc contains an invalid floating point value, i.e. a NaN. - ERR_INVALID_CFIX Code = 1469 // An invalid fixed term in the objective is speficied. - ERR_NAN_IN_C Code = 1470 // c contains an invalid floating point value, i.e. a NaN. - ERR_NAN_IN_BLX Code = 1471 // blx contains an invalid floating point value, i.e. a NaN. - ERR_NAN_IN_BUX Code = 1472 // bux contains an invalid floating point value, i.e. a NaN. - ERR_INVALID_AIJ Code = 1473 // a\[i,j\] contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_INVALID_CJ Code = 1474 // c\[j\] contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_SYM_MAT_INVALID Code = 1480 // A symmetric matrix contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_SYM_MAT_HUGE Code = 1482 // A numerically huge value is specified for an element in E. - ERR_INV_PROBLEM Code = 1500 // Invalid problem type. - ERR_MIXED_CONIC_AND_NL Code = 1501 // The problem contains both conic and nonlinear constraints. - ERR_GLOBAL_INV_CONIC_PROBLEM Code = 1503 // The global optimizer can only be applied to problems without semidefinite variables. - ERR_INV_OPTIMIZER Code = 1550 // An invalid optimizer has been chosen for the problem. - ERR_MIO_NO_OPTIMIZER Code = 1551 // No optimizer is available for the current class of integer optimization problems. - ERR_NO_OPTIMIZER_VAR_TYPE Code = 1552 // No optimizer is available for this class of optimization problems. - ERR_FINAL_SOLUTION Code = 1560 // An error occurred during the solution finalization. - ERR_FIRST Code = 1570 // Invalid first. - ERR_LAST Code = 1571 // Invalid last. - ERR_SLICE_SIZE Code = 1572 // Invalid slice size specified. - ERR_NEGATIVE_SURPLUS Code = 1573 // Negative surplus. - ERR_NEGATIVE_APPEND Code = 1578 // Cannot append a negative number. - ERR_POSTSOLVE Code = 1580 // An error occurred during the postsolve. - ERR_OVERFLOW Code = 1590 // A computation produced an overflow. - ERR_NO_BASIS_SOL Code = 1600 // No basic solution is defined. - ERR_BASIS_FACTOR Code = 1610 // The factorization of the basis is invalid. - ERR_BASIS_SINGULAR Code = 1615 // The basis is singular. - ERR_FACTOR Code = 1650 // An error occurred while factorizing a matrix. - ERR_FEASREPAIR_CANNOT_RELAX Code = 1700 // An optimization problem cannot be relaxed. - ERR_FEASREPAIR_SOLVING_RELAXED Code = 1701 // The relaxed problem could not be solved to optimality. - ERR_FEASREPAIR_INCONSISTENT_BOUND Code = 1702 // The upper bound is less than the lower bound for a variable or a constraint. - ERR_REPAIR_INVALID_PROBLEM Code = 1710 // The feasibility repair does not support the specified problem type. - ERR_REPAIR_OPTIMIZATION_FAILED Code = 1711 // Computation the optimal relaxation failed. - ERR_NAME_MAX_LEN Code = 1750 // A name is longer than the buffer that is supposed to hold it. - ERR_NAME_IS_NULL Code = 1760 // The name buffer is a null pointer. - ERR_INVALID_COMPRESSION Code = 1800 // Invalid compression type. - ERR_INVALID_IOMODE Code = 1801 // Invalid io mode. - ERR_NO_PRIMAL_INFEAS_CER Code = 2000 // A certificate of primal infeasibility is not available. - ERR_NO_DUAL_INFEAS_CER Code = 2001 // A certificate of dual infeasibility is not available. - ERR_NO_SOLUTION_IN_CALLBACK Code = 2500 // The required solution is not available. - ERR_INV_MARKI Code = 2501 // Invalid value in marki. - ERR_INV_MARKJ Code = 2502 // Invalid value in markj. - ERR_INV_NUMI Code = 2503 // Invalid numi. - ERR_INV_NUMJ Code = 2504 // Invalid numj. - ERR_TASK_INCOMPATIBLE Code = 2560 // The Task file is incompatible with this platform. - ERR_TASK_INVALID Code = 2561 // The Task file is invalid. - ERR_TASK_WRITE Code = 2562 // Failed to write the task file. - ERR_LU_MAX_NUM_TRIES Code = 2800 // Could not compute the LU factors of the matrix within the maximum number of allowed tries. - ERR_INVALID_UTF8 Code = 2900 // An invalid UTF8 string is encountered. - ERR_INVALID_WCHAR Code = 2901 // An invalid wchar string is encountered. - ERR_NO_DUAL_FOR_ITG_SOL Code = 2950 // No dual information is available for the integer solution. - ERR_NO_SNX_FOR_BAS_SOL Code = 2953 // snx is not available for the basis solution. - ERR_INTERNAL Code = 3000 // An internal error occurred. - ERR_API_ARRAY_TOO_SMALL Code = 3001 // An input array was too short. - ERR_API_CB_CONNECT Code = 3002 // Failed to connect a callback object. - ERR_API_FATAL_ERROR Code = 3005 // An internal error occurred in the API. Please report this problem. - ERR_SEN_FORMAT Code = 3050 // Syntax error in sensitivity analysis file. - ERR_SEN_UNDEF_NAME Code = 3051 // An undefined name was encountered in the sensitivity analysis file. - ERR_SEN_INDEX_RANGE Code = 3052 // Index out of range in the sensitivity analysis file. - ERR_SEN_BOUND_INVALID_UP Code = 3053 // Analysis of upper bound requested for an index, where no upper bound exists. - ERR_SEN_BOUND_INVALID_LO Code = 3054 // Analysis of lower bound requested for an index, where no lower bound exists. - ERR_SEN_INDEX_INVALID Code = 3055 // Invalid range given in the sensitivity file. - ERR_SEN_INVALID_REGEXP Code = 3056 // Syntax error in regexp or regexp longer than 1024. - ERR_SEN_SOLUTION_STATUS Code = 3057 // No optimal solution found to the original problem given for sensitivity analysis. - ERR_SEN_NUMERICAL Code = 3058 // Numerical difficulties encountered performing the sensitivity analysis. - ERR_SEN_UNHANDLED_PROBLEM_TYPE Code = 3080 // Sensitivity analysis cannot be performed for the specified problem. - ERR_UNB_STEP_SIZE Code = 3100 // A step-size in an optimizer was unexpectedly unbounded. - ERR_IDENTICAL_TASKS Code = 3101 // Some tasks related to this function call were identical. Unique tasks were expected. - ERR_AD_INVALID_CODELIST Code = 3102 // The code list data was invalid. - ERR_INTERNAL_TEST_FAILED Code = 3500 // An internal unit test function failed. - ERR_XML_INVALID_PROBLEM_TYPE Code = 3600 // The problem type is not supported by the XML format. - ERR_INVALID_AMPL_STUB Code = 3700 // Invalid AMPL stub. - ERR_INT64_TO_INT32_CAST Code = 3800 // A 64 bit integer could not be cast to a 32 bit integer. - ERR_SIZE_LICENSE_NUMCORES Code = 3900 // The computer contains more cpu cores than the license allows for. - ERR_INFEAS_UNDEFINED Code = 3910 // The requested value is not defined for this solution type. - ERR_NO_BARX_FOR_SOLUTION Code = 3915 // There is no barx available for the solution specified. - ERR_NO_BARS_FOR_SOLUTION Code = 3916 // There is no bars available for the solution specified. - ERR_BAR_VAR_DIM Code = 3920 // The dimension of a symmetric matrix variable has to be greater than 0. - ERR_SYM_MAT_INVALID_ROW_INDEX Code = 3940 // A row index specified for sparse symmetric matrix is invalid. - ERR_SYM_MAT_INVALID_COL_INDEX Code = 3941 // A column index specified for sparse symmetric matrix is invalid. - ERR_SYM_MAT_NOT_LOWER_TRINGULAR Code = 3942 // Only the lower triangular part of sparse symmetric matrix should be specified. - ERR_SYM_MAT_INVALID_VALUE Code = 3943 // The numerical value specified in a sparse symmetric matrix is not a floating point value. - ERR_SYM_MAT_DUPLICATE Code = 3944 // A value in a symmetric matric as been specified more than once. - ERR_INVALID_SYM_MAT_DIM Code = 3950 // A sparse symmetric matrix of invalid dimension is specified. - ERR_API_INTERNAL Code = 3999 // An internal fatal error occurred in an interface function. - ERR_INVALID_FILE_FORMAT_FOR_SYM_MAT Code = 4000 // The file format does not support a problem with symmetric matrix variables. - ERR_INVALID_FILE_FORMAT_FOR_CFIX Code = 4001 // The file format does not support a problem with nonzero fixed term in c. - ERR_INVALID_FILE_FORMAT_FOR_RANGED_CONSTRAINTS Code = 4002 // The file format does not support a problem with ranged constraints. - ERR_INVALID_FILE_FORMAT_FOR_FREE_CONSTRAINTS Code = 4003 // The file format does not support a problem with free constraints. - ERR_INVALID_FILE_FORMAT_FOR_CONES Code = 4005 // The file format does not support a problem with the simple cones (deprecated). - ERR_INVALID_FILE_FORMAT_FOR_QUADRATIC_TERMS Code = 4006 // The file format does not support a problem with quadratic terms. - ERR_INVALID_FILE_FORMAT_FOR_NONLINEAR Code = 4010 // The file format does not support a problem with nonlinear terms. - ERR_INVALID_FILE_FORMAT_FOR_DISJUNCTIVE_CONSTRAINTS Code = 4011 // The file format does not support a problem with disjunctive constraints. - ERR_INVALID_FILE_FORMAT_FOR_AFFINE_CONIC_CONSTRAINTS Code = 4012 // The file format does not support a problem with affine conic constraints. - ERR_DUPLICATE_CONSTRAINT_NAMES Code = 4500 // Two constraint names are identical. - ERR_DUPLICATE_VARIABLE_NAMES Code = 4501 // Two variable names are identical. - ERR_DUPLICATE_BARVARIABLE_NAMES Code = 4502 // Two barvariable names are identical. - ERR_DUPLICATE_CONE_NAMES Code = 4503 // Two cone names are identical. - ERR_DUPLICATE_DOMAIN_NAMES Code = 4504 // Two domain names are identical. - ERR_DUPLICATE_DJC_NAMES Code = 4505 // Two disjunctive constraint names are identical. - ERR_NON_UNIQUE_ARRAY Code = 5000 // An array does not contain unique elements. - ERR_ARGUMENT_IS_TOO_SMALL Code = 5004 // The value of a function argument is too small. - ERR_ARGUMENT_IS_TOO_LARGE Code = 5005 // The value of a function argument is too large. - ERR_MIO_INTERNAL Code = 5010 // A fatal error occurred in the mixed integer optimizer. Please contact MOSEK support. - ERR_INVALID_PROBLEM_TYPE Code = 6000 // An invalid problem type. - ERR_UNHANDLED_SOLUTION_STATUS Code = 6010 // Unhandled solution status. - ERR_UPPER_TRIANGLE Code = 6020 // An element in the upper triangle of a lower triangular matrix is specified. - ERR_LAU_SINGULAR_MATRIX Code = 7000 // A matrix is singular. - ERR_LAU_NOT_POSITIVE_DEFINITE Code = 7001 // A matrix is not positive definite. - ERR_LAU_INVALID_LOWER_TRIANGULAR_MATRIX Code = 7002 // An invalid lower triangular matrix. - ERR_LAU_UNKNOWN Code = 7005 // An unknown error. - ERR_LAU_ARG_M Code = 7010 // Invalid argument m. - ERR_LAU_ARG_N Code = 7011 // Invalid argument n. - ERR_LAU_ARG_K Code = 7012 // Invalid argument k. - ERR_LAU_ARG_TRANSA Code = 7015 // Invalid argument transa. - ERR_LAU_ARG_TRANSB Code = 7016 // Invalid argument transb. - ERR_LAU_ARG_UPLO Code = 7017 // Invalid argument uplo. - ERR_LAU_ARG_TRANS Code = 7018 // Invalid argument trans. - ERR_LAU_INVALID_SPARSE_SYMMETRIC_MATRIX Code = 7019 // An invalid sparse symmetric matrix is specfified. - ERR_CBF_PARSE Code = 7100 // An error occurred while parsing an CBF file. - ERR_CBF_OBJ_SENSE Code = 7101 // An invalid objective sense is specified. - ERR_CBF_NO_VARIABLES Code = 7102 // An invalid objective sense is specified. - ERR_CBF_TOO_MANY_CONSTRAINTS Code = 7103 // Too many constraints specified. - ERR_CBF_TOO_MANY_VARIABLES Code = 7104 // Too many variables specified. - ERR_CBF_NO_VERSION_SPECIFIED Code = 7105 // No version specified. - ERR_CBF_SYNTAX Code = 7106 // Invalid syntax. - ERR_CBF_DUPLICATE_OBJ Code = 7107 // Duplicate OBJ keyword. - ERR_CBF_DUPLICATE_CON Code = 7108 // Duplicate CON keyword. - ERR_CBF_DUPLICATE_VAR Code = 7110 // Duplicate VAR keyword. - ERR_CBF_DUPLICATE_INT Code = 7111 // Duplicate INT keyword. - ERR_CBF_INVALID_VAR_TYPE Code = 7112 // Invalid variable type. - ERR_CBF_INVALID_CON_TYPE Code = 7113 // Invalid constraint type. - ERR_CBF_INVALID_DOMAIN_DIMENSION Code = 7114 // Invalid domain dimension. - ERR_CBF_DUPLICATE_OBJACOORD Code = 7115 // Duplicate index in OBJCOORD. - ERR_CBF_DUPLICATE_BCOORD Code = 7116 // Duplicate index in BCOORD. - ERR_CBF_DUPLICATE_ACOORD Code = 7117 // Duplicate index in ACOORD. - ERR_CBF_TOO_FEW_VARIABLES Code = 7118 // Too few variables defined. - ERR_CBF_TOO_FEW_CONSTRAINTS Code = 7119 // Too few constraints defined. - ERR_CBF_TOO_FEW_INTS Code = 7120 // Too ints specified. - ERR_CBF_TOO_MANY_INTS Code = 7121 // Too ints specified. - ERR_CBF_INVALID_INT_INDEX Code = 7122 // Invalid INT index. - ERR_CBF_UNSUPPORTED Code = 7123 // Unsupported feature is present. - ERR_CBF_DUPLICATE_PSDVAR Code = 7124 // Duplicate PSDVAR keyword. - ERR_CBF_INVALID_PSDVAR_DIMENSION Code = 7125 // Invalid PSDVAR dimension. - ERR_CBF_TOO_FEW_PSDVAR Code = 7126 // Too few variables defined. - ERR_CBF_INVALID_EXP_DIMENSION Code = 7127 // Invalid dimension of a exponential cone. - ERR_CBF_DUPLICATE_POW_CONES Code = 7130 // Multiple POWCONES specified. - ERR_CBF_DUPLICATE_POW_STAR_CONES Code = 7131 // Multiple POW*CONES specified. - ERR_CBF_INVALID_POWER Code = 7132 // Invalid power specified. - ERR_CBF_POWER_CONE_IS_TOO_LONG Code = 7133 // Power cone is too long. - ERR_CBF_INVALID_POWER_CONE_INDEX Code = 7134 // Invalid power cone index. - ERR_CBF_INVALID_POWER_STAR_CONE_INDEX Code = 7135 // Invalid power star cone index. - ERR_CBF_UNHANDLED_POWER_CONE_TYPE Code = 7136 // An unhandled power cone type. - ERR_CBF_UNHANDLED_POWER_STAR_CONE_TYPE Code = 7137 // An unhandled power star cone type. - ERR_CBF_POWER_CONE_MISMATCH Code = 7138 // The power cone does not match with it definition. - ERR_CBF_POWER_STAR_CONE_MISMATCH Code = 7139 // The power star cone does not match with it definition. - ERR_CBF_INVALID_NUMBER_OF_CONES Code = 7140 // Invalid number of cones. - ERR_CBF_INVALID_DIMENSION_OF_CONES Code = 7141 // Invalid number of cones. - ERR_CBF_INVALID_NUM_OBJACOORD Code = 7150 // Invalid number of OBJACOORD. - ERR_CBF_INVALID_NUM_OBJFCOORD Code = 7151 // Invalid number of OBJFCOORD. - ERR_CBF_INVALID_NUM_ACOORD Code = 7152 // Invalid number of ACOORD. - ERR_CBF_INVALID_NUM_BCOORD Code = 7153 // Invalid number of BCOORD. - ERR_CBF_INVALID_NUM_FCOORD Code = 7155 // Invalid number of FCOORD. - ERR_CBF_INVALID_NUM_HCOORD Code = 7156 // Invalid number of HCOORD. - ERR_CBF_INVALID_NUM_DCOORD Code = 7157 // Invalid number of DCOORD. - ERR_CBF_EXPECTED_A_KEYWORD Code = 7158 // Expected a key word. - ERR_CBF_INVALID_NUM_PSDCON Code = 7200 // Invalid number of PSDCON. - ERR_CBF_DUPLICATE_PSDCON Code = 7201 // Duplicate CON keyword. - ERR_CBF_INVALID_DIMENSION_OF_PSDCON Code = 7202 // Invalid PSDCON dimension. - ERR_CBF_INVALID_PSDCON_INDEX Code = 7203 // Invalid PSDCON index. - ERR_CBF_INVALID_PSDCON_VARIABLE_INDEX Code = 7204 // Invalid PSDCON index. - ERR_CBF_INVALID_PSDCON_BLOCK_INDEX Code = 7205 // Invalid PSDCON index. - ERR_CBF_UNSUPPORTED_CHANGE Code = 7210 // The CHANGE section is not supported. - ERR_MIO_INVALID_ROOT_OPTIMIZER Code = 7700 // An invalid root optimizer was selected for the problem type. - ERR_MIO_INVALID_NODE_OPTIMIZER Code = 7701 // An invalid node optimizer was selected for the problem type. - ERR_MPS_WRITE_CPLEX_INVALID_CONE_TYPE Code = 7750 // An invalid cone type occurs when writing a CPLEX formatted MPS file. - ERR_TOCONIC_CONSTR_Q_NOT_PSD Code = 7800 // The matrix defining the quadratric part of constraint is not positive semidefinite. - ERR_TOCONIC_CONSTRAINT_FX Code = 7801 // The quadratic constraint is an equality, thus not convex. - ERR_TOCONIC_CONSTRAINT_RA Code = 7802 // The quadratic constraint has finite lower and upper bound, and therefore it is not convex. - ERR_TOCONIC_CONSTR_NOT_CONIC Code = 7803 // The constraint is not conic representable. - ERR_TOCONIC_OBJECTIVE_NOT_PSD Code = 7804 // The matrix defining the quadratric part of the objective function is not positive semidefinite. - ERR_SERVER_CONNECT Code = 8000 // Failed to connect to remote solver server. - ERR_SERVER_PROTOCOL Code = 8001 // Unexpected message or data from solver server. - ERR_SERVER_STATUS Code = 8002 // Server returned non-ok status code - ERR_SERVER_TOKEN Code = 8003 // Invalid job ID - ERR_SERVER_ADDRESS Code = 8004 // Invalid address - ERR_SERVER_CERTIFICATE Code = 8005 // Invalid TLS certificate format or path - ERR_SERVER_TLS_CLIENT Code = 8006 // Failed to create TLS client - ERR_SERVER_ACCESS_TOKEN Code = 8007 // Invalid access token - ERR_SERVER_PROBLEM_SIZE Code = 8008 // The problem is too large. - ERR_DUPLICATE_INDEX_IN_A_SPARSE_MATRIX Code = 20050 // An element in a sparse matrix is specified twice. - ERR_DUPLICATE_INDEX_IN_AFEIDX_LIST Code = 20060 // An index is specified twice in an affine expression list. - ERR_DUPLICATE_FIJ Code = 20100 // An element in the F matrix is specified twice. - ERR_INVALID_FIJ Code = 20101 // f\[i,j\] contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_HUGE_FIJ Code = 20102 // A numerically huge value is specified for an element in F. - ERR_INVALID_G Code = 20103 // g contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_INVALID_B Code = 20150 // b contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_DOMAIN_INVALID_INDEX Code = 20400 // A domain index is invalid. - ERR_DOMAIN_DIMENSION Code = 20401 // A domain dimension is invalid. - ERR_DOMAIN_DIMENSION_PSD Code = 20402 // A PSD domain dimension is invalid. - ERR_NOT_POWER_DOMAIN Code = 20403 // The function is only applicable to primal and dual power cone domains. - ERR_DOMAIN_POWER_INVALID_ALPHA Code = 20404 // Alpha contains an invalid floating point value, i.e. a NaN or an infinite value. - ERR_DOMAIN_POWER_NEGATIVE_ALPHA Code = 20405 // Alpha contains a negative value or zero. - ERR_DOMAIN_POWER_NLEFT Code = 20406 // The value of nleft is too small or too large. - ERR_AFE_INVALID_INDEX Code = 20500 // An affine expression index is invalid. - ERR_ACC_INVALID_INDEX Code = 20600 // A affine conic constraint index is invalid. - ERR_ACC_INVALID_ENTRY_INDEX Code = 20601 // The index of an element in an affine conic constraint is invalid. - ERR_ACC_AFE_DOMAIN_MISMATCH Code = 20602 // There is a mismatch between between the number of affine expressions and total dimension of the domain(s). - ERR_DJC_INVALID_INDEX Code = 20700 // A disjunctive constraint index is invalid. - ERR_DJC_UNSUPPORTED_DOMAIN_TYPE Code = 20701 // An unsupported domain type has been used in a disjunctive constraint. - ERR_DJC_AFE_DOMAIN_MISMATCH Code = 20702 // There is a mismatch between the number of affine expressions and total dimension of the domain(s). - ERR_DJC_INVALID_TERM_SIZE Code = 20703 // A termize is invalid. - ERR_DJC_DOMAIN_TERMSIZE_MISMATCH Code = 20704 // There is a mismatch between the number of domains and the term sizes. - ERR_DJC_TOTAL_NUM_TERMS_MISMATCH Code = 20705 // There total number of terms in all domains does not match. - ERR_UNDEF_SOLUTION Code = 22000 // The required solution is not defined. - ERR_NO_DOTY Code = 22010 // No doty is available. - TRM_MAX_ITERATIONS Code = 100000 // The optimizer terminated at the maximum number of iterations. - TRM_MAX_TIME Code = 100001 // The optimizer terminated at the maximum amount of time. - TRM_OBJECTIVE_RANGE Code = 100002 // The optimizer terminated with an objective value outside the objective range. - TRM_STALL Code = 100006 // The optimizer is terminated due to slow progress. - TRM_USER_CALLBACK Code = 100007 // The user-defined progress callback function terminated the optimization. - TRM_MIO_NUM_RELAXS Code = 100008 // The mixed-integer optimizer terminated as the maximum number of relaxations was reached. - TRM_MIO_NUM_BRANCHES Code = 100009 // The mixed-integer optimizer terminated as the maximum number of branches was reached. - TRM_NUM_MAX_NUM_INT_SOLUTIONS Code = 100015 // The mixed-integer optimizer terminated as the maximum number of feasible solutions was reached. - TRM_MAX_NUM_SETBACKS Code = 100020 // The optimizer terminated as the maximum number of set-backs was reached. - TRM_NUMERICAL_PROBLEM Code = 100025 // The optimizer terminated due to a numerical problem. - TRM_LOST_RACE Code = 100027 // Lost a race. - TRM_INTERNAL Code = 100030 // The optimizer terminated due to some internal reason. - TRM_INTERNAL_STOP Code = 100031 // The optimizer terminated for internal reasons. + OK Code = C.MSK_RES_OK // No error occurred. + WRN_OPEN_PARAM_FILE Code = C.MSK_RES_WRN_OPEN_PARAM_FILE // The parameter file could not be opened. + WRN_LARGE_BOUND Code = C.MSK_RES_WRN_LARGE_BOUND // A numerically large bound value is specified. + WRN_LARGE_LO_BOUND Code = C.MSK_RES_WRN_LARGE_LO_BOUND // A numerically large lower bound value is specified. + WRN_LARGE_UP_BOUND Code = C.MSK_RES_WRN_LARGE_UP_BOUND // A numerically large upper bound value is specified. + WRN_LARGE_CON_FX Code = C.MSK_RES_WRN_LARGE_CON_FX // A equality constraint is fixed to numerically large value. + WRN_LARGE_CJ Code = C.MSK_RES_WRN_LARGE_CJ // A numerically large value is specified for one element in c. + WRN_LARGE_AIJ Code = C.MSK_RES_WRN_LARGE_AIJ // A numerically large value is specified for an element in A. + WRN_ZERO_AIJ Code = C.MSK_RES_WRN_ZERO_AIJ // One or more zero elements are specified in A. + WRN_NAME_MAX_LEN Code = C.MSK_RES_WRN_NAME_MAX_LEN // A name is longer than the buffer that is supposed to hold it. + WRN_SPAR_MAX_LEN Code = C.MSK_RES_WRN_SPAR_MAX_LEN // A value for a string parameter is longer than the buffer that is supposed to hold it. + WRN_MPS_SPLIT_RHS_VECTOR Code = C.MSK_RES_WRN_MPS_SPLIT_RHS_VECTOR // An RHS vector is split into several nonadjacent parts. + WRN_MPS_SPLIT_RAN_VECTOR Code = C.MSK_RES_WRN_MPS_SPLIT_RAN_VECTOR // A RANGE vector is split into several nonadjacent parts in an MPS file. + WRN_MPS_SPLIT_BOU_VECTOR Code = C.MSK_RES_WRN_MPS_SPLIT_BOU_VECTOR // A BOUNDS vector is split into several nonadjacent parts in an MPS file. + WRN_LP_OLD_QUAD_FORMAT Code = C.MSK_RES_WRN_LP_OLD_QUAD_FORMAT // Missing '/2' after quadratic expressions in bound or objective. + WRN_LP_DROP_VARIABLE Code = C.MSK_RES_WRN_LP_DROP_VARIABLE // Ignore a variable because the variable was not previously defined. + WRN_NZ_IN_UPR_TRI Code = C.MSK_RES_WRN_NZ_IN_UPR_TRI // Non-zero elements specified in the upper triangle of a matrix were ignored. + WRN_DROPPED_NZ_QOBJ Code = C.MSK_RES_WRN_DROPPED_NZ_QOBJ // One or more non-zero elements were dropped in the Q matrix in the objective. + WRN_IGNORE_INTEGER Code = C.MSK_RES_WRN_IGNORE_INTEGER // Ignored integer constraints. + WRN_NO_GLOBAL_OPTIMIZER Code = C.MSK_RES_WRN_NO_GLOBAL_OPTIMIZER // No global optimizer is available. + WRN_MIO_INFEASIBLE_FINAL Code = C.MSK_RES_WRN_MIO_INFEASIBLE_FINAL // The final mixed-integer problem with all the integer variables fixed at their optimal values is infeasible. + WRN_SOL_FILTER Code = C.MSK_RES_WRN_SOL_FILTER // Invalid solution filter is specified. + WRN_UNDEF_SOL_FILE_NAME Code = C.MSK_RES_WRN_UNDEF_SOL_FILE_NAME // Undefined name occurred in a solution. + WRN_SOL_FILE_IGNORED_CON Code = C.MSK_RES_WRN_SOL_FILE_IGNORED_CON // One or more lines in the constraint section were ignored when reading a solution file. + WRN_SOL_FILE_IGNORED_VAR Code = C.MSK_RES_WRN_SOL_FILE_IGNORED_VAR // One or more lines in the variable section were ignored when reading a solution file. + WRN_TOO_FEW_BASIS_VARS Code = C.MSK_RES_WRN_TOO_FEW_BASIS_VARS // An incomplete basis is specified. + WRN_TOO_MANY_BASIS_VARS Code = C.MSK_RES_WRN_TOO_MANY_BASIS_VARS // A basis with too many variables is specified. + WRN_LICENSE_EXPIRE Code = C.MSK_RES_WRN_LICENSE_EXPIRE // The license expires. + WRN_LICENSE_SERVER Code = C.MSK_RES_WRN_LICENSE_SERVER // The license server is not responding. + WRN_EMPTY_NAME Code = C.MSK_RES_WRN_EMPTY_NAME // A variable or constraint name is empty. The output file may be invalid. + WRN_USING_GENERIC_NAMES Code = C.MSK_RES_WRN_USING_GENERIC_NAMES // Generic names are used because a name is invalid for requested format. + WRN_INVALID_MPS_NAME Code = C.MSK_RES_WRN_INVALID_MPS_NAME // A name e.g. a row name is not a valid MPS name. + WRN_INVALID_MPS_OBJ_NAME Code = C.MSK_RES_WRN_INVALID_MPS_OBJ_NAME // The objective name is not a valid MPS name. + WRN_LICENSE_FEATURE_EXPIRE Code = C.MSK_RES_WRN_LICENSE_FEATURE_EXPIRE // The license expires. + WRN_PARAM_NAME_DOU Code = C.MSK_RES_WRN_PARAM_NAME_DOU // Parameter name not recognized. + WRN_PARAM_NAME_INT Code = C.MSK_RES_WRN_PARAM_NAME_INT // Parameter name not recognized. + WRN_PARAM_NAME_STR Code = C.MSK_RES_WRN_PARAM_NAME_STR // Parameter name not recognized. + WRN_PARAM_STR_VALUE Code = C.MSK_RES_WRN_PARAM_STR_VALUE // A parameter value is not correct. + WRN_PARAM_IGNORED_CMIO Code = C.MSK_RES_WRN_PARAM_IGNORED_CMIO // A parameter was ignored by the conic mixed integer optimizer. + WRN_ZEROS_IN_SPARSE_ROW Code = C.MSK_RES_WRN_ZEROS_IN_SPARSE_ROW // One or more (near) zero elements are specified in a sparse row of a matrix. + WRN_ZEROS_IN_SPARSE_COL Code = C.MSK_RES_WRN_ZEROS_IN_SPARSE_COL // One or more (near) zero elements are specified in a sparse column of a matrix. + WRN_INCOMPLETE_LINEAR_DEPENDENCY_CHECK Code = C.MSK_RES_WRN_INCOMPLETE_LINEAR_DEPENDENCY_CHECK // The linear dependency check(s) is incomplete. + WRN_ELIMINATOR_SPACE Code = C.MSK_RES_WRN_ELIMINATOR_SPACE // The eliminator is skipped at least once due to lack of space. + WRN_PRESOLVE_OUTOFSPACE Code = C.MSK_RES_WRN_PRESOLVE_OUTOFSPACE // The presolve is incomplete due to lack of space. + WRN_PRESOLVE_PRIMAL_PERTUBATIONS Code = C.MSK_RES_WRN_PRESOLVE_PRIMAL_PERTUBATIONS // The presolve perturbed the bounds of the primal problem. This is an indication that the problem is nearly infeasible. + WRN_WRITE_CHANGED_NAMES Code = C.MSK_RES_WRN_WRITE_CHANGED_NAMES // Some names were changed because they were invalid for the output file format. + WRN_WRITE_DISCARDED_CFIX Code = C.MSK_RES_WRN_WRITE_DISCARDED_CFIX // The fixed objective term was discarded in the output file. + WRN_DUPLICATE_CONSTRAINT_NAMES Code = C.MSK_RES_WRN_DUPLICATE_CONSTRAINT_NAMES // Two constraint names are identical. + WRN_DUPLICATE_VARIABLE_NAMES Code = C.MSK_RES_WRN_DUPLICATE_VARIABLE_NAMES // Two variable names are identical. + WRN_DUPLICATE_BARVARIABLE_NAMES Code = C.MSK_RES_WRN_DUPLICATE_BARVARIABLE_NAMES // Two barvariable names are identical. + WRN_DUPLICATE_CONE_NAMES Code = C.MSK_RES_WRN_DUPLICATE_CONE_NAMES // Two cone names are identical. + WRN_WRITE_LP_INVALID_VAR_NAMES Code = C.MSK_RES_WRN_WRITE_LP_INVALID_VAR_NAMES // LP file will be written with generic variable names. + WRN_WRITE_LP_DUPLICATE_VAR_NAMES Code = C.MSK_RES_WRN_WRITE_LP_DUPLICATE_VAR_NAMES // LP file will be written with generic variable names. + WRN_WRITE_LP_INVALID_CON_NAMES Code = C.MSK_RES_WRN_WRITE_LP_INVALID_CON_NAMES // LP file will be written with generic constraint names. + WRN_WRITE_LP_DUPLICATE_CON_NAMES Code = C.MSK_RES_WRN_WRITE_LP_DUPLICATE_CON_NAMES // LP file will be written with generic constraint names. + WRN_ANA_LARGE_BOUNDS Code = C.MSK_RES_WRN_ANA_LARGE_BOUNDS // Warn against very large bounds. + WRN_ANA_C_ZERO Code = C.MSK_RES_WRN_ANA_C_ZERO // Warn against all objective coefficients being zero. + WRN_ANA_EMPTY_COLS Code = C.MSK_RES_WRN_ANA_EMPTY_COLS // Warn against empty columns. + WRN_ANA_CLOSE_BOUNDS Code = C.MSK_RES_WRN_ANA_CLOSE_BOUNDS // Warn against close bounds. + WRN_ANA_ALMOST_INT_BOUNDS Code = C.MSK_RES_WRN_ANA_ALMOST_INT_BOUNDS // Warn against almost integral bounds. + WRN_NO_INFEASIBILITY_REPORT_WHEN_MATRIX_VARIABLES Code = C.MSK_RES_WRN_NO_INFEASIBILITY_REPORT_WHEN_MATRIX_VARIABLES // An infeasibility report is not available when the problem contains matrix variables. + WRN_NO_DUALIZER Code = C.MSK_RES_WRN_NO_DUALIZER // No automatic dualizer is available for the specified problem. + WRN_SYM_MAT_LARGE Code = C.MSK_RES_WRN_SYM_MAT_LARGE // A numerically large value is specified for an element in E. + WRN_MODIFIED_DOUBLE_PARAMETER Code = C.MSK_RES_WRN_MODIFIED_DOUBLE_PARAMETER // A double parameter related to solver tolerances has a non-default value. + WRN_LARGE_FIJ Code = C.MSK_RES_WRN_LARGE_FIJ // A numerically large value is specified for an element in F. + ERR_LICENSE Code = C.MSK_RES_ERR_LICENSE // Invalid license. + ERR_LICENSE_EXPIRED Code = C.MSK_RES_ERR_LICENSE_EXPIRED // The license has expired. + ERR_LICENSE_VERSION Code = C.MSK_RES_ERR_LICENSE_VERSION // Invalid license version. + ERR_LICENSE_OLD_SERVER_VERSION Code = C.MSK_RES_ERR_LICENSE_OLD_SERVER_VERSION // The license server version is too old. + ERR_SIZE_LICENSE Code = C.MSK_RES_ERR_SIZE_LICENSE // The problem is bigger than the license. + ERR_PROB_LICENSE Code = C.MSK_RES_ERR_PROB_LICENSE // The software is not licensed to solve the problem. + ERR_FILE_LICENSE Code = C.MSK_RES_ERR_FILE_LICENSE // Invalid license file. + ERR_MISSING_LICENSE_FILE Code = C.MSK_RES_ERR_MISSING_LICENSE_FILE // A license cannot be located. + ERR_SIZE_LICENSE_CON Code = C.MSK_RES_ERR_SIZE_LICENSE_CON // The problem has too many constraints. + ERR_SIZE_LICENSE_VAR Code = C.MSK_RES_ERR_SIZE_LICENSE_VAR // The problem has too many variables. + ERR_SIZE_LICENSE_INTVAR Code = C.MSK_RES_ERR_SIZE_LICENSE_INTVAR // The problem contains too many integer variables. + ERR_OPTIMIZER_LICENSE Code = C.MSK_RES_ERR_OPTIMIZER_LICENSE // The optimizer required is not licensed. + ERR_FLEXLM Code = C.MSK_RES_ERR_FLEXLM // The license manager reported an error. + ERR_LICENSE_SERVER Code = C.MSK_RES_ERR_LICENSE_SERVER // The license server is not responding. + ERR_LICENSE_MAX Code = C.MSK_RES_ERR_LICENSE_MAX // Maximum number of licenses is reached. + ERR_LICENSE_MOSEKLM_DAEMON Code = C.MSK_RES_ERR_LICENSE_MOSEKLM_DAEMON // The MOSEKLM license manager daemon is not up and running. + ERR_LICENSE_FEATURE Code = C.MSK_RES_ERR_LICENSE_FEATURE // A requested feature is not available in the license file(s). + ERR_PLATFORM_NOT_LICENSED Code = C.MSK_RES_ERR_PLATFORM_NOT_LICENSED // A requested license feature is not available for the required platform. + ERR_LICENSE_CANNOT_ALLOCATE Code = C.MSK_RES_ERR_LICENSE_CANNOT_ALLOCATE // The license system cannot allocate the memory required. + ERR_LICENSE_CANNOT_CONNECT Code = C.MSK_RES_ERR_LICENSE_CANNOT_CONNECT // MOSEK cannot connect to the license server. + ERR_LICENSE_INVALID_HOSTID Code = C.MSK_RES_ERR_LICENSE_INVALID_HOSTID // The host ID specified in the license file does not match the host ID of the computer. + ERR_LICENSE_SERVER_VERSION Code = C.MSK_RES_ERR_LICENSE_SERVER_VERSION // The version specified in the checkout request is greater than the highest version number the daemon supports. + ERR_LICENSE_NO_SERVER_SUPPORT Code = C.MSK_RES_ERR_LICENSE_NO_SERVER_SUPPORT // The license server does not support the requested feature. + ERR_LICENSE_NO_SERVER_LINE Code = C.MSK_RES_ERR_LICENSE_NO_SERVER_LINE // No SERVER lines in license file. + ERR_OLDER_DLL Code = C.MSK_RES_ERR_OLDER_DLL // The dynamic link library is older than the specified version. + ERR_NEWER_DLL Code = C.MSK_RES_ERR_NEWER_DLL // The dynamic link library is newer than the specified version. + ERR_LINK_FILE_DLL Code = C.MSK_RES_ERR_LINK_FILE_DLL // A file cannot be linked to a stream in the DLL version. + ERR_THREAD_MUTEX_INIT Code = C.MSK_RES_ERR_THREAD_MUTEX_INIT // Could not initialize a mutex. + ERR_THREAD_MUTEX_LOCK Code = C.MSK_RES_ERR_THREAD_MUTEX_LOCK // Could not lock a mutex. + ERR_THREAD_MUTEX_UNLOCK Code = C.MSK_RES_ERR_THREAD_MUTEX_UNLOCK // Could not unlock a mutex. + ERR_THREAD_CREATE Code = C.MSK_RES_ERR_THREAD_CREATE // Could not create a thread. + ERR_THREAD_COND_INIT Code = C.MSK_RES_ERR_THREAD_COND_INIT // Could not initialize a condition. + ERR_UNKNOWN Code = C.MSK_RES_ERR_UNKNOWN // Unknown error. + ERR_SPACE Code = C.MSK_RES_ERR_SPACE // Out of space. + ERR_FILE_OPEN Code = C.MSK_RES_ERR_FILE_OPEN // An error occurred while opening a file. + ERR_FILE_READ Code = C.MSK_RES_ERR_FILE_READ // An error occurred while reading file. + ERR_FILE_WRITE Code = C.MSK_RES_ERR_FILE_WRITE // An error occurred while writing to a file. + ERR_DATA_FILE_EXT Code = C.MSK_RES_ERR_DATA_FILE_EXT // The data file format cannot be determined from the file name. + ERR_INVALID_FILE_NAME Code = C.MSK_RES_ERR_INVALID_FILE_NAME // An invalid file name has been specified. + ERR_INVALID_SOL_FILE_NAME Code = C.MSK_RES_ERR_INVALID_SOL_FILE_NAME // An invalid file name has been specified. + ERR_END_OF_FILE Code = C.MSK_RES_ERR_END_OF_FILE // End of file reached. + ERR_NULL_ENV Code = C.MSK_RES_ERR_NULL_ENV // env is a null pointer. + ERR_NULL_TASK Code = C.MSK_RES_ERR_NULL_TASK // task is a null pointer. + ERR_INVALID_STREAM Code = C.MSK_RES_ERR_INVALID_STREAM // An invalid stream is referenced. + ERR_NO_INIT_ENV Code = C.MSK_RES_ERR_NO_INIT_ENV // Environment is not initialized. + ERR_INVALID_TASK Code = C.MSK_RES_ERR_INVALID_TASK // The task is invalid. + ERR_NULL_POINTER Code = C.MSK_RES_ERR_NULL_POINTER // An argument to a function is unexpectedly a null pointer. + ERR_LIVING_TASKS Code = C.MSK_RES_ERR_LIVING_TASKS // Not all tasks associated with the environment have been deleted. + ERR_READ_GZIP Code = C.MSK_RES_ERR_READ_GZIP // Error encountered in GZIP stream. + ERR_READ_ZSTD Code = C.MSK_RES_ERR_READ_ZSTD // Error encountered in ZSTD stream. + ERR_BLANK_NAME Code = C.MSK_RES_ERR_BLANK_NAME // An all blank name has been specified. + ERR_DUP_NAME Code = C.MSK_RES_ERR_DUP_NAME // Duplicate names specified. + ERR_FORMAT_STRING Code = C.MSK_RES_ERR_FORMAT_STRING // The name format string is invalid. + ERR_SPARSITY_SPECIFICATION Code = C.MSK_RES_ERR_SPARSITY_SPECIFICATION // The sparsity included an index that was out of bounds of the shape. + ERR_MISMATCHING_DIMENSION Code = C.MSK_RES_ERR_MISMATCHING_DIMENSION // Mismatching dimensions specified in arguments + ERR_INVALID_OBJ_NAME Code = C.MSK_RES_ERR_INVALID_OBJ_NAME // An invalid objective name is specified. + ERR_INVALID_CON_NAME Code = C.MSK_RES_ERR_INVALID_CON_NAME // An invalid constraint name is used. + ERR_INVALID_VAR_NAME Code = C.MSK_RES_ERR_INVALID_VAR_NAME // An invalid variable name is used. + ERR_INVALID_CONE_NAME Code = C.MSK_RES_ERR_INVALID_CONE_NAME // An invalid cone name is used. + ERR_INVALID_BARVAR_NAME Code = C.MSK_RES_ERR_INVALID_BARVAR_NAME // An invalid symmetric matrix variable name is used. + ERR_SPACE_LEAKING Code = C.MSK_RES_ERR_SPACE_LEAKING // MOSEK is leaking memory. + ERR_SPACE_NO_INFO Code = C.MSK_RES_ERR_SPACE_NO_INFO // No available information about the space usage. + ERR_DIMENSION_SPECIFICATION Code = C.MSK_RES_ERR_DIMENSION_SPECIFICATION // Invalid dimension specification + ERR_AXIS_NAME_SPECIFICATION Code = C.MSK_RES_ERR_AXIS_NAME_SPECIFICATION // Invalid axis names specification + ERR_READ_FORMAT Code = C.MSK_RES_ERR_READ_FORMAT // The specified format cannot be read. + ERR_MPS_FILE Code = C.MSK_RES_ERR_MPS_FILE // An error occurred while reading an MPS file. + ERR_MPS_INV_FIELD Code = C.MSK_RES_ERR_MPS_INV_FIELD // Invalid field occurred while reading an MPS file. + ERR_MPS_INV_MARKER Code = C.MSK_RES_ERR_MPS_INV_MARKER // An invalid marker has been specified in the MPS file. + ERR_MPS_NULL_CON_NAME Code = C.MSK_RES_ERR_MPS_NULL_CON_NAME // An empty constraint name is used in an MPS file. + ERR_MPS_NULL_VAR_NAME Code = C.MSK_RES_ERR_MPS_NULL_VAR_NAME // An empty variable name is used in an MPS file. + ERR_MPS_UNDEF_CON_NAME Code = C.MSK_RES_ERR_MPS_UNDEF_CON_NAME // An undefined constraint name occurred in an MPS file. + ERR_MPS_UNDEF_VAR_NAME Code = C.MSK_RES_ERR_MPS_UNDEF_VAR_NAME // An undefined variable name occurred in an MPS file. + ERR_MPS_INVALID_CON_KEY Code = C.MSK_RES_ERR_MPS_INVALID_CON_KEY // An invalid constraint key occurred in an MPS file. + ERR_MPS_INVALID_BOUND_KEY Code = C.MSK_RES_ERR_MPS_INVALID_BOUND_KEY // An invalid bound key occurred in an MPS file. + ERR_MPS_INVALID_SEC_NAME Code = C.MSK_RES_ERR_MPS_INVALID_SEC_NAME // An invalid section name occurred in an MPS file. + ERR_MPS_NO_OBJECTIVE Code = C.MSK_RES_ERR_MPS_NO_OBJECTIVE // No objective is defined in an MPS file. + ERR_MPS_SPLITTED_VAR Code = C.MSK_RES_ERR_MPS_SPLITTED_VAR // The non-zero elements in A corresponding to a variable in an MPS file must be specified consecutively. + ERR_MPS_MUL_CON_NAME Code = C.MSK_RES_ERR_MPS_MUL_CON_NAME // A constraint name is specified multiple times in the ROWS section in an MPS file. + ERR_MPS_MUL_QSEC Code = C.MSK_RES_ERR_MPS_MUL_QSEC // Multiple QSECTIONs are specified for a constraint. + ERR_MPS_MUL_QOBJ Code = C.MSK_RES_ERR_MPS_MUL_QOBJ // The Q term in the objective is specified multiple times. + ERR_MPS_INV_SEC_ORDER Code = C.MSK_RES_ERR_MPS_INV_SEC_ORDER // The sections in an MPS file is not in the correct order. + ERR_MPS_MUL_CSEC Code = C.MSK_RES_ERR_MPS_MUL_CSEC // Multiple CSECTIONs are given the same name. + ERR_MPS_CONE_TYPE Code = C.MSK_RES_ERR_MPS_CONE_TYPE // Invalid cone type specified in a CSECTION. + ERR_MPS_CONE_OVERLAP Code = C.MSK_RES_ERR_MPS_CONE_OVERLAP // A variable is specified to be a member of several cones. + ERR_MPS_CONE_REPEAT Code = C.MSK_RES_ERR_MPS_CONE_REPEAT // A variable is repeated within the CSECTION. + ERR_MPS_NON_SYMMETRIC_Q Code = C.MSK_RES_ERR_MPS_NON_SYMMETRIC_Q // A non symmetric matrix has been speciefied. + ERR_MPS_DUPLICATE_Q_ELEMENT Code = C.MSK_RES_ERR_MPS_DUPLICATE_Q_ELEMENT // Duplicate elements is specified in a Q matrix. + ERR_MPS_INVALID_OBJSENSE Code = C.MSK_RES_ERR_MPS_INVALID_OBJSENSE // An invalid objective sense is specified. + ERR_MPS_TAB_IN_FIELD2 Code = C.MSK_RES_ERR_MPS_TAB_IN_FIELD2 // A tab char occurred in field 2. + ERR_MPS_TAB_IN_FIELD3 Code = C.MSK_RES_ERR_MPS_TAB_IN_FIELD3 // A tab char occurred in field 3. + ERR_MPS_TAB_IN_FIELD5 Code = C.MSK_RES_ERR_MPS_TAB_IN_FIELD5 // A tab char occurred in field 5. + ERR_MPS_INVALID_OBJ_NAME Code = C.MSK_RES_ERR_MPS_INVALID_OBJ_NAME // An invalid objective name is specified. + ERR_MPS_INVALID_KEY Code = C.MSK_RES_ERR_MPS_INVALID_KEY // An invalid indicator key occurred in an MPS file. + ERR_MPS_INVALID_INDICATOR_CONSTRAINT Code = C.MSK_RES_ERR_MPS_INVALID_INDICATOR_CONSTRAINT // An invalid indicator constraint is used. It must not be a ranged constraint. + ERR_MPS_INVALID_INDICATOR_VARIABLE Code = C.MSK_RES_ERR_MPS_INVALID_INDICATOR_VARIABLE // An invalid indicator variable is specfied. It must be a binary variable. + ERR_MPS_INVALID_INDICATOR_VALUE Code = C.MSK_RES_ERR_MPS_INVALID_INDICATOR_VALUE // An invalid indicator value is specfied. It must be either 0 or 1. + ERR_MPS_INVALID_INDICATOR_QUADRATIC_CONSTRAINT Code = C.MSK_RES_ERR_MPS_INVALID_INDICATOR_QUADRATIC_CONSTRAINT // A quadratic constraint can be be an indicator constraint. + ERR_OPF_SYNTAX Code = C.MSK_RES_ERR_OPF_SYNTAX // Syntax error in an OPF file + ERR_OPF_PREMATURE_EOF Code = C.MSK_RES_ERR_OPF_PREMATURE_EOF // Premature end of file in an OPF file. + ERR_OPF_MISMATCHED_TAG Code = C.MSK_RES_ERR_OPF_MISMATCHED_TAG // Mismatched end-tag in OPF file + ERR_OPF_DUPLICATE_BOUND Code = C.MSK_RES_ERR_OPF_DUPLICATE_BOUND // Either upper or lower bound was specified twice in OPF file + ERR_OPF_DUPLICATE_CONSTRAINT_NAME Code = C.MSK_RES_ERR_OPF_DUPLICATE_CONSTRAINT_NAME // Duplicate constraint name in OPF File + ERR_OPF_INVALID_CONE_TYPE Code = C.MSK_RES_ERR_OPF_INVALID_CONE_TYPE // Invalid cone type in OPF File + ERR_OPF_INCORRECT_TAG_PARAM Code = C.MSK_RES_ERR_OPF_INCORRECT_TAG_PARAM // Invalid number of parameters in start-tag in OPF File + ERR_OPF_INVALID_TAG Code = C.MSK_RES_ERR_OPF_INVALID_TAG // Invalid start-tag in OPF File + ERR_OPF_DUPLICATE_CONE_ENTRY Code = C.MSK_RES_ERR_OPF_DUPLICATE_CONE_ENTRY // Same variable appears in multiple cones in OPF File + ERR_OPF_TOO_LARGE Code = C.MSK_RES_ERR_OPF_TOO_LARGE // The problem is too large to be correctly loaded + ERR_OPF_DUAL_INTEGER_SOLUTION Code = C.MSK_RES_ERR_OPF_DUAL_INTEGER_SOLUTION // Dual solution values are not allowed in OPF File + ERR_LP_EMPTY Code = C.MSK_RES_ERR_LP_EMPTY // The problem cannot be written to an LP formatted file. + ERR_WRITE_MPS_INVALID_NAME Code = C.MSK_RES_ERR_WRITE_MPS_INVALID_NAME // An invalid name is created while writing an MPS file. + ERR_LP_INVALID_VAR_NAME Code = C.MSK_RES_ERR_LP_INVALID_VAR_NAME // A variable name is invalid when used in an LP formatted file. + ERR_WRITE_OPF_INVALID_VAR_NAME Code = C.MSK_RES_ERR_WRITE_OPF_INVALID_VAR_NAME // Empty variable names cannot be written to OPF files. + ERR_LP_FILE_FORMAT Code = C.MSK_RES_ERR_LP_FILE_FORMAT // Syntax error in an LP file. + ERR_LP_EXPECTED_NUMBER Code = C.MSK_RES_ERR_LP_EXPECTED_NUMBER // Expected a number in LP file + ERR_READ_LP_MISSING_END_TAG Code = C.MSK_RES_ERR_READ_LP_MISSING_END_TAG // Syntax error in LP fil. Possibly missing End tag. + ERR_LP_INDICATOR_VAR Code = C.MSK_RES_ERR_LP_INDICATOR_VAR // An indicator variable was not declared binary + ERR_LP_EXPECTED_OBJECTIVE Code = C.MSK_RES_ERR_LP_EXPECTED_OBJECTIVE // Expected an objective section in LP file + ERR_LP_EXPECTED_CONSTRAINT_RELATION Code = C.MSK_RES_ERR_LP_EXPECTED_CONSTRAINT_RELATION // Expected constraint relation + ERR_LP_AMBIGUOUS_CONSTRAINT_BOUND Code = C.MSK_RES_ERR_LP_AMBIGUOUS_CONSTRAINT_BOUND // Constraint has ambiguous or invalid bound + ERR_LP_DUPLICATE_SECTION Code = C.MSK_RES_ERR_LP_DUPLICATE_SECTION // Duplicate section + ERR_READ_LP_DELAYED_ROWS_NOT_SUPPORTED Code = C.MSK_RES_ERR_READ_LP_DELAYED_ROWS_NOT_SUPPORTED // Duplicate section + ERR_WRITING_FILE Code = C.MSK_RES_ERR_WRITING_FILE // An error occurred while writing file + ERR_INVALID_NAME_IN_SOL_FILE Code = C.MSK_RES_ERR_INVALID_NAME_IN_SOL_FILE // An invalid name occurred in a solution file. + ERR_JSON_SYNTAX Code = C.MSK_RES_ERR_JSON_SYNTAX // Syntax error in an JSON data + ERR_JSON_STRING Code = C.MSK_RES_ERR_JSON_STRING // Error in JSON string. + ERR_JSON_NUMBER_OVERFLOW Code = C.MSK_RES_ERR_JSON_NUMBER_OVERFLOW // Invalid number entry - wrong type or value overflow. + ERR_JSON_FORMAT Code = C.MSK_RES_ERR_JSON_FORMAT // Error in an JSON Task file + ERR_JSON_DATA Code = C.MSK_RES_ERR_JSON_DATA // Inconsistent data in JSON Task file + ERR_JSON_MISSING_DATA Code = C.MSK_RES_ERR_JSON_MISSING_DATA // Missing data section in JSON task file. + ERR_PTF_INCOMPATIBILITY Code = C.MSK_RES_ERR_PTF_INCOMPATIBILITY // Incompatible item + ERR_PTF_UNDEFINED_ITEM Code = C.MSK_RES_ERR_PTF_UNDEFINED_ITEM // Undefined symbol referenced + ERR_PTF_INCONSISTENCY Code = C.MSK_RES_ERR_PTF_INCONSISTENCY // Inconsistent size of item + ERR_PTF_FORMAT Code = C.MSK_RES_ERR_PTF_FORMAT // Syntax error in an PTF file + ERR_ARGUMENT_LENNEQ Code = C.MSK_RES_ERR_ARGUMENT_LENNEQ // Incorrect length of arguments. + ERR_ARGUMENT_TYPE Code = C.MSK_RES_ERR_ARGUMENT_TYPE // Incorrect argument type. + ERR_NUM_ARGUMENTS Code = C.MSK_RES_ERR_NUM_ARGUMENTS // Incorrect number of function arguments. + ERR_IN_ARGUMENT Code = C.MSK_RES_ERR_IN_ARGUMENT // A function argument is incorrect. + ERR_ARGUMENT_DIMENSION Code = C.MSK_RES_ERR_ARGUMENT_DIMENSION // A function argument is of incorrect dimension. + ERR_SHAPE_IS_TOO_LARGE Code = C.MSK_RES_ERR_SHAPE_IS_TOO_LARGE // The size of the n-dimensional shape is too large. + ERR_INDEX_IS_TOO_SMALL Code = C.MSK_RES_ERR_INDEX_IS_TOO_SMALL // An index in an argument is too small. + ERR_INDEX_IS_TOO_LARGE Code = C.MSK_RES_ERR_INDEX_IS_TOO_LARGE // An index in an argument is too large. + ERR_INDEX_IS_NOT_UNIQUE Code = C.MSK_RES_ERR_INDEX_IS_NOT_UNIQUE // An index in an argument is is unique. + ERR_PARAM_NAME Code = C.MSK_RES_ERR_PARAM_NAME // A parameter name is not correct. + ERR_PARAM_NAME_DOU Code = C.MSK_RES_ERR_PARAM_NAME_DOU // A parameter name is not correct. + ERR_PARAM_NAME_INT Code = C.MSK_RES_ERR_PARAM_NAME_INT // A parameter name is not correct. + ERR_PARAM_NAME_STR Code = C.MSK_RES_ERR_PARAM_NAME_STR // A parameter name is not correct. + ERR_PARAM_INDEX Code = C.MSK_RES_ERR_PARAM_INDEX // Parameter index is out of range. + ERR_PARAM_IS_TOO_LARGE Code = C.MSK_RES_ERR_PARAM_IS_TOO_LARGE // A parameter value is too large. + ERR_PARAM_IS_TOO_SMALL Code = C.MSK_RES_ERR_PARAM_IS_TOO_SMALL // A parameter value is too small. + ERR_PARAM_VALUE_STR Code = C.MSK_RES_ERR_PARAM_VALUE_STR // A parameter value string is incorrect. + ERR_PARAM_TYPE Code = C.MSK_RES_ERR_PARAM_TYPE // A parameter type is invalid. + ERR_INF_DOU_INDEX Code = C.MSK_RES_ERR_INF_DOU_INDEX // A double information index is out of range for the specified type. + ERR_INF_INT_INDEX Code = C.MSK_RES_ERR_INF_INT_INDEX // An integer information index is out of range for the specified type. + ERR_INDEX_ARR_IS_TOO_SMALL Code = C.MSK_RES_ERR_INDEX_ARR_IS_TOO_SMALL // An index in an array argument is too small. + ERR_INDEX_ARR_IS_TOO_LARGE Code = C.MSK_RES_ERR_INDEX_ARR_IS_TOO_LARGE // An index in an array argument is too large. + ERR_INF_LINT_INDEX Code = C.MSK_RES_ERR_INF_LINT_INDEX // A long integer information index is out of range for the specified type. + ERR_ARG_IS_TOO_SMALL Code = C.MSK_RES_ERR_ARG_IS_TOO_SMALL // The value of a argument is too small. + ERR_ARG_IS_TOO_LARGE Code = C.MSK_RES_ERR_ARG_IS_TOO_LARGE // The value of a argument is too large. + ERR_INVALID_WHICHSOL Code = C.MSK_RES_ERR_INVALID_WHICHSOL // whichsol is invalid. + ERR_INF_DOU_NAME Code = C.MSK_RES_ERR_INF_DOU_NAME // A double information name is invalid. + ERR_INF_INT_NAME Code = C.MSK_RES_ERR_INF_INT_NAME // An integer information name is invalid. + ERR_INF_TYPE Code = C.MSK_RES_ERR_INF_TYPE // The information type is invalid. + ERR_INF_LINT_NAME Code = C.MSK_RES_ERR_INF_LINT_NAME // A long integer information name is invalid. + ERR_INDEX Code = C.MSK_RES_ERR_INDEX // An index is out of range. + ERR_WHICHSOL Code = C.MSK_RES_ERR_WHICHSOL // The solution defined by whichsol does not exists. + ERR_SOLITEM Code = C.MSK_RES_ERR_SOLITEM // The solution number solemn does not exists. + ERR_WHICHITEM_NOT_ALLOWED Code = C.MSK_RES_ERR_WHICHITEM_NOT_ALLOWED // whichitem is unacceptable. + ERR_MAXNUMCON Code = C.MSK_RES_ERR_MAXNUMCON // Invalid maximum number of constraints specified. + ERR_MAXNUMVAR Code = C.MSK_RES_ERR_MAXNUMVAR // The maximum number of variables limit is too small. + ERR_MAXNUMBARVAR Code = C.MSK_RES_ERR_MAXNUMBARVAR // The maximum number of semidefinite variables limit is too small. + ERR_MAXNUMQNZ Code = C.MSK_RES_ERR_MAXNUMQNZ // Too small maximum number of non-zeros for the Q matrices is specified. + ERR_TOO_SMALL_MAX_NUM_NZ Code = C.MSK_RES_ERR_TOO_SMALL_MAX_NUM_NZ // The maximum number of non-zeros specified is too small. + ERR_INVALID_IDX Code = C.MSK_RES_ERR_INVALID_IDX // A specified index is invalid. + ERR_INVALID_MAX_NUM Code = C.MSK_RES_ERR_INVALID_MAX_NUM // A specified index is invalid. + ERR_UNALLOWED_WHICHSOL Code = C.MSK_RES_ERR_UNALLOWED_WHICHSOL // The value of whichsol is not allowed. + ERR_NUMCONLIM Code = C.MSK_RES_ERR_NUMCONLIM // Maximum number of constraints limit is exceeded. + ERR_NUMVARLIM Code = C.MSK_RES_ERR_NUMVARLIM // Maximum number of variables limit is exceeded. + ERR_TOO_SMALL_MAXNUMANZ Code = C.MSK_RES_ERR_TOO_SMALL_MAXNUMANZ // Too small maximum number of non-zeros in A specified. + ERR_INV_APTRE Code = C.MSK_RES_ERR_INV_APTRE // aptre\[j\] is strictly smaller than aptrb\[j\] for some j. + ERR_MUL_A_ELEMENT Code = C.MSK_RES_ERR_MUL_A_ELEMENT // An element in A is defined multiple times. + ERR_INV_BK Code = C.MSK_RES_ERR_INV_BK // Invalid bound key. + ERR_INV_BKC Code = C.MSK_RES_ERR_INV_BKC // Invalid bound key is specified for a constraint. + ERR_INV_BKX Code = C.MSK_RES_ERR_INV_BKX // An invalid bound key is specified for a variable. + ERR_INV_VAR_TYPE Code = C.MSK_RES_ERR_INV_VAR_TYPE // An invalid variable type is specified for a variable. + ERR_SOLVER_PROBTYPE Code = C.MSK_RES_ERR_SOLVER_PROBTYPE // Problem type does not match the chosen optimizer. + ERR_OBJECTIVE_RANGE Code = C.MSK_RES_ERR_OBJECTIVE_RANGE // Empty objective range. + ERR_INV_RESCODE Code = C.MSK_RES_ERR_INV_RESCODE // Invalid response code. + ERR_INV_IINF Code = C.MSK_RES_ERR_INV_IINF // Invalid integer information item. + ERR_INV_LIINF Code = C.MSK_RES_ERR_INV_LIINF // Invalid long integer information item. + ERR_INV_DINF Code = C.MSK_RES_ERR_INV_DINF // Invalid double information item. + ERR_BASIS Code = C.MSK_RES_ERR_BASIS // Invalid basis is specified. + ERR_INV_SKC Code = C.MSK_RES_ERR_INV_SKC // Invalid value in skc encountered. + ERR_INV_SKX Code = C.MSK_RES_ERR_INV_SKX // Invalid value in skx encountered. + ERR_INV_SK_STR Code = C.MSK_RES_ERR_INV_SK_STR // Invalid status key string encountered. + ERR_INV_SK Code = C.MSK_RES_ERR_INV_SK // Invalid status key code encountered. + ERR_INV_CONE_TYPE_STR Code = C.MSK_RES_ERR_INV_CONE_TYPE_STR // Invalid cone type string encountered. + ERR_INV_CONE_TYPE Code = C.MSK_RES_ERR_INV_CONE_TYPE // Invalid cone type code encountered. + ERR_INV_SKN Code = C.MSK_RES_ERR_INV_SKN // Invalid value in skn encountered. + ERR_INVALID_SURPLUS Code = C.MSK_RES_ERR_INVALID_SURPLUS // Invalid surplus. + ERR_INV_NAME_ITEM Code = C.MSK_RES_ERR_INV_NAME_ITEM // An invalid name item code is used. + ERR_PRO_ITEM Code = C.MSK_RES_ERR_PRO_ITEM // An invalid problem item is used. + ERR_INVALID_FORMAT_TYPE Code = C.MSK_RES_ERR_INVALID_FORMAT_TYPE // Invalid format type. + ERR_FIRSTI Code = C.MSK_RES_ERR_FIRSTI // Invalid firsti. + ERR_LASTI Code = C.MSK_RES_ERR_LASTI // Invalid lasti. + ERR_FIRSTJ Code = C.MSK_RES_ERR_FIRSTJ // Invalid firstj. + ERR_LASTJ Code = C.MSK_RES_ERR_LASTJ // Invalid lastj. + ERR_MAX_LEN_IS_TOO_SMALL Code = C.MSK_RES_ERR_MAX_LEN_IS_TOO_SMALL // A maximum length that is too small has been specified. + ERR_NONLINEAR_EQUALITY Code = C.MSK_RES_ERR_NONLINEAR_EQUALITY // The model contains a nonlinear equality. + ERR_NONCONVEX Code = C.MSK_RES_ERR_NONCONVEX // The optimization problem is nonconvex. + ERR_NONLINEAR_RANGED Code = C.MSK_RES_ERR_NONLINEAR_RANGED // The problem contains a nonlinear constraint with inite lower and upper bound. + ERR_CON_Q_NOT_PSD Code = C.MSK_RES_ERR_CON_Q_NOT_PSD // The quadratic constraint matrix is not PSD. + ERR_CON_Q_NOT_NSD Code = C.MSK_RES_ERR_CON_Q_NOT_NSD // The quadratic constraint matrix is not NSD. + ERR_OBJ_Q_NOT_PSD Code = C.MSK_RES_ERR_OBJ_Q_NOT_PSD // The quadratic coefficient matrix in the objective is not PSD. + ERR_OBJ_Q_NOT_NSD Code = C.MSK_RES_ERR_OBJ_Q_NOT_NSD // The quadratic coefficient matrix in the objective is not NSD. + ERR_ARGUMENT_PERM_ARRAY Code = C.MSK_RES_ERR_ARGUMENT_PERM_ARRAY // An invalid permutation array is specified. + ERR_CONE_INDEX Code = C.MSK_RES_ERR_CONE_INDEX // An index of a non-existing cone has been specified. + ERR_CONE_SIZE Code = C.MSK_RES_ERR_CONE_SIZE // A cone with incorrect number of members is specified. + ERR_CONE_OVERLAP Code = C.MSK_RES_ERR_CONE_OVERLAP // One or more of variables in the cone to be added is already member of another cone. + ERR_CONE_REP_VAR Code = C.MSK_RES_ERR_CONE_REP_VAR // A variable is included multiple times in the cone. + ERR_MAXNUMCONE Code = C.MSK_RES_ERR_MAXNUMCONE // The value specified for maxnumcone is too small. + ERR_CONE_TYPE Code = C.MSK_RES_ERR_CONE_TYPE // Invalid cone type specified. + ERR_CONE_TYPE_STR Code = C.MSK_RES_ERR_CONE_TYPE_STR // Invalid cone type specified. + ERR_CONE_OVERLAP_APPEND Code = C.MSK_RES_ERR_CONE_OVERLAP_APPEND // The cone to be appended has one variable which is already member of another cone. + ERR_REMOVE_CONE_VARIABLE Code = C.MSK_RES_ERR_REMOVE_CONE_VARIABLE // A variable cannot be removed because it will make a cone invalid. + ERR_APPENDING_TOO_BIG_CONE Code = C.MSK_RES_ERR_APPENDING_TOO_BIG_CONE // Trying to append a too big cone. + ERR_CONE_PARAMETER Code = C.MSK_RES_ERR_CONE_PARAMETER // An invalid cone parameter. + ERR_SOL_FILE_INVALID_NUMBER Code = C.MSK_RES_ERR_SOL_FILE_INVALID_NUMBER // An invalid number is specified in a solution file. + ERR_HUGE_C Code = C.MSK_RES_ERR_HUGE_C // A huge value in absolute size is specified for an objective coefficient. + ERR_HUGE_AIJ Code = C.MSK_RES_ERR_HUGE_AIJ // A numerically huge value is specified for an element in A. + ERR_DUPLICATE_AIJ Code = C.MSK_RES_ERR_DUPLICATE_AIJ // An element in the A matrix is specified twice. + ERR_LOWER_BOUND_IS_A_NAN Code = C.MSK_RES_ERR_LOWER_BOUND_IS_A_NAN // The lower bound specified is not a number (nan). + ERR_UPPER_BOUND_IS_A_NAN Code = C.MSK_RES_ERR_UPPER_BOUND_IS_A_NAN // The upper bound specified is not a number (nan). + ERR_INFINITE_BOUND Code = C.MSK_RES_ERR_INFINITE_BOUND // A numerically huge bound value is specified. + ERR_INV_QOBJ_SUBI Code = C.MSK_RES_ERR_INV_QOBJ_SUBI // Invalid value %d at qosubi. + ERR_INV_QOBJ_SUBJ Code = C.MSK_RES_ERR_INV_QOBJ_SUBJ // Invalid value in qosubj. + ERR_INV_QOBJ_VAL Code = C.MSK_RES_ERR_INV_QOBJ_VAL // Invalid value in qoval. + ERR_INV_QCON_SUBK Code = C.MSK_RES_ERR_INV_QCON_SUBK // Invalid value in qcsubk. + ERR_INV_QCON_SUBI Code = C.MSK_RES_ERR_INV_QCON_SUBI // Invalid value in qcsubi. + ERR_INV_QCON_SUBJ Code = C.MSK_RES_ERR_INV_QCON_SUBJ // Invalid value in qcsubj. + ERR_INV_QCON_VAL Code = C.MSK_RES_ERR_INV_QCON_VAL // Invalid value in qcval. + ERR_QCON_SUBI_TOO_SMALL Code = C.MSK_RES_ERR_QCON_SUBI_TOO_SMALL // Invalid value in qcsubi. + ERR_QCON_SUBI_TOO_LARGE Code = C.MSK_RES_ERR_QCON_SUBI_TOO_LARGE // Invalid value in qcsubi. + ERR_QOBJ_UPPER_TRIANGLE Code = C.MSK_RES_ERR_QOBJ_UPPER_TRIANGLE // An element in the upper triangle of the quadratic term in the objective is specified. + ERR_QCON_UPPER_TRIANGLE Code = C.MSK_RES_ERR_QCON_UPPER_TRIANGLE // An element in the upper triangle of the quadratic term in a constraint. + ERR_FIXED_BOUND_VALUES Code = C.MSK_RES_ERR_FIXED_BOUND_VALUES // A fixed constraint/variable has been specified using the bound keys but the numerical bounds are different. + ERR_TOO_SMALL_A_TRUNCATION_VALUE Code = C.MSK_RES_ERR_TOO_SMALL_A_TRUNCATION_VALUE // A too small value for the A trucation value is specified. + ERR_INVALID_OBJECTIVE_SENSE Code = C.MSK_RES_ERR_INVALID_OBJECTIVE_SENSE // An invalid objective sense is specified. + ERR_UNDEFINED_OBJECTIVE_SENSE Code = C.MSK_RES_ERR_UNDEFINED_OBJECTIVE_SENSE // The objective sense has not been specified before the optimization. + ERR_Y_IS_UNDEFINED Code = C.MSK_RES_ERR_Y_IS_UNDEFINED // The solution item y is undefined. + ERR_NAN_IN_DOUBLE_DATA Code = C.MSK_RES_ERR_NAN_IN_DOUBLE_DATA // An invalid floating value was used in some double data. + ERR_INF_IN_DOUBLE_DATA Code = C.MSK_RES_ERR_INF_IN_DOUBLE_DATA // An infinite floating value was used in some double data. + ERR_NAN_IN_BLC Code = C.MSK_RES_ERR_NAN_IN_BLC // blc contains an invalid floating point value, i.e. a NaN. + ERR_NAN_IN_BUC Code = C.MSK_RES_ERR_NAN_IN_BUC // buc contains an invalid floating point value, i.e. a NaN. + ERR_INVALID_CFIX Code = C.MSK_RES_ERR_INVALID_CFIX // An invalid fixed term in the objective is speficied. + ERR_NAN_IN_C Code = C.MSK_RES_ERR_NAN_IN_C // c contains an invalid floating point value, i.e. a NaN. + ERR_NAN_IN_BLX Code = C.MSK_RES_ERR_NAN_IN_BLX // blx contains an invalid floating point value, i.e. a NaN. + ERR_NAN_IN_BUX Code = C.MSK_RES_ERR_NAN_IN_BUX // bux contains an invalid floating point value, i.e. a NaN. + ERR_INVALID_AIJ Code = C.MSK_RES_ERR_INVALID_AIJ // a\[i,j\] contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_INVALID_CJ Code = C.MSK_RES_ERR_INVALID_CJ // c\[j\] contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_SYM_MAT_INVALID Code = C.MSK_RES_ERR_SYM_MAT_INVALID // A symmetric matrix contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_SYM_MAT_HUGE Code = C.MSK_RES_ERR_SYM_MAT_HUGE // A numerically huge value is specified for an element in E. + ERR_INV_PROBLEM Code = C.MSK_RES_ERR_INV_PROBLEM // Invalid problem type. + ERR_MIXED_CONIC_AND_NL Code = C.MSK_RES_ERR_MIXED_CONIC_AND_NL // The problem contains both conic and nonlinear constraints. + ERR_GLOBAL_INV_CONIC_PROBLEM Code = C.MSK_RES_ERR_GLOBAL_INV_CONIC_PROBLEM // The global optimizer can only be applied to problems without semidefinite variables. + ERR_INV_OPTIMIZER Code = C.MSK_RES_ERR_INV_OPTIMIZER // An invalid optimizer has been chosen for the problem. + ERR_MIO_NO_OPTIMIZER Code = C.MSK_RES_ERR_MIO_NO_OPTIMIZER // No optimizer is available for the current class of integer optimization problems. + ERR_NO_OPTIMIZER_VAR_TYPE Code = C.MSK_RES_ERR_NO_OPTIMIZER_VAR_TYPE // No optimizer is available for this class of optimization problems. + ERR_FINAL_SOLUTION Code = C.MSK_RES_ERR_FINAL_SOLUTION // An error occurred during the solution finalization. + ERR_FIRST Code = C.MSK_RES_ERR_FIRST // Invalid first. + ERR_LAST Code = C.MSK_RES_ERR_LAST // Invalid last. + ERR_SLICE_SIZE Code = C.MSK_RES_ERR_SLICE_SIZE // Invalid slice size specified. + ERR_NEGATIVE_SURPLUS Code = C.MSK_RES_ERR_NEGATIVE_SURPLUS // Negative surplus. + ERR_NEGATIVE_APPEND Code = C.MSK_RES_ERR_NEGATIVE_APPEND // Cannot append a negative number. + ERR_POSTSOLVE Code = C.MSK_RES_ERR_POSTSOLVE // An error occurred during the postsolve. + ERR_OVERFLOW Code = C.MSK_RES_ERR_OVERFLOW // A computation produced an overflow. + ERR_NO_BASIS_SOL Code = C.MSK_RES_ERR_NO_BASIS_SOL // No basic solution is defined. + ERR_BASIS_FACTOR Code = C.MSK_RES_ERR_BASIS_FACTOR // The factorization of the basis is invalid. + ERR_BASIS_SINGULAR Code = C.MSK_RES_ERR_BASIS_SINGULAR // The basis is singular. + ERR_FACTOR Code = C.MSK_RES_ERR_FACTOR // An error occurred while factorizing a matrix. + ERR_FEASREPAIR_CANNOT_RELAX Code = C.MSK_RES_ERR_FEASREPAIR_CANNOT_RELAX // An optimization problem cannot be relaxed. + ERR_FEASREPAIR_SOLVING_RELAXED Code = C.MSK_RES_ERR_FEASREPAIR_SOLVING_RELAXED // The relaxed problem could not be solved to optimality. + ERR_FEASREPAIR_INCONSISTENT_BOUND Code = C.MSK_RES_ERR_FEASREPAIR_INCONSISTENT_BOUND // The upper bound is less than the lower bound for a variable or a constraint. + ERR_REPAIR_INVALID_PROBLEM Code = C.MSK_RES_ERR_REPAIR_INVALID_PROBLEM // The feasibility repair does not support the specified problem type. + ERR_REPAIR_OPTIMIZATION_FAILED Code = C.MSK_RES_ERR_REPAIR_OPTIMIZATION_FAILED // Computation the optimal relaxation failed. + ERR_NAME_MAX_LEN Code = C.MSK_RES_ERR_NAME_MAX_LEN // A name is longer than the buffer that is supposed to hold it. + ERR_NAME_IS_NULL Code = C.MSK_RES_ERR_NAME_IS_NULL // The name buffer is a null pointer. + ERR_INVALID_COMPRESSION Code = C.MSK_RES_ERR_INVALID_COMPRESSION // Invalid compression type. + ERR_INVALID_IOMODE Code = C.MSK_RES_ERR_INVALID_IOMODE // Invalid io mode. + ERR_NO_PRIMAL_INFEAS_CER Code = C.MSK_RES_ERR_NO_PRIMAL_INFEAS_CER // A certificate of primal infeasibility is not available. + ERR_NO_DUAL_INFEAS_CER Code = C.MSK_RES_ERR_NO_DUAL_INFEAS_CER // A certificate of dual infeasibility is not available. + ERR_NO_SOLUTION_IN_CALLBACK Code = C.MSK_RES_ERR_NO_SOLUTION_IN_CALLBACK // The required solution is not available. + ERR_INV_MARKI Code = C.MSK_RES_ERR_INV_MARKI // Invalid value in marki. + ERR_INV_MARKJ Code = C.MSK_RES_ERR_INV_MARKJ // Invalid value in markj. + ERR_INV_NUMI Code = C.MSK_RES_ERR_INV_NUMI // Invalid numi. + ERR_INV_NUMJ Code = C.MSK_RES_ERR_INV_NUMJ // Invalid numj. + ERR_TASK_INCOMPATIBLE Code = C.MSK_RES_ERR_TASK_INCOMPATIBLE // The Task file is incompatible with this platform. + ERR_TASK_INVALID Code = C.MSK_RES_ERR_TASK_INVALID // The Task file is invalid. + ERR_TASK_WRITE Code = C.MSK_RES_ERR_TASK_WRITE // Failed to write the task file. + ERR_LU_MAX_NUM_TRIES Code = C.MSK_RES_ERR_LU_MAX_NUM_TRIES // Could not compute the LU factors of the matrix within the maximum number of allowed tries. + ERR_INVALID_UTF8 Code = C.MSK_RES_ERR_INVALID_UTF8 // An invalid UTF8 string is encountered. + ERR_INVALID_WCHAR Code = C.MSK_RES_ERR_INVALID_WCHAR // An invalid wchar string is encountered. + ERR_NO_DUAL_FOR_ITG_SOL Code = C.MSK_RES_ERR_NO_DUAL_FOR_ITG_SOL // No dual information is available for the integer solution. + ERR_NO_SNX_FOR_BAS_SOL Code = C.MSK_RES_ERR_NO_SNX_FOR_BAS_SOL // snx is not available for the basis solution. + ERR_INTERNAL Code = C.MSK_RES_ERR_INTERNAL // An internal error occurred. + ERR_API_ARRAY_TOO_SMALL Code = C.MSK_RES_ERR_API_ARRAY_TOO_SMALL // An input array was too short. + ERR_API_CB_CONNECT Code = C.MSK_RES_ERR_API_CB_CONNECT // Failed to connect a callback object. + ERR_API_FATAL_ERROR Code = C.MSK_RES_ERR_API_FATAL_ERROR // An internal error occurred in the API. Please report this problem. + ERR_SEN_FORMAT Code = C.MSK_RES_ERR_SEN_FORMAT // Syntax error in sensitivity analysis file. + ERR_SEN_UNDEF_NAME Code = C.MSK_RES_ERR_SEN_UNDEF_NAME // An undefined name was encountered in the sensitivity analysis file. + ERR_SEN_INDEX_RANGE Code = C.MSK_RES_ERR_SEN_INDEX_RANGE // Index out of range in the sensitivity analysis file. + ERR_SEN_BOUND_INVALID_UP Code = C.MSK_RES_ERR_SEN_BOUND_INVALID_UP // Analysis of upper bound requested for an index, where no upper bound exists. + ERR_SEN_BOUND_INVALID_LO Code = C.MSK_RES_ERR_SEN_BOUND_INVALID_LO // Analysis of lower bound requested for an index, where no lower bound exists. + ERR_SEN_INDEX_INVALID Code = C.MSK_RES_ERR_SEN_INDEX_INVALID // Invalid range given in the sensitivity file. + ERR_SEN_INVALID_REGEXP Code = C.MSK_RES_ERR_SEN_INVALID_REGEXP // Syntax error in regexp or regexp longer than 1024. + ERR_SEN_SOLUTION_STATUS Code = C.MSK_RES_ERR_SEN_SOLUTION_STATUS // No optimal solution found to the original problem given for sensitivity analysis. + ERR_SEN_NUMERICAL Code = C.MSK_RES_ERR_SEN_NUMERICAL // Numerical difficulties encountered performing the sensitivity analysis. + ERR_SEN_UNHANDLED_PROBLEM_TYPE Code = C.MSK_RES_ERR_SEN_UNHANDLED_PROBLEM_TYPE // Sensitivity analysis cannot be performed for the specified problem. + ERR_UNB_STEP_SIZE Code = C.MSK_RES_ERR_UNB_STEP_SIZE // A step-size in an optimizer was unexpectedly unbounded. + ERR_IDENTICAL_TASKS Code = C.MSK_RES_ERR_IDENTICAL_TASKS // Some tasks related to this function call were identical. Unique tasks were expected. + ERR_AD_INVALID_CODELIST Code = C.MSK_RES_ERR_AD_INVALID_CODELIST // The code list data was invalid. + ERR_INTERNAL_TEST_FAILED Code = C.MSK_RES_ERR_INTERNAL_TEST_FAILED // An internal unit test function failed. + ERR_XML_INVALID_PROBLEM_TYPE Code = C.MSK_RES_ERR_XML_INVALID_PROBLEM_TYPE // The problem type is not supported by the XML format. + ERR_INVALID_AMPL_STUB Code = C.MSK_RES_ERR_INVALID_AMPL_STUB // Invalid AMPL stub. + ERR_INT64_TO_INT32_CAST Code = C.MSK_RES_ERR_INT64_TO_INT32_CAST // A 64 bit integer could not be cast to a 32 bit integer. + ERR_SIZE_LICENSE_NUMCORES Code = C.MSK_RES_ERR_SIZE_LICENSE_NUMCORES // The computer contains more cpu cores than the license allows for. + ERR_INFEAS_UNDEFINED Code = C.MSK_RES_ERR_INFEAS_UNDEFINED // The requested value is not defined for this solution type. + ERR_NO_BARX_FOR_SOLUTION Code = C.MSK_RES_ERR_NO_BARX_FOR_SOLUTION // There is no barx available for the solution specified. + ERR_NO_BARS_FOR_SOLUTION Code = C.MSK_RES_ERR_NO_BARS_FOR_SOLUTION // There is no bars available for the solution specified. + ERR_BAR_VAR_DIM Code = C.MSK_RES_ERR_BAR_VAR_DIM // The dimension of a symmetric matrix variable has to be greater than 0. + ERR_SYM_MAT_INVALID_ROW_INDEX Code = C.MSK_RES_ERR_SYM_MAT_INVALID_ROW_INDEX // A row index specified for sparse symmetric matrix is invalid. + ERR_SYM_MAT_INVALID_COL_INDEX Code = C.MSK_RES_ERR_SYM_MAT_INVALID_COL_INDEX // A column index specified for sparse symmetric matrix is invalid. + ERR_SYM_MAT_NOT_LOWER_TRINGULAR Code = C.MSK_RES_ERR_SYM_MAT_NOT_LOWER_TRINGULAR // Only the lower triangular part of sparse symmetric matrix should be specified. + ERR_SYM_MAT_INVALID_VALUE Code = C.MSK_RES_ERR_SYM_MAT_INVALID_VALUE // The numerical value specified in a sparse symmetric matrix is not a floating point value. + ERR_SYM_MAT_DUPLICATE Code = C.MSK_RES_ERR_SYM_MAT_DUPLICATE // A value in a symmetric matric as been specified more than once. + ERR_INVALID_SYM_MAT_DIM Code = C.MSK_RES_ERR_INVALID_SYM_MAT_DIM // A sparse symmetric matrix of invalid dimension is specified. + ERR_API_INTERNAL Code = C.MSK_RES_ERR_API_INTERNAL // An internal fatal error occurred in an interface function. + ERR_INVALID_FILE_FORMAT_FOR_SYM_MAT Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_SYM_MAT // The file format does not support a problem with symmetric matrix variables. + ERR_INVALID_FILE_FORMAT_FOR_CFIX Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_CFIX // The file format does not support a problem with nonzero fixed term in c. + ERR_INVALID_FILE_FORMAT_FOR_RANGED_CONSTRAINTS Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_RANGED_CONSTRAINTS // The file format does not support a problem with ranged constraints. + ERR_INVALID_FILE_FORMAT_FOR_FREE_CONSTRAINTS Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_FREE_CONSTRAINTS // The file format does not support a problem with free constraints. + ERR_INVALID_FILE_FORMAT_FOR_CONES Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_CONES // The file format does not support a problem with the simple cones (deprecated). + ERR_INVALID_FILE_FORMAT_FOR_QUADRATIC_TERMS Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_QUADRATIC_TERMS // The file format does not support a problem with quadratic terms. + ERR_INVALID_FILE_FORMAT_FOR_NONLINEAR Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_NONLINEAR // The file format does not support a problem with nonlinear terms. + ERR_INVALID_FILE_FORMAT_FOR_DISJUNCTIVE_CONSTRAINTS Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_DISJUNCTIVE_CONSTRAINTS // The file format does not support a problem with disjunctive constraints. + ERR_INVALID_FILE_FORMAT_FOR_AFFINE_CONIC_CONSTRAINTS Code = C.MSK_RES_ERR_INVALID_FILE_FORMAT_FOR_AFFINE_CONIC_CONSTRAINTS // The file format does not support a problem with affine conic constraints. + ERR_DUPLICATE_CONSTRAINT_NAMES Code = C.MSK_RES_ERR_DUPLICATE_CONSTRAINT_NAMES // Two constraint names are identical. + ERR_DUPLICATE_VARIABLE_NAMES Code = C.MSK_RES_ERR_DUPLICATE_VARIABLE_NAMES // Two variable names are identical. + ERR_DUPLICATE_BARVARIABLE_NAMES Code = C.MSK_RES_ERR_DUPLICATE_BARVARIABLE_NAMES // Two barvariable names are identical. + ERR_DUPLICATE_CONE_NAMES Code = C.MSK_RES_ERR_DUPLICATE_CONE_NAMES // Two cone names are identical. + ERR_DUPLICATE_DOMAIN_NAMES Code = C.MSK_RES_ERR_DUPLICATE_DOMAIN_NAMES // Two domain names are identical. + ERR_DUPLICATE_DJC_NAMES Code = C.MSK_RES_ERR_DUPLICATE_DJC_NAMES // Two disjunctive constraint names are identical. + ERR_NON_UNIQUE_ARRAY Code = C.MSK_RES_ERR_NON_UNIQUE_ARRAY // An array does not contain unique elements. + ERR_ARGUMENT_IS_TOO_SMALL Code = C.MSK_RES_ERR_ARGUMENT_IS_TOO_SMALL // The value of a function argument is too small. + ERR_ARGUMENT_IS_TOO_LARGE Code = C.MSK_RES_ERR_ARGUMENT_IS_TOO_LARGE // The value of a function argument is too large. + ERR_MIO_INTERNAL Code = C.MSK_RES_ERR_MIO_INTERNAL // A fatal error occurred in the mixed integer optimizer. Please contact MOSEK support. + ERR_INVALID_PROBLEM_TYPE Code = C.MSK_RES_ERR_INVALID_PROBLEM_TYPE // An invalid problem type. + ERR_UNHANDLED_SOLUTION_STATUS Code = C.MSK_RES_ERR_UNHANDLED_SOLUTION_STATUS // Unhandled solution status. + ERR_UPPER_TRIANGLE Code = C.MSK_RES_ERR_UPPER_TRIANGLE // An element in the upper triangle of a lower triangular matrix is specified. + ERR_LAU_SINGULAR_MATRIX Code = C.MSK_RES_ERR_LAU_SINGULAR_MATRIX // A matrix is singular. + ERR_LAU_NOT_POSITIVE_DEFINITE Code = C.MSK_RES_ERR_LAU_NOT_POSITIVE_DEFINITE // A matrix is not positive definite. + ERR_LAU_INVALID_LOWER_TRIANGULAR_MATRIX Code = C.MSK_RES_ERR_LAU_INVALID_LOWER_TRIANGULAR_MATRIX // An invalid lower triangular matrix. + ERR_LAU_UNKNOWN Code = C.MSK_RES_ERR_LAU_UNKNOWN // An unknown error. + ERR_LAU_ARG_M Code = C.MSK_RES_ERR_LAU_ARG_M // Invalid argument m. + ERR_LAU_ARG_N Code = C.MSK_RES_ERR_LAU_ARG_N // Invalid argument n. + ERR_LAU_ARG_K Code = C.MSK_RES_ERR_LAU_ARG_K // Invalid argument k. + ERR_LAU_ARG_TRANSA Code = C.MSK_RES_ERR_LAU_ARG_TRANSA // Invalid argument transa. + ERR_LAU_ARG_TRANSB Code = C.MSK_RES_ERR_LAU_ARG_TRANSB // Invalid argument transb. + ERR_LAU_ARG_UPLO Code = C.MSK_RES_ERR_LAU_ARG_UPLO // Invalid argument uplo. + ERR_LAU_ARG_TRANS Code = C.MSK_RES_ERR_LAU_ARG_TRANS // Invalid argument trans. + ERR_LAU_INVALID_SPARSE_SYMMETRIC_MATRIX Code = C.MSK_RES_ERR_LAU_INVALID_SPARSE_SYMMETRIC_MATRIX // An invalid sparse symmetric matrix is specfified. + ERR_CBF_PARSE Code = C.MSK_RES_ERR_CBF_PARSE // An error occurred while parsing an CBF file. + ERR_CBF_OBJ_SENSE Code = C.MSK_RES_ERR_CBF_OBJ_SENSE // An invalid objective sense is specified. + ERR_CBF_NO_VARIABLES Code = C.MSK_RES_ERR_CBF_NO_VARIABLES // An invalid objective sense is specified. + ERR_CBF_TOO_MANY_CONSTRAINTS Code = C.MSK_RES_ERR_CBF_TOO_MANY_CONSTRAINTS // Too many constraints specified. + ERR_CBF_TOO_MANY_VARIABLES Code = C.MSK_RES_ERR_CBF_TOO_MANY_VARIABLES // Too many variables specified. + ERR_CBF_NO_VERSION_SPECIFIED Code = C.MSK_RES_ERR_CBF_NO_VERSION_SPECIFIED // No version specified. + ERR_CBF_SYNTAX Code = C.MSK_RES_ERR_CBF_SYNTAX // Invalid syntax. + ERR_CBF_DUPLICATE_OBJ Code = C.MSK_RES_ERR_CBF_DUPLICATE_OBJ // Duplicate OBJ keyword. + ERR_CBF_DUPLICATE_CON Code = C.MSK_RES_ERR_CBF_DUPLICATE_CON // Duplicate CON keyword. + ERR_CBF_DUPLICATE_VAR Code = C.MSK_RES_ERR_CBF_DUPLICATE_VAR // Duplicate VAR keyword. + ERR_CBF_DUPLICATE_INT Code = C.MSK_RES_ERR_CBF_DUPLICATE_INT // Duplicate INT keyword. + ERR_CBF_INVALID_VAR_TYPE Code = C.MSK_RES_ERR_CBF_INVALID_VAR_TYPE // Invalid variable type. + ERR_CBF_INVALID_CON_TYPE Code = C.MSK_RES_ERR_CBF_INVALID_CON_TYPE // Invalid constraint type. + ERR_CBF_INVALID_DOMAIN_DIMENSION Code = C.MSK_RES_ERR_CBF_INVALID_DOMAIN_DIMENSION // Invalid domain dimension. + ERR_CBF_DUPLICATE_OBJACOORD Code = C.MSK_RES_ERR_CBF_DUPLICATE_OBJACOORD // Duplicate index in OBJCOORD. + ERR_CBF_DUPLICATE_BCOORD Code = C.MSK_RES_ERR_CBF_DUPLICATE_BCOORD // Duplicate index in BCOORD. + ERR_CBF_DUPLICATE_ACOORD Code = C.MSK_RES_ERR_CBF_DUPLICATE_ACOORD // Duplicate index in ACOORD. + ERR_CBF_TOO_FEW_VARIABLES Code = C.MSK_RES_ERR_CBF_TOO_FEW_VARIABLES // Too few variables defined. + ERR_CBF_TOO_FEW_CONSTRAINTS Code = C.MSK_RES_ERR_CBF_TOO_FEW_CONSTRAINTS // Too few constraints defined. + ERR_CBF_TOO_FEW_INTS Code = C.MSK_RES_ERR_CBF_TOO_FEW_INTS // Too ints specified. + ERR_CBF_TOO_MANY_INTS Code = C.MSK_RES_ERR_CBF_TOO_MANY_INTS // Too ints specified. + ERR_CBF_INVALID_INT_INDEX Code = C.MSK_RES_ERR_CBF_INVALID_INT_INDEX // Invalid INT index. + ERR_CBF_UNSUPPORTED Code = C.MSK_RES_ERR_CBF_UNSUPPORTED // Unsupported feature is present. + ERR_CBF_DUPLICATE_PSDVAR Code = C.MSK_RES_ERR_CBF_DUPLICATE_PSDVAR // Duplicate PSDVAR keyword. + ERR_CBF_INVALID_PSDVAR_DIMENSION Code = C.MSK_RES_ERR_CBF_INVALID_PSDVAR_DIMENSION // Invalid PSDVAR dimension. + ERR_CBF_TOO_FEW_PSDVAR Code = C.MSK_RES_ERR_CBF_TOO_FEW_PSDVAR // Too few variables defined. + ERR_CBF_INVALID_EXP_DIMENSION Code = C.MSK_RES_ERR_CBF_INVALID_EXP_DIMENSION // Invalid dimension of a exponential cone. + ERR_CBF_DUPLICATE_POW_CONES Code = C.MSK_RES_ERR_CBF_DUPLICATE_POW_CONES // Multiple POWCONES specified. + ERR_CBF_DUPLICATE_POW_STAR_CONES Code = C.MSK_RES_ERR_CBF_DUPLICATE_POW_STAR_CONES // Multiple POW*CONES specified. + ERR_CBF_INVALID_POWER Code = C.MSK_RES_ERR_CBF_INVALID_POWER // Invalid power specified. + ERR_CBF_POWER_CONE_IS_TOO_LONG Code = C.MSK_RES_ERR_CBF_POWER_CONE_IS_TOO_LONG // Power cone is too long. + ERR_CBF_INVALID_POWER_CONE_INDEX Code = C.MSK_RES_ERR_CBF_INVALID_POWER_CONE_INDEX // Invalid power cone index. + ERR_CBF_INVALID_POWER_STAR_CONE_INDEX Code = C.MSK_RES_ERR_CBF_INVALID_POWER_STAR_CONE_INDEX // Invalid power star cone index. + ERR_CBF_UNHANDLED_POWER_CONE_TYPE Code = C.MSK_RES_ERR_CBF_UNHANDLED_POWER_CONE_TYPE // An unhandled power cone type. + ERR_CBF_UNHANDLED_POWER_STAR_CONE_TYPE Code = C.MSK_RES_ERR_CBF_UNHANDLED_POWER_STAR_CONE_TYPE // An unhandled power star cone type. + ERR_CBF_POWER_CONE_MISMATCH Code = C.MSK_RES_ERR_CBF_POWER_CONE_MISMATCH // The power cone does not match with it definition. + ERR_CBF_POWER_STAR_CONE_MISMATCH Code = C.MSK_RES_ERR_CBF_POWER_STAR_CONE_MISMATCH // The power star cone does not match with it definition. + ERR_CBF_INVALID_NUMBER_OF_CONES Code = C.MSK_RES_ERR_CBF_INVALID_NUMBER_OF_CONES // Invalid number of cones. + ERR_CBF_INVALID_DIMENSION_OF_CONES Code = C.MSK_RES_ERR_CBF_INVALID_DIMENSION_OF_CONES // Invalid number of cones. + ERR_CBF_INVALID_NUM_OBJACOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_OBJACOORD // Invalid number of OBJACOORD. + ERR_CBF_INVALID_NUM_OBJFCOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_OBJFCOORD // Invalid number of OBJFCOORD. + ERR_CBF_INVALID_NUM_ACOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_ACOORD // Invalid number of ACOORD. + ERR_CBF_INVALID_NUM_BCOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_BCOORD // Invalid number of BCOORD. + ERR_CBF_INVALID_NUM_FCOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_FCOORD // Invalid number of FCOORD. + ERR_CBF_INVALID_NUM_HCOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_HCOORD // Invalid number of HCOORD. + ERR_CBF_INVALID_NUM_DCOORD Code = C.MSK_RES_ERR_CBF_INVALID_NUM_DCOORD // Invalid number of DCOORD. + ERR_CBF_EXPECTED_A_KEYWORD Code = C.MSK_RES_ERR_CBF_EXPECTED_A_KEYWORD // Expected a key word. + ERR_CBF_INVALID_NUM_PSDCON Code = C.MSK_RES_ERR_CBF_INVALID_NUM_PSDCON // Invalid number of PSDCON. + ERR_CBF_DUPLICATE_PSDCON Code = C.MSK_RES_ERR_CBF_DUPLICATE_PSDCON // Duplicate CON keyword. + ERR_CBF_INVALID_DIMENSION_OF_PSDCON Code = C.MSK_RES_ERR_CBF_INVALID_DIMENSION_OF_PSDCON // Invalid PSDCON dimension. + ERR_CBF_INVALID_PSDCON_INDEX Code = C.MSK_RES_ERR_CBF_INVALID_PSDCON_INDEX // Invalid PSDCON index. + ERR_CBF_INVALID_PSDCON_VARIABLE_INDEX Code = C.MSK_RES_ERR_CBF_INVALID_PSDCON_VARIABLE_INDEX // Invalid PSDCON index. + ERR_CBF_INVALID_PSDCON_BLOCK_INDEX Code = C.MSK_RES_ERR_CBF_INVALID_PSDCON_BLOCK_INDEX // Invalid PSDCON index. + ERR_CBF_UNSUPPORTED_CHANGE Code = C.MSK_RES_ERR_CBF_UNSUPPORTED_CHANGE // The CHANGE section is not supported. + ERR_MIO_INVALID_ROOT_OPTIMIZER Code = C.MSK_RES_ERR_MIO_INVALID_ROOT_OPTIMIZER // An invalid root optimizer was selected for the problem type. + ERR_MIO_INVALID_NODE_OPTIMIZER Code = C.MSK_RES_ERR_MIO_INVALID_NODE_OPTIMIZER // An invalid node optimizer was selected for the problem type. + ERR_MPS_WRITE_CPLEX_INVALID_CONE_TYPE Code = C.MSK_RES_ERR_MPS_WRITE_CPLEX_INVALID_CONE_TYPE // An invalid cone type occurs when writing a CPLEX formatted MPS file. + ERR_TOCONIC_CONSTR_Q_NOT_PSD Code = C.MSK_RES_ERR_TOCONIC_CONSTR_Q_NOT_PSD // The matrix defining the quadratric part of constraint is not positive semidefinite. + ERR_TOCONIC_CONSTRAINT_FX Code = C.MSK_RES_ERR_TOCONIC_CONSTRAINT_FX // The quadratic constraint is an equality, thus not convex. + ERR_TOCONIC_CONSTRAINT_RA Code = C.MSK_RES_ERR_TOCONIC_CONSTRAINT_RA // The quadratic constraint has finite lower and upper bound, and therefore it is not convex. + ERR_TOCONIC_CONSTR_NOT_CONIC Code = C.MSK_RES_ERR_TOCONIC_CONSTR_NOT_CONIC // The constraint is not conic representable. + ERR_TOCONIC_OBJECTIVE_NOT_PSD Code = C.MSK_RES_ERR_TOCONIC_OBJECTIVE_NOT_PSD // The matrix defining the quadratric part of the objective function is not positive semidefinite. + ERR_SERVER_CONNECT Code = C.MSK_RES_ERR_SERVER_CONNECT // Failed to connect to remote solver server. + ERR_SERVER_PROTOCOL Code = C.MSK_RES_ERR_SERVER_PROTOCOL // Unexpected message or data from solver server. + ERR_SERVER_STATUS Code = C.MSK_RES_ERR_SERVER_STATUS // Server returned non-ok status code + ERR_SERVER_TOKEN Code = C.MSK_RES_ERR_SERVER_TOKEN // Invalid job ID + ERR_SERVER_ADDRESS Code = C.MSK_RES_ERR_SERVER_ADDRESS // Invalid address + ERR_SERVER_CERTIFICATE Code = C.MSK_RES_ERR_SERVER_CERTIFICATE // Invalid TLS certificate format or path + ERR_SERVER_TLS_CLIENT Code = C.MSK_RES_ERR_SERVER_TLS_CLIENT // Failed to create TLS client + ERR_SERVER_ACCESS_TOKEN Code = C.MSK_RES_ERR_SERVER_ACCESS_TOKEN // Invalid access token + ERR_SERVER_PROBLEM_SIZE Code = C.MSK_RES_ERR_SERVER_PROBLEM_SIZE // The problem is too large. + ERR_DUPLICATE_INDEX_IN_A_SPARSE_MATRIX Code = C.MSK_RES_ERR_DUPLICATE_INDEX_IN_A_SPARSE_MATRIX // An element in a sparse matrix is specified twice. + ERR_DUPLICATE_INDEX_IN_AFEIDX_LIST Code = C.MSK_RES_ERR_DUPLICATE_INDEX_IN_AFEIDX_LIST // An index is specified twice in an affine expression list. + ERR_DUPLICATE_FIJ Code = C.MSK_RES_ERR_DUPLICATE_FIJ // An element in the F matrix is specified twice. + ERR_INVALID_FIJ Code = C.MSK_RES_ERR_INVALID_FIJ // f\[i,j\] contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_HUGE_FIJ Code = C.MSK_RES_ERR_HUGE_FIJ // A numerically huge value is specified for an element in F. + ERR_INVALID_G Code = C.MSK_RES_ERR_INVALID_G // g contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_INVALID_B Code = C.MSK_RES_ERR_INVALID_B // b contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_DOMAIN_INVALID_INDEX Code = C.MSK_RES_ERR_DOMAIN_INVALID_INDEX // A domain index is invalid. + ERR_DOMAIN_DIMENSION Code = C.MSK_RES_ERR_DOMAIN_DIMENSION // A domain dimension is invalid. + ERR_DOMAIN_DIMENSION_PSD Code = C.MSK_RES_ERR_DOMAIN_DIMENSION_PSD // A PSD domain dimension is invalid. + ERR_NOT_POWER_DOMAIN Code = C.MSK_RES_ERR_NOT_POWER_DOMAIN // The function is only applicable to primal and dual power cone domains. + ERR_DOMAIN_POWER_INVALID_ALPHA Code = C.MSK_RES_ERR_DOMAIN_POWER_INVALID_ALPHA // Alpha contains an invalid floating point value, i.e. a NaN or an infinite value. + ERR_DOMAIN_POWER_NEGATIVE_ALPHA Code = C.MSK_RES_ERR_DOMAIN_POWER_NEGATIVE_ALPHA // Alpha contains a negative value or zero. + ERR_DOMAIN_POWER_NLEFT Code = C.MSK_RES_ERR_DOMAIN_POWER_NLEFT // The value of nleft is too small or too large. + ERR_AFE_INVALID_INDEX Code = C.MSK_RES_ERR_AFE_INVALID_INDEX // An affine expression index is invalid. + ERR_ACC_INVALID_INDEX Code = C.MSK_RES_ERR_ACC_INVALID_INDEX // A affine conic constraint index is invalid. + ERR_ACC_INVALID_ENTRY_INDEX Code = C.MSK_RES_ERR_ACC_INVALID_ENTRY_INDEX // The index of an element in an affine conic constraint is invalid. + ERR_ACC_AFE_DOMAIN_MISMATCH Code = C.MSK_RES_ERR_ACC_AFE_DOMAIN_MISMATCH // There is a mismatch between between the number of affine expressions and total dimension of the domain(s). + ERR_DJC_INVALID_INDEX Code = C.MSK_RES_ERR_DJC_INVALID_INDEX // A disjunctive constraint index is invalid. + ERR_DJC_UNSUPPORTED_DOMAIN_TYPE Code = C.MSK_RES_ERR_DJC_UNSUPPORTED_DOMAIN_TYPE // An unsupported domain type has been used in a disjunctive constraint. + ERR_DJC_AFE_DOMAIN_MISMATCH Code = C.MSK_RES_ERR_DJC_AFE_DOMAIN_MISMATCH // There is a mismatch between the number of affine expressions and total dimension of the domain(s). + ERR_DJC_INVALID_TERM_SIZE Code = C.MSK_RES_ERR_DJC_INVALID_TERM_SIZE // A termize is invalid. + ERR_DJC_DOMAIN_TERMSIZE_MISMATCH Code = C.MSK_RES_ERR_DJC_DOMAIN_TERMSIZE_MISMATCH // There is a mismatch between the number of domains and the term sizes. + ERR_DJC_TOTAL_NUM_TERMS_MISMATCH Code = C.MSK_RES_ERR_DJC_TOTAL_NUM_TERMS_MISMATCH // There total number of terms in all domains does not match. + ERR_UNDEF_SOLUTION Code = C.MSK_RES_ERR_UNDEF_SOLUTION // The required solution is not defined. + ERR_NO_DOTY Code = C.MSK_RES_ERR_NO_DOTY // No doty is available. + TRM_MAX_ITERATIONS Code = C.MSK_RES_TRM_MAX_ITERATIONS // The optimizer terminated at the maximum number of iterations. + TRM_MAX_TIME Code = C.MSK_RES_TRM_MAX_TIME // The optimizer terminated at the maximum amount of time. + TRM_OBJECTIVE_RANGE Code = C.MSK_RES_TRM_OBJECTIVE_RANGE // The optimizer terminated with an objective value outside the objective range. + TRM_STALL Code = C.MSK_RES_TRM_STALL // The optimizer is terminated due to slow progress. + TRM_USER_CALLBACK Code = C.MSK_RES_TRM_USER_CALLBACK // The user-defined progress callback function terminated the optimization. + TRM_MIO_NUM_RELAXS Code = C.MSK_RES_TRM_MIO_NUM_RELAXS // The mixed-integer optimizer terminated as the maximum number of relaxations was reached. + TRM_MIO_NUM_BRANCHES Code = C.MSK_RES_TRM_MIO_NUM_BRANCHES // The mixed-integer optimizer terminated as the maximum number of branches was reached. + TRM_NUM_MAX_NUM_INT_SOLUTIONS Code = C.MSK_RES_TRM_NUM_MAX_NUM_INT_SOLUTIONS // The mixed-integer optimizer terminated as the maximum number of feasible solutions was reached. + TRM_MAX_NUM_SETBACKS Code = C.MSK_RES_TRM_MAX_NUM_SETBACKS // The optimizer terminated as the maximum number of set-backs was reached. + TRM_NUMERICAL_PROBLEM Code = C.MSK_RES_TRM_NUMERICAL_PROBLEM // The optimizer terminated due to a numerical problem. + TRM_LOST_RACE Code = C.MSK_RES_TRM_LOST_RACE // Lost a race. + TRM_INTERNAL Code = C.MSK_RES_TRM_INTERNAL // The optimizer terminated due to some internal reason. + TRM_INTERNAL_STOP Code = C.MSK_RES_TRM_INTERNAL_STOP // The optimizer terminated for internal reasons. ) var _Code_map = map[Code]string{ diff --git a/res/error.go b/res/error.go index ed3b805..ddf282f 100644 --- a/res/error.go +++ b/res/error.go @@ -42,7 +42,7 @@ func IsMskError(err error) bool { func AsMskError(err error) (*Error, bool) { target := &Error{} is := errors.As(err, target) - if is && target != nil && target.Ok() { + if is && target.Ok() { target = nil } diff --git a/rescodetype_enum.go b/rescodetype_enum.go index 15118c1..8750b04 100644 --- a/rescodetype_enum.go +++ b/rescodetype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ResCodeType is MSKrescodetype_enum. @@ -11,11 +14,11 @@ import "strconv" type ResCodeType uint32 const ( - RESPONSE_OK ResCodeType = 0 // The response code is OK. - RESPONSE_WRN ResCodeType = 1 // The response code is a warning. - RESPONSE_TRM ResCodeType = 2 // The response code is an optimizer termination status. - RESPONSE_ERR ResCodeType = 3 // The response code is an error. - RESPONSE_UNK ResCodeType = 4 // The response code does not belong to any class. + RESPONSE_OK ResCodeType = C.MSK_RESPONSE_OK // The response code is OK. + RESPONSE_WRN ResCodeType = C.MSK_RESPONSE_WRN // The response code is a warning. + RESPONSE_TRM ResCodeType = C.MSK_RESPONSE_TRM // The response code is an optimizer termination status. + RESPONSE_ERR ResCodeType = C.MSK_RESPONSE_ERR // The response code is an error. + RESPONSE_UNK ResCodeType = C.MSK_RESPONSE_UNK // The response code does not belong to any class. ) var _ResCodeType_map = map[ResCodeType]string{ diff --git a/scalingmethod_enum.go b/scalingmethod_enum.go index efb4d39..d8ed1f0 100644 --- a/scalingmethod_enum.go +++ b/scalingmethod_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ScalingMethod is MSKscalingmethod_enum. @@ -11,8 +14,8 @@ import "strconv" type ScalingMethod uint32 const ( - SCALING_METHOD_POW2 ScalingMethod = 0 // Scales only with power of 2 leaving the mantissa untouched. - SCALING_METHOD_FREE ScalingMethod = 1 // The optimizer chooses the scaling heuristic. + SCALING_METHOD_POW2 ScalingMethod = C.MSK_SCALING_METHOD_POW2 // Scales only with power of 2 leaving the mantissa untouched. + SCALING_METHOD_FREE ScalingMethod = C.MSK_SCALING_METHOD_FREE // The optimizer chooses the scaling heuristic. ) var _ScalingMethod_map = map[ScalingMethod]string{ diff --git a/scalingtype_enum.go b/scalingtype_enum.go index 6924779..9a03aeb 100644 --- a/scalingtype_enum.go +++ b/scalingtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // ScalingType is MSKscalingtype_enum. @@ -11,8 +14,8 @@ import "strconv" type ScalingType uint32 const ( - SCALING_FREE ScalingType = 0 // The optimizer chooses the scaling heuristic. - SCALING_NONE ScalingType = 1 // No scaling is performed. + SCALING_FREE ScalingType = C.MSK_SCALING_FREE // The optimizer chooses the scaling heuristic. + SCALING_NONE ScalingType = C.MSK_SCALING_NONE // No scaling is performed. ) var _ScalingType_map = map[ScalingType]string{ diff --git a/sensitivitytype_enum.go b/sensitivitytype_enum.go index 2b88092..ccb656f 100644 --- a/sensitivitytype_enum.go +++ b/sensitivitytype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SensitivityType is MSKsensitivitytype_enum. @@ -11,7 +14,7 @@ import "strconv" type SensitivityType uint32 const ( - SENSITIVITY_TYPE_BASIS SensitivityType = 0 // Basis sensitivity analysis is performed. + SENSITIVITY_TYPE_BASIS SensitivityType = C.MSK_SENSITIVITY_TYPE_BASIS // Basis sensitivity analysis is performed. ) var _SensitivityType_map = map[SensitivityType]string{ diff --git a/simdegen_enum.go b/simdegen_enum.go index 17b0e52..9ad5235 100644 --- a/simdegen_enum.go +++ b/simdegen_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Simdegen is MSKsimdegen_enum. @@ -11,11 +14,11 @@ import "strconv" type Simdegen uint32 const ( - SIM_DEGEN_NONE Simdegen = 0 // The simplex optimizer should use no degeneration strategy. - SIM_DEGEN_FREE Simdegen = 1 // The simplex optimizer chooses the degeneration strategy. - SIM_DEGEN_AGGRESSIVE Simdegen = 2 // The simplex optimizer should use an aggressive degeneration strategy. - SIM_DEGEN_MODERATE Simdegen = 3 // The simplex optimizer should use a moderate degeneration strategy. - SIM_DEGEN_MINIMUM Simdegen = 4 // The simplex optimizer should use a minimum degeneration strategy. + SIM_DEGEN_NONE Simdegen = C.MSK_SIM_DEGEN_NONE // The simplex optimizer should use no degeneration strategy. + SIM_DEGEN_FREE Simdegen = C.MSK_SIM_DEGEN_FREE // The simplex optimizer chooses the degeneration strategy. + SIM_DEGEN_AGGRESSIVE Simdegen = C.MSK_SIM_DEGEN_AGGRESSIVE // The simplex optimizer should use an aggressive degeneration strategy. + SIM_DEGEN_MODERATE Simdegen = C.MSK_SIM_DEGEN_MODERATE // The simplex optimizer should use a moderate degeneration strategy. + SIM_DEGEN_MINIMUM Simdegen = C.MSK_SIM_DEGEN_MINIMUM // The simplex optimizer should use a minimum degeneration strategy. ) var _Simdegen_map = map[Simdegen]string{ diff --git a/simdupvec_enum.go b/simdupvec_enum.go index 93a306f..973d3e0 100644 --- a/simdupvec_enum.go +++ b/simdupvec_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Simdupvec is MSKsimdupvec_enum. @@ -11,9 +14,9 @@ import "strconv" type Simdupvec uint32 const ( - SIM_EXPLOIT_DUPVEC_OFF Simdupvec = 0 // Disallow the simplex optimizer to exploit duplicated columns. - SIM_EXPLOIT_DUPVEC_ON Simdupvec = 1 // Allow the simplex optimizer to exploit duplicated columns. - SIM_EXPLOIT_DUPVEC_FREE Simdupvec = 2 // The simplex optimizer can choose freely. + SIM_EXPLOIT_DUPVEC_OFF Simdupvec = C.MSK_SIM_EXPLOIT_DUPVEC_OFF // Disallow the simplex optimizer to exploit duplicated columns. + SIM_EXPLOIT_DUPVEC_ON Simdupvec = C.MSK_SIM_EXPLOIT_DUPVEC_ON // Allow the simplex optimizer to exploit duplicated columns. + SIM_EXPLOIT_DUPVEC_FREE Simdupvec = C.MSK_SIM_EXPLOIT_DUPVEC_FREE // The simplex optimizer can choose freely. ) var _Simdupvec_map = map[Simdupvec]string{ diff --git a/simhotstart_enum.go b/simhotstart_enum.go index 38b134d..4c4d724 100644 --- a/simhotstart_enum.go +++ b/simhotstart_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Simhotstart is MSKsimhotstart_enum. @@ -11,9 +14,9 @@ import "strconv" type Simhotstart uint32 const ( - SIM_HOTSTART_NONE Simhotstart = 0 // The simplex optimizer performs a coldstart. - SIM_HOTSTART_FREE Simhotstart = 1 // The simplex optimize chooses the hot-start type. - SIM_HOTSTART_STATUS_KEYS Simhotstart = 2 // Only the status keys of the constraints and variables are used to choose the type of hot-start. + SIM_HOTSTART_NONE Simhotstart = C.MSK_SIM_HOTSTART_NONE // The simplex optimizer performs a coldstart. + SIM_HOTSTART_FREE Simhotstart = C.MSK_SIM_HOTSTART_FREE // The simplex optimize chooses the hot-start type. + SIM_HOTSTART_STATUS_KEYS Simhotstart = C.MSK_SIM_HOTSTART_STATUS_KEYS // Only the status keys of the constraints and variables are used to choose the type of hot-start. ) var _Simhotstart_map = map[Simhotstart]string{ diff --git a/simreform_enum.go b/simreform_enum.go index 82807e1..9db17b7 100644 --- a/simreform_enum.go +++ b/simreform_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SimReform is MSKsimreform_enum. @@ -11,10 +14,10 @@ import "strconv" type SimReform uint32 const ( - SIM_REFORMULATION_OFF SimReform = 0 // Disallow the simplex optimizer to reformulate the problem. - SIM_REFORMULATION_ON SimReform = 1 // Allow the simplex optimizer to reformulate the problem. - SIM_REFORMULATION_FREE SimReform = 2 // The simplex optimizer can choose freely. - SIM_REFORMULATION_AGGRESSIVE SimReform = 3 // The simplex optimizer should use an aggressive reformulation strategy. + SIM_REFORMULATION_OFF SimReform = C.MSK_SIM_REFORMULATION_OFF // Disallow the simplex optimizer to reformulate the problem. + SIM_REFORMULATION_ON SimReform = C.MSK_SIM_REFORMULATION_ON // Allow the simplex optimizer to reformulate the problem. + SIM_REFORMULATION_FREE SimReform = C.MSK_SIM_REFORMULATION_FREE // The simplex optimizer can choose freely. + SIM_REFORMULATION_AGGRESSIVE SimReform = C.MSK_SIM_REFORMULATION_AGGRESSIVE // The simplex optimizer should use an aggressive reformulation strategy. ) var _SimReform_map = map[SimReform]string{ diff --git a/simseltype_enum.go b/simseltype_enum.go index f81be34..512b2ce 100644 --- a/simseltype_enum.go +++ b/simseltype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SimSelType is MSKsimseltype_enum. @@ -11,12 +14,12 @@ import "strconv" type SimSelType uint32 const ( - SIM_SELECTION_FREE SimSelType = 0 // The optimizer chooses the pricing strategy. - SIM_SELECTION_FULL SimSelType = 1 // The optimizer uses full pricing. - SIM_SELECTION_ASE SimSelType = 2 // The optimizer uses approximate steepest-edge pricing. - SIM_SELECTION_DEVEX SimSelType = 3 // The optimizer uses devex steepest-edge pricing. - SIM_SELECTION_SE SimSelType = 4 // The optimizer uses steepest-edge selection. - SIM_SELECTION_PARTIAL SimSelType = 5 // The optimizer uses a partial selection approach. + SIM_SELECTION_FREE SimSelType = C.MSK_SIM_SELECTION_FREE // The optimizer chooses the pricing strategy. + SIM_SELECTION_FULL SimSelType = C.MSK_SIM_SELECTION_FULL // The optimizer uses full pricing. + SIM_SELECTION_ASE SimSelType = C.MSK_SIM_SELECTION_ASE // The optimizer uses approximate steepest-edge pricing. + SIM_SELECTION_DEVEX SimSelType = C.MSK_SIM_SELECTION_DEVEX // The optimizer uses devex steepest-edge pricing. + SIM_SELECTION_SE SimSelType = C.MSK_SIM_SELECTION_SE // The optimizer uses steepest-edge selection. + SIM_SELECTION_PARTIAL SimSelType = C.MSK_SIM_SELECTION_PARTIAL // The optimizer uses a partial selection approach. ) var _SimSelType_map = map[SimSelType]string{ diff --git a/solformat_enum.go b/solformat_enum.go index 78d9877..9b96bfb 100644 --- a/solformat_enum.go +++ b/solformat_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SolFormat is MSKsolformat_enum. @@ -11,10 +14,10 @@ import "strconv" type SolFormat uint32 const ( - SOL_FORMAT_EXTENSION SolFormat = 0 // The file extension is used to determine the data file format. - SOL_FORMAT_B SolFormat = 1 // Simple binary format - SOL_FORMAT_TASK SolFormat = 2 // Tar based format. - SOL_FORMAT_JSON_TASK SolFormat = 3 // JSON based format. + SOL_FORMAT_EXTENSION SolFormat = C.MSK_SOL_FORMAT_EXTENSION // The file extension is used to determine the data file format. + SOL_FORMAT_B SolFormat = C.MSK_SOL_FORMAT_B // Simple binary format + SOL_FORMAT_TASK SolFormat = C.MSK_SOL_FORMAT_TASK // Tar based format. + SOL_FORMAT_JSON_TASK SolFormat = C.MSK_SOL_FORMAT_JSON_TASK // JSON based format. ) var _SolFormat_map = map[SolFormat]string{ diff --git a/solitem_enum.go b/solitem_enum.go index 19dd350..64ff796 100644 --- a/solitem_enum.go +++ b/solitem_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SolItem is MSKsolitem_enum. @@ -11,14 +14,14 @@ import "strconv" type SolItem uint32 const ( - SOL_ITEM_XC SolItem = 0 // Solution for the constraints. - SOL_ITEM_XX SolItem = 1 // Variable solution. - SOL_ITEM_Y SolItem = 2 // Lagrange multipliers for equations. - SOL_ITEM_SLC SolItem = 3 // Lagrange multipliers for lower bounds on the constraints. - SOL_ITEM_SUC SolItem = 4 // Lagrange multipliers for upper bounds on the constraints. - SOL_ITEM_SLX SolItem = 5 // Lagrange multipliers for lower bounds on the variables. - SOL_ITEM_SUX SolItem = 6 // Lagrange multipliers for upper bounds on the variables. - SOL_ITEM_SNX SolItem = 7 // Lagrange multipliers corresponding to the conic constraints on the variables. + SOL_ITEM_XC SolItem = C.MSK_SOL_ITEM_XC // Solution for the constraints. + SOL_ITEM_XX SolItem = C.MSK_SOL_ITEM_XX // Variable solution. + SOL_ITEM_Y SolItem = C.MSK_SOL_ITEM_Y // Lagrange multipliers for equations. + SOL_ITEM_SLC SolItem = C.MSK_SOL_ITEM_SLC // Lagrange multipliers for lower bounds on the constraints. + SOL_ITEM_SUC SolItem = C.MSK_SOL_ITEM_SUC // Lagrange multipliers for upper bounds on the constraints. + SOL_ITEM_SLX SolItem = C.MSK_SOL_ITEM_SLX // Lagrange multipliers for lower bounds on the variables. + SOL_ITEM_SUX SolItem = C.MSK_SOL_ITEM_SUX // Lagrange multipliers for upper bounds on the variables. + SOL_ITEM_SNX SolItem = C.MSK_SOL_ITEM_SNX // Lagrange multipliers corresponding to the conic constraints on the variables. ) var _SolItem_map = map[SolItem]string{ diff --git a/solsta_enum.go b/solsta_enum.go index 7c12758..3be89c7 100644 --- a/solsta_enum.go +++ b/solsta_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SolSta is MSKsolsta_enum. @@ -11,16 +14,16 @@ import "strconv" type SolSta uint32 const ( - SOL_STA_UNKNOWN SolSta = 0 // Status of the solution is unknown. - SOL_STA_OPTIMAL SolSta = 1 // The solution is optimal. - SOL_STA_PRIM_FEAS SolSta = 2 // The solution is primal feasible. - SOL_STA_DUAL_FEAS SolSta = 3 // The solution is dual feasible. - SOL_STA_PRIM_AND_DUAL_FEAS SolSta = 4 // The solution is both primal and dual feasible. - SOL_STA_PRIM_INFEAS_CER SolSta = 5 // The solution is a certificate of primal infeasibility. - SOL_STA_DUAL_INFEAS_CER SolSta = 6 // The solution is a certificate of dual infeasibility. - SOL_STA_PRIM_ILLPOSED_CER SolSta = 7 // The solution is a certificate that the primal problem is illposed. - SOL_STA_DUAL_ILLPOSED_CER SolSta = 8 // The solution is a certificate that the dual problem is illposed. - SOL_STA_INTEGER_OPTIMAL SolSta = 9 // The primal solution is integer optimal. + SOL_STA_UNKNOWN SolSta = C.MSK_SOL_STA_UNKNOWN // Status of the solution is unknown. + SOL_STA_OPTIMAL SolSta = C.MSK_SOL_STA_OPTIMAL // The solution is optimal. + SOL_STA_PRIM_FEAS SolSta = C.MSK_SOL_STA_PRIM_FEAS // The solution is primal feasible. + SOL_STA_DUAL_FEAS SolSta = C.MSK_SOL_STA_DUAL_FEAS // The solution is dual feasible. + SOL_STA_PRIM_AND_DUAL_FEAS SolSta = C.MSK_SOL_STA_PRIM_AND_DUAL_FEAS // The solution is both primal and dual feasible. + SOL_STA_PRIM_INFEAS_CER SolSta = C.MSK_SOL_STA_PRIM_INFEAS_CER // The solution is a certificate of primal infeasibility. + SOL_STA_DUAL_INFEAS_CER SolSta = C.MSK_SOL_STA_DUAL_INFEAS_CER // The solution is a certificate of dual infeasibility. + SOL_STA_PRIM_ILLPOSED_CER SolSta = C.MSK_SOL_STA_PRIM_ILLPOSED_CER // The solution is a certificate that the primal problem is illposed. + SOL_STA_DUAL_ILLPOSED_CER SolSta = C.MSK_SOL_STA_DUAL_ILLPOSED_CER // The solution is a certificate that the dual problem is illposed. + SOL_STA_INTEGER_OPTIMAL SolSta = C.MSK_SOL_STA_INTEGER_OPTIMAL // The primal solution is integer optimal. ) var _SolSta_map = map[SolSta]string{ diff --git a/soltype_enum.go b/soltype_enum.go index 91e9269..f33c3e9 100644 --- a/soltype_enum.go +++ b/soltype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SolType is MSKsoltype_enum. @@ -11,9 +14,9 @@ import "strconv" type SolType uint32 const ( - SOL_ITR SolType = 0 // The interior solution. - SOL_BAS SolType = 1 // The basic solution. - SOL_ITG SolType = 2 // The integer solution. + SOL_ITR SolType = C.MSK_SOL_ITR // The interior solution. + SOL_BAS SolType = C.MSK_SOL_BAS // The basic solution. + SOL_ITG SolType = C.MSK_SOL_ITG // The integer solution. ) var _SolType_map = map[SolType]string{ diff --git a/solveform_enum.go b/solveform_enum.go index 9128864..ac3b02c 100644 --- a/solveform_enum.go +++ b/solveform_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Solveform is MSKsolveform_enum. @@ -11,9 +14,9 @@ import "strconv" type Solveform uint32 const ( - SOLVE_FREE Solveform = 0 // The optimizer is free to solve either the primal or the dual problem. - SOLVE_PRIMAL Solveform = 1 // The optimizer should solve the primal problem. - SOLVE_DUAL Solveform = 2 // The optimizer should solve the dual problem. + SOLVE_FREE Solveform = C.MSK_SOLVE_FREE // The optimizer is free to solve either the primal or the dual problem. + SOLVE_PRIMAL Solveform = C.MSK_SOLVE_PRIMAL // The optimizer should solve the primal problem. + SOLVE_DUAL Solveform = C.MSK_SOLVE_DUAL // The optimizer should solve the dual problem. ) var _Solveform_map = map[Solveform]string{ diff --git a/sparam_enum.go b/sparam_enum.go index ef1f910..16115ee 100644 --- a/sparam_enum.go +++ b/sparam_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SParam is MSKsparam_enum. @@ -11,31 +14,31 @@ import "strconv" type SParam uint32 const ( - SPAR_BAS_SOL_FILE_NAME SParam = 0 // Name of the bas solution file. - SPAR_DATA_FILE_NAME SParam = 1 // Data are read and written to this file. - SPAR_DEBUG_FILE_NAME SParam = 2 // MOSEK debug file. - SPAR_INT_SOL_FILE_NAME SParam = 3 // Name of the int solution file. - SPAR_ITR_SOL_FILE_NAME SParam = 4 // Name of the itr solution file. - SPAR_MIO_DEBUG_STRING SParam = 5 // For internal debugging purposes. - SPAR_PARAM_COMMENT_SIGN SParam = 6 // Solution file comment character. - SPAR_PARAM_READ_FILE_NAME SParam = 7 // Modifications to the parameter database is read from this file. - SPAR_PARAM_WRITE_FILE_NAME SParam = 8 // The parameter database is written to this file. - SPAR_READ_MPS_BOU_NAME SParam = 9 // Name of the BOUNDS vector used. An empty name means that the first BOUNDS vector is used. - SPAR_READ_MPS_OBJ_NAME SParam = 10 // Objective name in the MPS file. - SPAR_READ_MPS_RAN_NAME SParam = 11 // Name of the RANGE vector used. An empty name means that the first RANGE vector is used. - SPAR_READ_MPS_RHS_NAME SParam = 12 // Name of the RHS used. An empty name means that the first RHS vector is used. - SPAR_REMOTE_OPTSERVER_HOST SParam = 13 // URL of the remote optimization server. - SPAR_REMOTE_TLS_CERT SParam = 14 // Known server certificates in PEM format - SPAR_REMOTE_TLS_CERT_PATH SParam = 15 // Path to known server certificates in PEM format - SPAR_SENSITIVITY_FILE_NAME SParam = 16 // Sensitivity report file name. - SPAR_SENSITIVITY_RES_FILE_NAME SParam = 17 // Name of the sensitivity report output file. - SPAR_SOL_FILTER_XC_LOW SParam = 18 // Solution file filter. - SPAR_SOL_FILTER_XC_UPR SParam = 19 // Solution file filter. - SPAR_SOL_FILTER_XX_LOW SParam = 20 // Solution file filter. - SPAR_SOL_FILTER_XX_UPR SParam = 21 // Solution file filter. - SPAR_STAT_KEY SParam = 22 // Key used when writing the summary file. - SPAR_STAT_NAME SParam = 23 // Name used when writing the statistics file. - SPAR_WRITE_LP_GEN_VAR_NAME SParam = 24 // Added variable names in the LP files. + SPAR_BAS_SOL_FILE_NAME SParam = C.MSK_SPAR_BAS_SOL_FILE_NAME // Name of the bas solution file. + SPAR_DATA_FILE_NAME SParam = C.MSK_SPAR_DATA_FILE_NAME // Data are read and written to this file. + SPAR_DEBUG_FILE_NAME SParam = C.MSK_SPAR_DEBUG_FILE_NAME // MOSEK debug file. + SPAR_INT_SOL_FILE_NAME SParam = C.MSK_SPAR_INT_SOL_FILE_NAME // Name of the int solution file. + SPAR_ITR_SOL_FILE_NAME SParam = C.MSK_SPAR_ITR_SOL_FILE_NAME // Name of the itr solution file. + SPAR_MIO_DEBUG_STRING SParam = C.MSK_SPAR_MIO_DEBUG_STRING // For internal debugging purposes. + SPAR_PARAM_COMMENT_SIGN SParam = C.MSK_SPAR_PARAM_COMMENT_SIGN // Solution file comment character. + SPAR_PARAM_READ_FILE_NAME SParam = C.MSK_SPAR_PARAM_READ_FILE_NAME // Modifications to the parameter database is read from this file. + SPAR_PARAM_WRITE_FILE_NAME SParam = C.MSK_SPAR_PARAM_WRITE_FILE_NAME // The parameter database is written to this file. + SPAR_READ_MPS_BOU_NAME SParam = C.MSK_SPAR_READ_MPS_BOU_NAME // Name of the BOUNDS vector used. An empty name means that the first BOUNDS vector is used. + SPAR_READ_MPS_OBJ_NAME SParam = C.MSK_SPAR_READ_MPS_OBJ_NAME // Objective name in the MPS file. + SPAR_READ_MPS_RAN_NAME SParam = C.MSK_SPAR_READ_MPS_RAN_NAME // Name of the RANGE vector used. An empty name means that the first RANGE vector is used. + SPAR_READ_MPS_RHS_NAME SParam = C.MSK_SPAR_READ_MPS_RHS_NAME // Name of the RHS used. An empty name means that the first RHS vector is used. + SPAR_REMOTE_OPTSERVER_HOST SParam = C.MSK_SPAR_REMOTE_OPTSERVER_HOST // URL of the remote optimization server. + SPAR_REMOTE_TLS_CERT SParam = C.MSK_SPAR_REMOTE_TLS_CERT // Known server certificates in PEM format + SPAR_REMOTE_TLS_CERT_PATH SParam = C.MSK_SPAR_REMOTE_TLS_CERT_PATH // Path to known server certificates in PEM format + SPAR_SENSITIVITY_FILE_NAME SParam = C.MSK_SPAR_SENSITIVITY_FILE_NAME // Sensitivity report file name. + SPAR_SENSITIVITY_RES_FILE_NAME SParam = C.MSK_SPAR_SENSITIVITY_RES_FILE_NAME // Name of the sensitivity report output file. + SPAR_SOL_FILTER_XC_LOW SParam = C.MSK_SPAR_SOL_FILTER_XC_LOW // Solution file filter. + SPAR_SOL_FILTER_XC_UPR SParam = C.MSK_SPAR_SOL_FILTER_XC_UPR // Solution file filter. + SPAR_SOL_FILTER_XX_LOW SParam = C.MSK_SPAR_SOL_FILTER_XX_LOW // Solution file filter. + SPAR_SOL_FILTER_XX_UPR SParam = C.MSK_SPAR_SOL_FILTER_XX_UPR // Solution file filter. + SPAR_STAT_KEY SParam = C.MSK_SPAR_STAT_KEY // Key used when writing the summary file. + SPAR_STAT_NAME SParam = C.MSK_SPAR_STAT_NAME // Name used when writing the statistics file. + SPAR_WRITE_LP_GEN_VAR_NAME SParam = C.MSK_SPAR_WRITE_LP_GEN_VAR_NAME // Added variable names in the LP files. ) var _SParam_map = map[SParam]string{ diff --git a/stakey_enum.go b/stakey_enum.go index 9281d0c..c735f29 100644 --- a/stakey_enum.go +++ b/stakey_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // StaKey is MSKstakey_enum. @@ -11,13 +14,13 @@ import "strconv" type StaKey uint32 const ( - SK_UNK StaKey = 0 // The status for the constraint or variable is unknown. - SK_BAS StaKey = 1 // The constraint or variable is in the basis. - SK_SUPBAS StaKey = 2 // The constraint or variable is super basic. - SK_LOW StaKey = 3 // The constraint or variable is at its lower bound. - SK_UPR StaKey = 4 // The constraint or variable is at its upper bound. - SK_FIX StaKey = 5 // The constraint or variable is fixed. - SK_INF StaKey = 6 // The constraint or variable is infeasible in the bounds. + SK_UNK StaKey = C.MSK_SK_UNK // The status for the constraint or variable is unknown. + SK_BAS StaKey = C.MSK_SK_BAS // The constraint or variable is in the basis. + SK_SUPBAS StaKey = C.MSK_SK_SUPBAS // The constraint or variable is super basic. + SK_LOW StaKey = C.MSK_SK_LOW // The constraint or variable is at its lower bound. + SK_UPR StaKey = C.MSK_SK_UPR // The constraint or variable is at its upper bound. + SK_FIX StaKey = C.MSK_SK_FIX // The constraint or variable is fixed. + SK_INF StaKey = C.MSK_SK_INF // The constraint or variable is infeasible in the bounds. ) var _StaKey_map = map[StaKey]string{ diff --git a/startpointtype_enum.go b/startpointtype_enum.go index cbf75b2..a3d882a 100644 --- a/startpointtype_enum.go +++ b/startpointtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // StarPointType is MSKstartpointtype_enum. @@ -11,9 +14,9 @@ import "strconv" type StarPointType uint32 const ( - STARTING_POINT_FREE StarPointType = 0 // The starting point is chosen automatically. - STARTING_POINT_GUESS StarPointType = 1 // The optimizer guesses a starting point. - STARTING_POINT_CONSTANT StarPointType = 2 // The optimizer constructs a starting point by assigning a constant value to all primal and dual variables. This starting point is normally robust. + STARTING_POINT_FREE StarPointType = C.MSK_STARTING_POINT_FREE // The starting point is chosen automatically. + STARTING_POINT_GUESS StarPointType = C.MSK_STARTING_POINT_GUESS // The optimizer guesses a starting point. + STARTING_POINT_CONSTANT StarPointType = C.MSK_STARTING_POINT_CONSTANT // The optimizer constructs a starting point by assigning a constant value to all primal and dual variables. This starting point is normally robust. ) var _StarPointType_map = map[StarPointType]string{ diff --git a/streamtype_enum.go b/streamtype_enum.go index 113894c..023c94c 100644 --- a/streamtype_enum.go +++ b/streamtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // StreamType is MSKstreamtype_enum. @@ -11,10 +14,10 @@ import "strconv" type StreamType uint32 const ( - STREAM_LOG StreamType = 0 // Log stream. Contains the aggregated contents of all other streams. This means that a message written to any other stream will also be written to this stream. - STREAM_MSG StreamType = 1 // Message stream. Log information relating to performance and progress of the optimization is written to this stream. - STREAM_ERR StreamType = 2 // Error stream. Error messages are written to this stream. - STREAM_WRN StreamType = 3 // Warning stream. Warning messages are written to this stream. + STREAM_LOG StreamType = C.MSK_STREAM_LOG // Log stream. Contains the aggregated contents of all other streams. This means that a message written to any other stream will also be written to this stream. + STREAM_MSG StreamType = C.MSK_STREAM_MSG // Message stream. Log information relating to performance and progress of the optimization is written to this stream. + STREAM_ERR StreamType = C.MSK_STREAM_ERR // Error stream. Error messages are written to this stream. + STREAM_WRN StreamType = C.MSK_STREAM_WRN // Warning stream. Warning messages are written to this stream. ) var _StreamType_map = map[StreamType]string{ diff --git a/symmattype_enum.go b/symmattype_enum.go index e7ff9cf..d6b2332 100644 --- a/symmattype_enum.go +++ b/symmattype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // SymmatType is MSKsymmattype_enum. @@ -11,7 +14,7 @@ import "strconv" type SymmatType uint32 const ( - SYMMAT_TYPE_SPARSE SymmatType = 0 // Sparse symmetric matrix. + SYMMAT_TYPE_SPARSE SymmatType = C.MSK_SYMMAT_TYPE_SPARSE // Sparse symmetric matrix. ) var _SymmatType_map = map[SymmatType]string{ diff --git a/transpose_enum.go b/transpose_enum.go index a790712..87ced7f 100644 --- a/transpose_enum.go +++ b/transpose_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // Transpose is MSKtranspose_enum. @@ -11,8 +14,8 @@ import "strconv" type Transpose uint32 const ( - TRANSPOSE_NO Transpose = 0 // No transpose is applied. - TRANSPOSE_YES Transpose = 1 // A transpose is applied. + TRANSPOSE_NO Transpose = C.MSK_TRANSPOSE_NO // No transpose is applied. + TRANSPOSE_YES Transpose = C.MSK_TRANSPOSE_YES // A transpose is applied. ) var _Transpose_map = map[Transpose]string{ diff --git a/uplo_enum.go b/uplo_enum.go index 94f3e77..8a3e60d 100644 --- a/uplo_enum.go +++ b/uplo_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // UpLo is MSKuplo_enum. @@ -11,8 +14,8 @@ import "strconv" type UpLo uint32 const ( - UPLO_LO UpLo = 0 // Lower part. - UPLO_UP UpLo = 1 // Upper part. + UPLO_LO UpLo = C.MSK_UPLO_LO // Lower part. + UPLO_UP UpLo = C.MSK_UPLO_UP // Upper part. ) var _UpLo_map = map[UpLo]string{ diff --git a/variabletype_enum.go b/variabletype_enum.go index 20c80c5..2e44b29 100644 --- a/variabletype_enum.go +++ b/variabletype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // VariableType is MSKvariabletype_enum. @@ -11,8 +14,8 @@ import "strconv" type VariableType uint32 const ( - VAR_TYPE_CONT VariableType = 0 // Is a continuous variable. - VAR_TYPE_INT VariableType = 1 // Is an integer variable. + VAR_TYPE_CONT VariableType = C.MSK_VAR_TYPE_CONT // Is a continuous variable. + VAR_TYPE_INT VariableType = C.MSK_VAR_TYPE_INT // Is an integer variable. ) var _VariableType_map = map[VariableType]string{ diff --git a/xmlwriteroutputtype_enum.go b/xmlwriteroutputtype_enum.go index 89da557..7794867 100644 --- a/xmlwriteroutputtype_enum.go +++ b/xmlwriteroutputtype_enum.go @@ -3,6 +3,9 @@ package gmsk +// #include +import "C" + import "strconv" // XmlWriterOutputType is MSKxmlwriteroutputtype_enum. @@ -11,8 +14,8 @@ import "strconv" type XmlWriterOutputType uint32 const ( - WRITE_XML_MODE_ROW XmlWriterOutputType = 0 // Write in row order. - WRITE_XML_MODE_COL XmlWriterOutputType = 1 // Write in column order. + WRITE_XML_MODE_ROW XmlWriterOutputType = C.MSK_WRITE_XML_MODE_ROW // Write in row order. + WRITE_XML_MODE_COL XmlWriterOutputType = C.MSK_WRITE_XML_MODE_COL // Write in column order. ) var _XmlWriterOutputType_map = map[XmlWriterOutputType]string{