diff --git a/CMakeLists.txt b/CMakeLists.txt index cb97822..0f22cdf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ project(cupdlpx LANGUAGES C CXX CUDA) set(CUPDLPX_VERSION_MAJOR 0) set(CUPDLPX_VERSION_MINOR 2) -set(CUPDLPX_VERSION_PATCH 2) +set(CUPDLPX_VERSION_PATCH 3) set(CUPDLPX_VERSION "${CUPDLPX_VERSION_MAJOR}.${CUPDLPX_VERSION_MINOR}.${CUPDLPX_VERSION_PATCH}") add_compile_definitions(CUPDLPX_VERSION="${CUPDLPX_VERSION}") @@ -77,7 +77,7 @@ endif() include(FetchContent) -set(PSLP_VERSION_TAG "v0.0.3") +set(PSLP_VERSION_TAG "v0.0.4") FetchContent_Declare( pslp diff --git a/src/presolve.c b/src/presolve.c index 9396c19..9e81d77 100644 --- a/src/presolve.c +++ b/src/presolve.c @@ -169,8 +169,7 @@ void pslp_postsolve(cupdlpx_presolve_info_t *info, postsolve(info->presolver, result->primal_solution, result->dual_solution, - result->reduced_cost, - result->primal_objective_value); + result->reduced_cost); result->num_reduced_variables = info->presolver->reduced_prob->n; result->num_reduced_constraints = info->presolver->reduced_prob->m; @@ -184,7 +183,6 @@ void pslp_postsolve(cupdlpx_presolve_info_t *info, memcpy(result->primal_solution, info->presolver->sol->x, original_prob->num_variables * sizeof(double)); memcpy(result->dual_solution, info->presolver->sol->y, original_prob->num_constraints * sizeof(double)); memcpy(result->reduced_cost, info->presolver->sol->z, original_prob->num_variables * sizeof(double)); - // result->primal_objective_value = info->presolver->sol->obj; // This is a bug in PSLP. We don't need to updated primal_objective_value since offset has been updated during presolve. Therefore, the original problem and reduced problem have the same objective value. result->presolve_time = info->presolve_time; // if (info->presolver->stats != NULL) { // result->presolve_stats = *(info->presolver->stats);