All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Pages
Classes | Namespaces | Typedefs | Functions
ir_components.hpp File Reference
#include "paal/data_structures/components/components.hpp"
#include "paal/lp/ids.hpp"
#include "paal/lp/lp_base.hpp"
#include "paal/lp/problem_type.hpp"
#include "paal/utils/floating.hpp"
#include "paal/utils/functors.hpp"
#include <boost/optional.hpp>
#include <boost/range/iterator_range.hpp>
#include <boost/tuple/tuple.hpp>
#include <cmath>

Go to the source code of this file.

Classes

class  paal::ir::default_round_condition
 Default column rounding condition component. More...
 
class  paal::ir::round_condition_equals<>
 Column rounding component. Rounds a column if its value is equal to one of the template parameter values. More...
 
class  paal::ir::round_condition_equals< arg, args...>
 Column rounding component. Rounds a column if its value is equal to one of the template parameter values. More...
 
class  paal::ir::round_condition_equals<>
 Column rounding component. Rounds a column if its value is equal to one of the template parameter values. Edge case (no template parameter values). More...
 
class  paal::ir::round_condition_to_fun< Cond, F >
 Column rounding component. Rounds a column if its value satisfies a fixed condition. The column is rounded to a value defined by a fixed function. More...
 
class  paal::ir::cond_bigger_equal_than
 Checks if a variable is greater or equal than a fixed bound. More...
 
struct  paal::ir::round_condition_greater_than_half
 Column rounding component. A variable is rounded up to 1, if it has value at least half in the solution. More...
 
struct  paal::ir::default_solve_lp_to_extreme_point
 Finds an extreme point solution to the LP. More...
 
struct  paal::ir::default_resolve_lp_to_extreme_point
 Finds an extreme point solution to the LP. More...
 
class  paal::ir::default_stop_condition
 Default stop condition component. More...
 
class  paal::ir::relaxations_limit_condition
 Checks if the relaxations limit was reached. More...
 

Namespaces

 paal
 global namespace of project.
 
 paal::ir
 Iterative Rounding namespace.
 

Typedefs

using paal::ir::components = data_structures::components< Init, data_structures::NameWithDefault< RoundCondition, default_round_condition >, data_structures::NameWithDefault< RelaxCondition, utils::always_false >, data_structures::NameWithDefault< SetSolution, utils::skip_functor >, data_structures::NameWithDefault< SolveLP, default_solve_lp_to_extreme_point >, data_structures::NameWithDefault< ResolveLP, default_resolve_lp_to_extreme_point >, data_structures::NameWithDefault< StopCondition, default_stop_condition >, data_structures::NameWithDefault< RelaxationsLimit, utils::always_false >>
 
template<typename... Args>
using paal::ir::IRcomponents = typename components::type< Args...>
 Iterative rounding components.
 

Functions

template<typename... Args>
auto paal::ir::make_IRcomponents (Args &&...args) -> decltype(components::make_components(std::forward< Args >(args)...))
 Returns iterative rounding components.
 

Detailed Description

Author
Piotr Wygocki, Piotr Godlewski
Version
1.0
Date
2013-05-10

Definition in file ir_components.hpp.