|
8 | 8 | #ifndef SIMPLEX_HAPP_H_ |
9 | 9 | #define SIMPLEX_HAPP_H_ |
10 | 10 |
|
| 11 | +#include <cmath> |
11 | 12 | // todo: clear includes. |
12 | 13 | // #include <cstring> |
13 | 14 | // #include <fstream> |
@@ -44,33 +45,33 @@ inline HighsStatus returnFromSolveLpSimplex(HighsLpSolverObject& solver_object, |
44 | 45 | // will generally be one after simplex, so have to deduce whether |
45 | 46 | // there was one before |
46 | 47 | HighsInt sub_solver_ix = -1; |
47 | | - if (solver_object.sub_solver_call_time_.run_time[kSubSolverDuSimplexBasis] < |
48 | | - 0) |
| 48 | + if (std::signbit(solver_object.sub_solver_call_time_ |
| 49 | + .run_time[kSubSolverDuSimplexBasis])) |
49 | 50 | sub_solver_ix = kSubSolverDuSimplexBasis; |
50 | | - if (solver_object.sub_solver_call_time_.run_time[kSubSolverDuSimplexNoBasis] < |
51 | | - 0) |
| 51 | + if (std::signbit(solver_object.sub_solver_call_time_ |
| 52 | + .run_time[kSubSolverDuSimplexNoBasis])) |
52 | 53 | sub_solver_ix = kSubSolverDuSimplexNoBasis; |
53 | | - if (solver_object.sub_solver_call_time_.run_time[kSubSolverPrSimplexBasis] < |
54 | | - 0) |
| 54 | + if (std::signbit(solver_object.sub_solver_call_time_ |
| 55 | + .run_time[kSubSolverPrSimplexBasis])) |
55 | 56 | sub_solver_ix = kSubSolverPrSimplexBasis; |
56 | | - if (solver_object.sub_solver_call_time_.run_time[kSubSolverPrSimplexNoBasis] < |
57 | | - 0) |
| 57 | + if (std::signbit(solver_object.sub_solver_call_time_ |
| 58 | + .run_time[kSubSolverPrSimplexNoBasis])) |
58 | 59 | sub_solver_ix = kSubSolverPrSimplexNoBasis; |
59 | 60 | // Ensure that one clock has been identified |
60 | 61 | assert(sub_solver_ix >= 0); |
61 | 62 | // Check that only one clock was started |
62 | 63 | if (sub_solver_ix != kSubSolverDuSimplexBasis) |
63 | | - assert(solver_object.sub_solver_call_time_ |
64 | | - .run_time[kSubSolverDuSimplexBasis] >= 0); |
| 64 | + assert(!std::signbit(solver_object.sub_solver_call_time_ |
| 65 | + .run_time[kSubSolverDuSimplexBasis])); |
65 | 66 | if (sub_solver_ix != kSubSolverDuSimplexNoBasis) |
66 | | - assert(solver_object.sub_solver_call_time_ |
67 | | - .run_time[kSubSolverDuSimplexNoBasis] >= 0); |
| 67 | + assert(!std::signbit(solver_object.sub_solver_call_time_ |
| 68 | + .run_time[kSubSolverDuSimplexNoBasis])); |
68 | 69 | if (sub_solver_ix != kSubSolverPrSimplexBasis) |
69 | | - assert(solver_object.sub_solver_call_time_ |
70 | | - .run_time[kSubSolverPrSimplexBasis] >= 0); |
| 70 | + assert(!std::signbit(solver_object.sub_solver_call_time_ |
| 71 | + .run_time[kSubSolverPrSimplexBasis])); |
71 | 72 | if (sub_solver_ix != kSubSolverPrSimplexNoBasis) |
72 | | - assert(solver_object.sub_solver_call_time_ |
73 | | - .run_time[kSubSolverPrSimplexNoBasis] >= 0); |
| 73 | + assert(!std::signbit(solver_object.sub_solver_call_time_ |
| 74 | + .run_time[kSubSolverPrSimplexNoBasis])); |
74 | 75 | // Update the call count and run time |
75 | 76 | solver_object.sub_solver_call_time_.num_call[sub_solver_ix]++; |
76 | 77 | solver_object.sub_solver_call_time_.run_time[sub_solver_ix] += |
|
0 commit comments