|
22 | 22 | B(KN_new); \ |
23 | 23 | B(KN_free); \ |
24 | 24 | B(KN_update); \ |
| 25 | + B(KN_solve); \ |
25 | 26 | B(KN_get_param_id); \ |
26 | 27 | B(KN_get_param_type); \ |
27 | 28 | B(KN_set_int_param); \ |
28 | 29 | B(KN_set_char_param); \ |
29 | 30 | B(KN_set_double_param); \ |
30 | 31 | B(KN_get_int_param); \ |
31 | 32 | B(KN_get_double_param); \ |
32 | | - B(KN_add_vars); \ |
33 | 33 | B(KN_add_var); \ |
34 | | - B(KN_add_cons); \ |
35 | 34 | B(KN_add_con); \ |
36 | 35 | B(KN_set_var_lobnd); \ |
37 | 36 | B(KN_set_var_upbnd); \ |
|
43 | 42 | B(KN_get_var_name); \ |
44 | 43 | B(KN_set_con_lobnd); \ |
45 | 44 | B(KN_set_con_upbnd); \ |
46 | | - B(KN_set_con_eqbnd); \ |
47 | 45 | B(KN_get_con_lobnd); \ |
48 | 46 | B(KN_get_con_upbnd); \ |
49 | 47 | B(KN_set_con_name); \ |
|
54 | 52 | B(KN_add_obj_constant); \ |
55 | 53 | B(KN_del_obj_constant); \ |
56 | 54 | B(KN_add_obj_linear_struct); \ |
57 | | - B(KN_del_obj_linear_struct); \ |
58 | 55 | B(KN_del_obj_linear_struct_all); \ |
59 | 56 | B(KN_add_obj_quadratic_struct); \ |
60 | | - B(KN_del_obj_quadratic_struct); \ |
61 | 57 | B(KN_del_obj_quadratic_struct_all); \ |
62 | 58 | B(KN_chg_obj_linear_term); \ |
63 | 59 | B(KN_add_con_constant); \ |
|
71 | 67 | B(KN_set_cb_grad); \ |
72 | 68 | B(KN_set_cb_hess); \ |
73 | 69 | B(KN_del_obj_eval_callback_all); \ |
74 | | - B(KN_solve); \ |
75 | 70 | B(KN_get_var_primal_value); \ |
76 | 71 | B(KN_get_var_dual_value); \ |
77 | 72 | B(KN_get_con_value); \ |
@@ -324,6 +319,21 @@ inline int knitro_var_type(VariableDomain domain) |
324 | 319 | } |
325 | 320 | } |
326 | 321 |
|
| 322 | +inline VariableDomain knitro_variable_domain(int var_type) |
| 323 | +{ |
| 324 | + switch (var_type) |
| 325 | + { |
| 326 | + case KN_VARTYPE_CONTINUOUS: |
| 327 | + return VariableDomain::Continuous; |
| 328 | + case KN_VARTYPE_INTEGER: |
| 329 | + return VariableDomain::Integer; |
| 330 | + case KN_VARTYPE_BINARY: |
| 331 | + return VariableDomain::Binary; |
| 332 | + default: |
| 333 | + throw std::runtime_error("Unknown variable type"); |
| 334 | + } |
| 335 | +} |
| 336 | + |
327 | 337 | inline int knitro_obj_goal(ObjectiveSense sense) |
328 | 338 | { |
329 | 339 | switch (sense) |
@@ -423,6 +433,7 @@ class KNITROModel : public OnesideLinearConstraintMixin<KNITROModel>, |
423 | 433 | std::string get_variable_name(const VariableIndex &variable) const; |
424 | 434 | void set_variable_name(const VariableIndex &variable, const std::string &name); |
425 | 435 | void set_variable_domain(const VariableIndex &variable, VariableDomain domain); |
| 436 | + VariableDomain get_variable_domain(const VariableIndex &variable) const; |
426 | 437 | double get_variable_rc(const VariableIndex &variable) const; |
427 | 438 | std::string pprint_variable(const VariableIndex &variable) const; |
428 | 439 |
|
|
0 commit comments