MeshKit
1.0
|
#include <IASolverEven.hpp>
Public Member Functions | |
IASolverEven (const IAData *ia_data, const IASolution *int_solution) | |
virtual | ~IASolverEven () |
bool | solve () |
Private Types | |
typedef std::pair< int, int > | RoundingX |
typedef std::multimap< double, RoundingX > | RoundingMap |
Private Member Functions | |
void | report_one_constraint (const int i, const int b) |
void | report_one_non_integer (const int i, const int b) |
bool | calculate_rounding_value (const int i, double &obj_increase, int &y_int) |
bool | calculate_sumeven_value (const int i, double &obj_increase, int &y_int) |
void | constrain_integer (const int i_nonint, const int x_bound) |
bool | find_one_non_integer (int &i_nonint, int &x_bound) |
bool | constrain_one_non_integer (int &i, int &b) |
bool | find_many_non_integer (RoundingMap &rounding_map) |
bool | constrain_many_non_integer (RoundingMap &rounding_map) |
void | back_off (RoundingMap &rounding_map) |
void | report_many_non_integer (RoundingMap &rounding_map) |
double | distance_to_even (int i) |
void | cleanup () |
void | print_solution (IPData &ip_data) |
IASolverEven (const IASolverEven &) | |
IASolverEven & | operator= (const IASolverEven &) |
Private Attributes | |
const IAData * | iaData |
IPData | ipData |
IAMINlp * | myianlp |
const bool | debugging |
Definition at line 22 of file IASolverEven.hpp.
typedef std::multimap<double, RoundingX> RoundingMap [private] |
Definition at line 64 of file IASolverEven.hpp.
typedef std::pair<int,int> RoundingX [private] |
Definition at line 63 of file IASolverEven.hpp.
IASolverEven | ( | const IAData * | ia_data, |
const IASolution * | int_solution | ||
) |
default constructor
Definition at line 18 of file IASolverEven.cpp.
~IASolverEven | ( | ) | [virtual] |
default destructor
Definition at line 25 of file IASolverEven.cpp.
IASolverEven | ( | const IASolverEven & | ) | [private] |
void back_off | ( | RoundingMap & | rounding_map | ) | [private] |
Definition at line 285 of file IASolverEven.cpp.
bool calculate_rounding_value | ( | const int | i, |
double & | obj_increase, | ||
int & | y_int | ||
) | [private] |
Definition at line 75 of file IASolverEven.cpp.
bool calculate_sumeven_value | ( | const int | i, |
double & | obj_increase, | ||
int & | y_int | ||
) | [private] |
Definition at line 48 of file IASolverEven.cpp.
void cleanup | ( | ) | [private] |
Definition at line 381 of file IASolverEven.cpp.
void constrain_integer | ( | const int | i_nonint, |
const int | x_bound | ||
) | [private] |
Definition at line 227 of file IASolverEven.cpp.
bool constrain_many_non_integer | ( | RoundingMap & | rounding_map | ) | [private] |
Definition at line 353 of file IASolverEven.cpp.
bool constrain_one_non_integer | ( | int & | i, |
int & | b | ||
) | [private] |
Definition at line 235 of file IASolverEven.cpp.
double distance_to_even | ( | int | i | ) | [private] |
Definition at line 28 of file IASolverEven.cpp.
bool find_many_non_integer | ( | RoundingMap & | rounding_map | ) | [private] |
Definition at line 305 of file IASolverEven.cpp.
bool find_one_non_integer | ( | int & | i_nonint, |
int & | x_bound | ||
) | [private] |
Definition at line 118 of file IASolverEven.cpp.
IASolverEven& operator= | ( | const IASolverEven & | ) | [private] |
void print_solution | ( | IPData & | ip_data | ) | [private] |
void report_many_non_integer | ( | RoundingMap & | rounding_map | ) | [private] |
Definition at line 373 of file IASolverEven.cpp.
void report_one_constraint | ( | const int | i, |
const int | b | ||
) | [private] |
Definition at line 269 of file IASolverEven.cpp.
void report_one_non_integer | ( | const int | i, |
const int | b | ||
) | [private] |
Definition at line 275 of file IASolverEven.cpp.
bool solve | ( | ) |
Definition at line 386 of file IASolverEven.cpp.
const bool debugging [private] |
Definition at line 80 of file IASolverEven.hpp.
Definition at line 73 of file IASolverEven.hpp.
Definition at line 74 of file IASolverEven.hpp.
Definition at line 75 of file IASolverEven.hpp.