Skip to content

Commit 64de6d0

Browse files
committed
Added highsVarTypeToString methods to HighsLpUtils for HighsVarType and HighsInt; allowing implied integers in models passed via arrays;formatted
1 parent e24ee5f commit 64de6d0

File tree

2 files changed

+35
-34
lines changed

2 files changed

+35
-34
lines changed

highs/lp_data/Highs.cpp

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -464,16 +464,17 @@ HighsStatus Highs::passModel(
464464
for (HighsInt iCol = 0; iCol < num_col; iCol++) {
465465
HighsInt integrality_status = integrality[iCol];
466466
const bool legal_integrality_status =
467-
integrality_status == HighsInt(HighsVarType::kContinuous) ||
468-
integrality_status == HighsInt(HighsVarType::kInteger) ||
469-
integrality_status == HighsInt(HighsVarType::kSemiContinuous) ||
470-
integrality_status == HighsInt(HighsVarType::kSemiInteger) ;
467+
integrality_status == HighsInt(HighsVarType::kContinuous) ||
468+
integrality_status == HighsInt(HighsVarType::kInteger) ||
469+
integrality_status == HighsInt(HighsVarType::kSemiContinuous) ||
470+
integrality_status == HighsInt(HighsVarType::kSemiInteger) ||
471+
integrality_status == HighsInt(HighsVarType::kImplicitInteger);
471472
if (!legal_integrality_status) {
472-
highsLogUser(
473-
options_.log_options, HighsLogType::kError,
474-
"Model has illegal integer value of %d (type %s) for integrality[%d]\n",
475-
int(integrality_status), highsIntVarTypeToString(integrality_status).c_str(),
476-
iCol);
473+
highsLogUser(options_.log_options, HighsLogType::kError,
474+
"Model has illegal integer value of %d (type %s) for "
475+
"integrality[%d]\n",
476+
int(integrality_status),
477+
highsVarTypeToString(integrality_status).c_str(), iCol);
477478
return HighsStatus::kError;
478479
}
479480
lp.integrality_[iCol] = (HighsVarType)integrality_status;

highs/lp_data/HighsLpUtils.cpp

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3660,39 +3660,39 @@ void getSubVectorsTranspose(const HighsIndexCollection& index_collection,
36603660

36613661
std::string highsVarTypeToString(const HighsVarType type) {
36623662
switch (type) {
3663-
case HighsVarType::kContinuous: {
3664-
return "continuous";
3665-
break;
3666-
}
3667-
case HighsVarType::kInteger: {
3668-
return "integer";
3669-
break;
3670-
}
3671-
case HighsVarType::kSemiContinuous: {
3672-
return "semi continuous";
3673-
break;
3674-
}
3675-
case HighsVarType::kSemiInteger: {
3676-
return "semi integer";
3677-
break;
3678-
}
3679-
case HighsVarType::kImplicitInteger: {
3680-
return "implicit integer";
3681-
break;
3663+
case HighsVarType::kContinuous: {
3664+
return "continuous";
3665+
break;
3666+
}
3667+
case HighsVarType::kInteger: {
3668+
return "integer";
3669+
break;
3670+
}
3671+
case HighsVarType::kSemiContinuous: {
3672+
return "semi continuous";
3673+
break;
3674+
}
3675+
case HighsVarType::kSemiInteger: {
3676+
return "semi integer";
3677+
break;
3678+
}
3679+
case HighsVarType::kImplicitInteger: {
3680+
return "implicit integer";
3681+
break;
3682+
}
3683+
default:
3684+
return "unknown";
36823685
}
3683-
default:
3684-
return "unknown";
3685-
}
36863686
}
36873687

36883688
std::string highsVarTypeToString(const HighsInt type) {
36893689
if (type < HighsInt(HighsVarType::kContinuous) ||
3690-
type > HighsInt(HighsVarType::kImplicitInteger)) return "Unknown";
3690+
type > HighsInt(HighsVarType::kImplicitInteger))
3691+
return "Unknown";
36913692
HighsVarType type_ = HighsVarType(uint8_t(type));
3692-
return highsVarTypeToString(type_);
3693+
return highsVarTypeToString(type_);
36933694
}
36943695

3695-
36963696
void initialiseUserScaleData(const HighsOptions& options,
36973697
HighsUserScaleData& user_scale_data) {
36983698
user_scale_data.initialise(options.user_objective_scale,

0 commit comments

Comments
 (0)