00001 00014 #ifndef FLOP_SMI_FUNCTIONS_H 00015 #define FLOP_SMI_FUNCTIONS_H 00016 00017 // Change these two lines to use a different solver 00018 #include "OsiClpSolverInterface.hpp" 00019 #define OSI_SOLVER_INTERFACE OsiClpSolverInterface 00020 00021 #include "SmiScnModel.hpp" 00022 #include "corenode_base.hpp" // problem-independent core-node base class 00023 00024 namespace FlopSmiEx { 00025 00027 00030 SmiCoreData * create_smi_core (vector<CoreNodeBase *> & coreNodes, 00031 std::string problemName = "flop-smi_ex"); 00032 00033 00035 00041 double solve_det_equiv(SmiScnModel & stochModel, 00042 MP_model::MP_direction const minOrMax, 00043 double const * & p2solVector, 00044 std::string const problemName); 00045 00046 00048 double minimize_det_equiv(SmiScnModel & stochModel, 00049 double const * & p2solVector, 00050 std::string const problemName = "flop-smi_ex"); 00051 00052 00054 double maximize_det_equiv(SmiScnModel & stochModel, 00055 double const * & p2solVector, 00056 std::string const problemName = "flop-smi_ex"); 00057 00058 } // namespace FlopSmiEx 00059 #endif