CYCLUS
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
cyclus::ProgSolver Class Reference

Detailed Description

The ProgSolver provides the implementation for a mathematical programming solution to a resource exchange graph.

Definition at line 19 of file prog_solver.h.

#include <prog_solver.h>

Inheritance diagram for cyclus::ProgSolver:
Inheritance graph
[legend]

Public Member Functions

virtual ~ProgSolver ()
 
 ProgSolver (std::string solver_t)
 
 ProgSolver (std::string solver_t, double tmax)
 
 ProgSolver (std::string solver_t, bool exclusive_orders)
 
 ProgSolver (std::string solver_t, double tmax, bool exclusive_orders, bool verbose, bool mps)
 
- Public Member Functions inherited from cyclus::ExchangeSolver
double ArcCost (const Arc &a)
 
 ExchangeSolver (bool exclusive_orders=kDefaultExclusive)
 
void graph (ExchangeGraph *graph)
 
ExchangeGraphgraph () const
 
double Solve (ExchangeGraph *graph=NULL)
 
void verbose ()
 
virtual ~ExchangeSolver ()
 
void sim_ctx (Context *c)
 
Contextsim_ctx ()
 
double PseudoCost ()
 
double PseudoCost (double cost_factor)
 
double PseudoCostByCap (double cost_factor)
 
double PseudoCostByPref (double cost_factor)
 

Static Public Attributes

static const int kDefaultTimeout = 5 * 60
 
- Static Public Attributes inherited from cyclus::ExchangeSolver
static const bool kDefaultExclusive = true
 

Protected Member Functions

virtual double SolveGraph ()
 

Additional Inherited Members

- Static Public Member Functions inherited from cyclus::ExchangeSolver
static double Cost (const Arc &a, bool exclusive_orders=kDefaultExclusive)
 
- Protected Attributes inherited from cyclus::ExchangeSolver
bool exclusive_orders_
 
ExchangeGraphgraph_
 
Contextsim_ctx_
 
bool verbose_
 

Constructor & Destructor Documentation

◆ ProgSolver() [1/4]

cyclus::ProgSolver::ProgSolver ( std::string  solver_t)
Parameters
solver_tthe solver type, either "cbc" or "clp"
tmaxthe maximum solution time, default kDefaultTimeout
exclusive_orderswhether all orders must be exclusive or not, default false
verboseprint out a lot to stdout, default false
mpsdump mps files for every solve, default false

Definition at line 18 of file prog_solver.cc.

◆ ProgSolver() [2/4]

cyclus::ProgSolver::ProgSolver ( std::string  solver_t,
double  tmax 
)

Definition at line 32 of file prog_solver.cc.

◆ ProgSolver() [3/4]

cyclus::ProgSolver::ProgSolver ( std::string  solver_t,
bool  exclusive_orders 
)

Definition at line 25 of file prog_solver.cc.

◆ ProgSolver() [4/4]

cyclus::ProgSolver::ProgSolver ( std::string  solver_t,
double  tmax,
bool  exclusive_orders,
bool  verbose,
bool  mps 
)

Definition at line 39 of file prog_solver.cc.

◆ ~ProgSolver()

cyclus::ProgSolver::~ProgSolver ( )
virtual

Definition at line 47 of file prog_solver.cc.

Member Function Documentation

◆ SolveGraph()

double cyclus::ProgSolver::SolveGraph ( )
protectedvirtual

the ProgSolver solves an ExchangeGraph...

Implements cyclus::ExchangeSolver.

Definition at line 55 of file prog_solver.cc.

Member Data Documentation

◆ kDefaultTimeout

const int cyclus::ProgSolver::kDefaultTimeout = 5 * 60
static

Definition at line 21 of file prog_solver.h.


The documentation for this class was generated from the following files: