Skip to content

Commit 19b13ec

Browse files
authored
Merge pull request #2672 from ERGO-Code/hipo-fix
Hipo fix
2 parents 346e090 + f4d1ddc commit 19b13ec

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

highs/ipm/hipo/factorhighs/FormatHandler.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,8 @@ class FormatHandler {
8888
virtual void extremeEntries() {}
8989
};
9090

91+
const Int extra_space_frontal = 10;
92+
9193
} // namespace hipo
9294

9395
#endif

highs/ipm/hipo/factorhighs/HybridHybridFormatHandler.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ HybridHybridFormatHandler::HybridHybridFormatHandler(
2525
void HybridHybridFormatHandler::initFrontal() {
2626
const Int n_blocks = (sn_size_ - 1) / nb_ + 1;
2727
diag_start_.resize(n_blocks);
28-
Int64 frontal_size = getDiagStart(ldf_, sn_size_, nb_, n_blocks, diag_start_);
28+
Int64 frontal_size =
29+
getDiagStart(ldf_, sn_size_, nb_, n_blocks, diag_start_) +
30+
extra_space_frontal;
2931
frontal_.resize(frontal_size);
3032
std::memset(frontal_.data(), 0, frontal_size * sizeof(double));
3133

highs/ipm/hipo/factorhighs/HybridSolveHandler.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ void HybridSolveHandler::backwardSolve(std::vector<double>& x) const {
146146

147147
// index to access snColumns[sn]
148148
// initialised with the total number of entries of snColumns[sn]
149-
Int64 SnCol_ind = sn_columns_[sn].size();
149+
Int64 SnCol_ind = sn_columns_[sn].size() - extra_space_frontal;
150150

151151
// go through blocks of columns for this supernode in reverse order
152152
for (Int j = n_blocks - 1; j >= 0; --j) {

0 commit comments

Comments
 (0)