int user_is_feasible(void *user, double lpetol, int varnum, int *indices, double *values, int *feasible, double *objval)
User tests the feasibility of the solution to the current LP relaxation. There is no post-processing. Possible defaults are testing integrality (TEST_INTEGRALITY) and testing whether the solution is binary (TEST_ZERO_ONE).
void *user | INOUT | Pointer to the user-defined LP data structure. |
double lpetol | IN | The tolerance of the LP solver. |
int varnum | IN | The length of the indices and values arrays. |
int *indices | IN | User indices of variables at nonzero level in the current solution. |
double *values | IN | Values of the variables listed in indices. |
int *feasible | OUT | Feasibility status of the solution (NOT_FEASIBLE, or FEASIBLE). |
double *objval | OUT | The user can return the ``true'' objective function value of the solution in the case it is feasible, i.e., eliminating the round-off error. |
USER_ERROR | Error. Solution is considered to be not feasible. |
USER_SUCCESS | User checked IP feasibility. |
USER_DEFAULT | Regulated by the parameter is_feasible_default, but set to TEST_INTEGRALITY unless overridden by the user. |
TEST_INTEGRALITY | Test integrality of the given solution. |
TEST_ZERO_ONE | Tests whether the solution is binary. |