PIPS-IPM++ Solver and Tools
a parallel interior-point method for doubly bordered block diagonal linear programs
pipsipmpp::options Namespace Reference

Classes

class  Option
 an option of template type T More...
class  PIPSIPMppOptions
 all PIPS-IPM++ options More...

Enumerations

enum  Type { integer , real , boolean , string }
 option value type More...
enum  Category {
  output = 0 , presolve , postsolve , scaling ,
  interior_point , regularization , schur_complement , outer_solve ,
  inner_solve , linear_solver , linesearch , hierarchical ,
  misc
}
 option categories More...

Functions

bool is_solver_available (SolverType solver)
void set_options (const std::string &opt_file)
void set_option (const std::string &opt_setting)
void adjust_options ()
void reset ()
 reset all options to their default value
void print_modified_options (std::ostream &out)
void print_options_docu (std::ostream &out)
template<typename T>
void set_parameter (const std::string &identifier, const T &value)
void set_parameter (const std::string &identifier, const char *value)
void set_int_parameter (const std::string &identifier, int value)
void set_double_parameter (const std::string &identifier, double value)
void set_bool_parameter (const std::string &identifier, bool value)
void set_string_parameter (const std::string &identifier, const std::string &value)
template<typename T>
const Option< T > & get_option (const std::string &identifier)
template<typename T>
const T & get_parameter (const std::string &identifier)
int get_int_parameter (const std::string &identifier)
double get_double_parameter (const std::string &identifier)
bool get_bool_parameter (const std::string &identifier)
const std::string & get_string_parameter (const std::string &identifier)
const std::string & get_string_parameter_value_description (const std::string &identifier)
SolverType get_solvertype_parameter (const std::string &identifier)

Detailed Description

Options methods and objects

Enumeration Type Documentation

◆ Category

option categories

Enumerator
output 

options that control output, e.g., log verbosity

presolve 

options that control presolve

postsolve 

options that control postsolve

scaling 

options that control scaling

interior_point 

options that control the interior point algorithm in general

regularization 

options that control matrix regularization

schur_complement 

options that control the schur complement

outer_solve 

options that control the outer solve

inner_solve 

options that control the inner solve

linear_solver 

options that control the linear system solver

linesearch 

options that control the line search

hierarchical 

options that control the hierarchical approach

misc 

miscellaneous options

◆ Type

option value type

Enumerator
integer 

option has an integral value

real 

option has a real value

boolean 

option has a boolean value

string 

option has a string value

Function Documentation

◆ adjust_options()

void pipsipmpp::options::adjust_options ( )

updates some options settings according to other settings that may have been set should be called after options file has been read

◆ get_bool_parameter()

bool pipsipmpp::options::get_bool_parameter ( const std::string & identifier)
inline

get value of boolean-valued option for option name

Parameters
identifiername of option for which to get current value
Returns
value of option

◆ get_double_parameter()

double pipsipmpp::options::get_double_parameter ( const std::string & identifier)
inline

get value of double-valued option for option name

Parameters
identifiername of option for which to get current value
Returns
value of option

◆ get_int_parameter()

int pipsipmpp::options::get_int_parameter ( const std::string & identifier)
inline

get value of integer-valued option for option name

Parameters
identifiername of option for which to get current value
Returns
value of option

◆ get_option()

template<typename T>
const Option< T > & pipsipmpp::options::get_option ( const std::string & identifier)
inline

get option object for option name

Parameters
identifiername of option to get
Returns
Option which name is identifier

◆ get_parameter()

template<typename T>
const T & pipsipmpp::options::get_parameter ( const std::string & identifier)
inline

get value of option for option name

Parameters
identifiername of option for which to get current value
Returns
value of option

◆ get_solvertype_parameter()

SolverType pipsipmpp::options::get_solvertype_parameter ( const std::string & identifier)

get the linear subsystem solver enum value corresponding to the value that an option (given by its name) has been set to

Parameters
identifiername of linear subsystem solver option
Returns
currently selected solver

◆ get_string_parameter()

const std::string & pipsipmpp::options::get_string_parameter ( const std::string & identifier)
inline

get value of string-valued option for option name

Parameters
identifiername of option for which to get current value
Returns
value of option

◆ get_string_parameter_value_description()

const std::string & pipsipmpp::options::get_string_parameter_value_description ( const std::string & identifier)

get description for the value that an enumerated string-valued option has been set to

Parameters
identifiername of option for which to description of current value
Returns
description of value of option

◆ is_solver_available()

bool pipsipmpp::options::is_solver_available ( SolverType solver)

Query existence of a linear subsystem solver.

Parameters
solverthe linear subsystem solver to check for
Returns
whether the interface to solver has been compiled

◆ print_modified_options()

void pipsipmpp::options::print_modified_options ( std::ostream & out)

write out all options not set to default

Parameters
outstream to print to

◆ print_options_docu()

void pipsipmpp::options::print_options_docu ( std::ostream & out)

write out all options that have been set

Parameters
outstream to print to

◆ set_bool_parameter()

void pipsipmpp::options::set_bool_parameter ( const std::string & identifier,
bool value )
inline

set bool-valued option

Parameters
identifiername of option to set
valuevalue the option should be set to

◆ set_double_parameter()

void pipsipmpp::options::set_double_parameter ( const std::string & identifier,
double value )
inline

set double-valued option

Parameters
identifiername of option to set
valuevalue the option should be set to

◆ set_int_parameter()

void pipsipmpp::options::set_int_parameter ( const std::string & identifier,
int value )
inline

set integer-valued option

Parameters
identifiername of option to set
valuevalue the option should be set to

◆ set_option()

void pipsipmpp::options::set_option ( const std::string & opt_setting)

process a single option setting line (OPT=val)

Parameters
opt_settingoption setting to apply

◆ set_options()

void pipsipmpp::options::set_options ( const std::string & opt_file)

read options from an options file

Parameters
opt_filename of options file

◆ set_parameter() [1/2]

void pipsipmpp::options::set_parameter ( const std::string & identifier,
const char * value )
inline

set string-valued option

Parameters
identifiername of option to set
valuevalue the option should be set to

◆ set_parameter() [2/2]

template<typename T>
void pipsipmpp::options::set_parameter ( const std::string & identifier,
const T & value )
inline

set string-valued option

Parameters
identifiername of option to set
valuevalue the option should be set to

◆ set_string_parameter()

void pipsipmpp::options::set_string_parameter ( const std::string & identifier,
const std::string & value )
inline

set string-valued option

Parameters
identifiername of option to set
valuevalue the option should be set to