Macros | Enumerations | Functions | Variables
OSParameters.h File Reference
#include "OSConfig.h"
#include <string>
#include <limits>
Include dependency graph for OSParameters.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define OS_PLUS   1001
 
#define OS_SUM   1002
 
#define OS_MINUS   1003
 
#define OS_NEGATE   1004
 
#define OS_TIMES   1005
 
#define OS_DIVIDE   1006
 
#define OS_POWER   1009
 
#define OS_PRODUCT   1010
 
#define OS_ABS   2001
 
#define OS_SQUARE   2005
 
#define OS_SQRT   2006
 
#define OS_LN   2007
 
#define OS_EXP   2010
 
#define OS_ERF   2023
 
#define OS_SIN   3001
 
#define OS_COS   3002
 
#define OS_MIN   4010
 
#define OS_MAX   4011
 
#define OS_NUMBER   5001
 
#define OS_PI   5003
 
#define OS_E   5004
 
#define OS_VARIABLE   6001
 
#define OS_IF   7001
 
#define OS_ALLDIFF   7016
 
#define OS_MATRIX_DETERMINANT   8001
 
#define OS_MATRIX_TRACE   8002
 
#define OS_MATRIX_TO_SCALAR   8003
 
#define OS_MATRIX_PLUS   8501
 
#define OS_MATRIX_SUM   8502
 
#define OS_MATRIX_MINUS   8503
 
#define OS_MATRIX_NEGATE   8504
 
#define OS_MATRIX_TIMES   8505
 
#define OS_MATRIX_PRODUCT   8506
 
#define OS_MATRIX_INVERSE   8510
 
#define OS_MATRIX_TRANSPOSE   8515
 
#define OS_MATRIX_SCALARTIMES   8518
 
#define OS_MATRIX_DOTTIMES   8520
 
#define OS_IDENTITY_MATRIX   8536
 
#define OS_MATRIX_LOWERTRIANGLE   8537
 
#define OS_MATRIX_UPPERTRIANGLE   8538
 
#define OS_MATRIX_DIAGONAL   8539
 
#define OS_DIAGONAL_MATRIX_FROM_VECTOR   8540
 
#define OS_MATRIX_REFERENCE   8541
 
#define OS_MATRIX_SUBMATRIX_AT   8544
 
#define OS_MATRIX_VAR   8601
 
#define OS_MATRIX_OBJ   8602
 
#define OS_MATRIX_CON   8603
 
#define OS_E_VALUE   exp(1.0)
 
#define OS_PI_VALUE   2*asin(1.0)
 
#define OS_SCHEMA_VERSION   "2.0"
 
#define OS_NEAR_EQUAL   1e-2
 we use OS_NEAR_EQUAL in unitTest to see if we are close to the optimal obj value More...
 
#define OS_EPS   1e-12
 
#define DEFAULT_OUTPUT_LEVEL   ENUM_OUTPUT_LEVEL_error
 

Enumerations

enum  ENUM_OUTPUT_LEVEL {
  ENUM_OUTPUT_LEVEL_always = 0, ENUM_OUTPUT_LEVEL_error, ENUM_OUTPUT_LEVEL_summary, ENUM_OUTPUT_LEVEL_warning,
  ENUM_OUTPUT_LEVEL_info, ENUM_OUTPUT_LEVEL_debug, ENUM_OUTPUT_LEVEL_trace, ENUM_OUTPUT_LEVEL_detailed_trace,
  ENUM_OUTPUT_LEVEL_NUMBER_OF_LEVELS
}
 Enumeration for the different verbosity levels that can be used in producing output. More...
 
enum  ENUM_OUTPUT_AREA {
  ENUM_OUTPUT_AREA_main = 1, ENUM_OUTPUT_AREA_OSAgent, ENUM_OUTPUT_AREA_Command_line_parser, ENUM_OUTPUT_AREA_OSiL_parser,
  ENUM_OUTPUT_AREA_OSoL_parser, ENUM_OUTPUT_AREA_OSrL_parser, ENUM_OUTPUT_AREA_OSGeneral, ENUM_OUTPUT_AREA_OSInstance,
  ENUM_OUTPUT_AREA_OSOption, ENUM_OUTPUT_AREA_OSResult, ENUM_OUTPUT_AREA_OSMatrix, ENUM_OUTPUT_AREA_OSiLwriter,
  ENUM_OUTPUT_AREA_OSoLwriter, ENUM_OUTPUT_AREA_OSrLwriter, ENUM_OUTPUT_AREA_OSModelInterfaces, ENUM_OUTPUT_AREA_OSSolverInterfaces,
  ENUM_OUTPUT_AREA_OSUtils, ENUM_OUTPUT_AREA_NUMBER_OF_AREAS
}
 Enumeration for the different areas that can produce output. More...
 
enum  ENUM_CPUSPEEDUNIT {
  ENUM_CPUSPEEDUNIT_hertz = 1, ENUM_CPUSPEEDUNIT_kilohertz, ENUM_CPUSPEEDUNIT_megahertz, ENUM_CPUSPEEDUNIT_gigahertz,
  ENUM_CPUSPEEDUNIT_terahertz, ENUM_CPUSPEEDUNIT_flops, ENUM_CPUSPEEDUNIT_kiloflops, ENUM_CPUSPEEDUNIT_megaflops,
  ENUM_CPUSPEEDUNIT_gigaflops, ENUM_CPUSPEEDUNIT_teraflops, ENUM_CPUSPEEDUNIT_petaflops
}
 
enum  ENUM_STORAGEUNIT {
  ENUM_STORAGEUNIT_byte = 1, ENUM_STORAGEUNIT_kilobyte, ENUM_STORAGEUNIT_megabyte, ENUM_STORAGEUNIT_gigabyte,
  ENUM_STORAGEUNIT_terabyte, ENUM_STORAGEUNIT_petabyte, ENUM_STORAGEUNIT_exabyte, ENUM_STORAGEUNIT_zettabyte,
  ENUM_STORAGEUNIT_yottabyte
}
 
enum  ENUM_TIMEUNIT {
  ENUM_TIMEUNIT_tick = 1, ENUM_TIMEUNIT_millisecond, ENUM_TIMEUNIT_second, ENUM_TIMEUNIT_minute,
  ENUM_TIMEUNIT_hour, ENUM_TIMEUNIT_day, ENUM_TIMEUNIT_week, ENUM_TIMEUNIT_month,
  ENUM_TIMEUNIT_year
}
 
enum  ENUM_TIMETYPE { ENUM_TIMETYPE_cpuTime = 1, ENUM_TIMETYPE_elapsedTime, ENUM_TIMETYPE_other }
 
enum  ENUM_TIMECATEGORY {
  ENUM_TIMECATEGORY_total = 1, ENUM_TIMECATEGORY_input, ENUM_TIMECATEGORY_preprocessing, ENUM_TIMECATEGORY_optimization,
  ENUM_TIMECATEGORY_postprocessing, ENUM_TIMECATEGORY_output, ENUM_TIMECATEGORY_other
}
 
enum  ENUM_LOCATIONTYPE { ENUM_LOCATIONTYPE_local = 1, ENUM_LOCATIONTYPE_http, ENUM_LOCATIONTYPE_ftp }
 
enum  ENUM_TRANSPORT_TYPE {
  ENUM_TRANSPORT_TYPE_osp = 1, ENUM_TRANSPORT_TYPE_http, ENUM_TRANSPORT_TYPE_smtp, ENUM_TRANSPORT_TYPE_ftp,
  ENUM_TRANSPORT_TYPE_other
}
 
enum  ENUM_SERVICE_TYPE {
  ENUM_SERVICE_TYPE_analyzer = 1, ENUM_SERVICE_TYPE_solver, ENUM_SERVICE_TYPE_scheduler, ENUM_SERVICE_TYPE_modeler,
  ENUM_SERVICE_TYPE_registry, ENUM_SERVICE_TYPE_agent, ENUM_SERVICE_TYPE_simulations
}
 
enum  ENUM_GENERAL_RESULT_STATUS { ENUM_GENERAL_RESULT_STATUS_error = 1, ENUM_GENERAL_RESULT_STATUS_warning, ENUM_GENERAL_RESULT_STATUS_normal }
 
enum  ENUM_SYSTEM_CURRENT_STATE {
  ENUM_SYSTEM_CURRENT_STATE_busy = 1, ENUM_SYSTEM_CURRENT_STATE_busyButAccepting, ENUM_SYSTEM_CURRENT_STATE_idle, ENUM_SYSTEM_CURRENT_STATE_idleButNotAccepting,
  ENUM_SYSTEM_CURRENT_STATE_noResponse
}
 
enum  ENUM_JOB_STATUS {
  ENUM_JOB_STATUS_waiting = 1, ENUM_JOB_STATUS_running, ENUM_JOB_STATUS_killed, ENUM_JOB_STATUS_finished,
  ENUM_JOB_STATUS_unknown
}
 
enum  ENUM_BASIS_STATUS {
  ENUM_BASIS_STATUS_basic = 0, ENUM_BASIS_STATUS_atLower, ENUM_BASIS_STATUS_atUpper, ENUM_BASIS_STATUS_atEquality,
  ENUM_BASIS_STATUS_isFree, ENUM_BASIS_STATUS_superbasic, ENUM_BASIS_STATUS_unknown, ENUM_BASIS_STATUS_NUMBER_OF_STATES
}
 Enumeration for the different states that can be used in representating a basis The last state, ENUM_BASIS_STATUS_NUMBER_OF_STATES, is used only to record the number of states, which makes it easier to convert between different representations. More...
 
enum  ENUM_SOLUTION_STATUS {
  ENUM_SOLUTION_STATUS_unbounded = 1, ENUM_SOLUTION_STATUS_globallyOptimal, ENUM_SOLUTION_STATUS_locallyOptimal, ENUM_SOLUTION_STATUS_optimal,
  ENUM_SOLUTION_STATUS_bestSoFar, ENUM_SOLUTION_STATUS_feasible, ENUM_SOLUTION_STATUS_infeasible, ENUM_SOLUTION_STATUS_unsure,
  ENUM_SOLUTION_STATUS_error, ENUM_SOLUTION_STATUS_other
}
 
enum  ENUM_SOLUTION_SUBSTATUSTYPE { ENUM_SOLUTION_SUBSTATUSTYPE_stoppedByLimit = 1, ENUM_SOLUTION_SUBSTATUSTYPE_stoppedByBounds, ENUM_SOLUTION_SUBSTATUSTYPE_other }
 
enum  ENUM_PROBLEM_COMPONENT { ENUM_PROBLEM_COMPONENT_variables = 1, ENUM_PROBLEM_COMPONENT_objectives, ENUM_PROBLEM_COMPONENT_constraints }
 
enum  ENUM_VARTYPE {
  ENUM_VARTYPE_continuous = 1, ENUM_VARTYPE_binary, ENUM_VARTYPE_integer, ENUM_VARTYPE_string,
  ENUM_VARTYPE_semicontinuous, ENUM_VARTYPE_semiinteger
}
 
enum  ENUM_PATHPAIR { ENUM_PATHPAIR_input_dir = 1, ENUM_PATHPAIR_input_file, ENUM_PATHPAIR_output_file, ENUM_PATHPAIR_output_dir }
 
enum  ENUM_MATRIX_TYPE {
  ENUM_MATRIX_TYPE_empty = 1, ENUM_MATRIX_TYPE_constant = 10, ENUM_MATRIX_TYPE_varReference, ENUM_MATRIX_TYPE_linear,
  ENUM_MATRIX_TYPE_quadratic, ENUM_MATRIX_TYPE_general, ENUM_MATRIX_TYPE_objReference = 20, ENUM_MATRIX_TYPE_conReference,
  ENUM_MATRIX_TYPE_mixedRowReference, ENUM_MATRIX_TYPE_string, ENUM_MATRIX_TYPE_unknown = 99
}
 An enum to track the many different types of values that a matrix can contain Note that these types are partially ordered, which makes it easier to infer a matrix's type from the types of its constructors. More...
 
enum  ENUM_CONREFERENCE_VALUETYPE { ENUM_CONREFERENCE_VALUETYPE_value = 1, ENUM_CONREFERENCE_VALUETYPE_status, ENUM_CONREFERENCE_VALUETYPE_surplus, ENUM_CONREFERENCE_VALUETYPE_shortage }
 An enum to track the type of value contained in a reference to a constraint. More...
 
enum  ENUM_MATRIX_SYMMETRY {
  ENUM_MATRIX_SYMMETRY_none = 1, ENUM_MATRIX_SYMMETRY_upper, ENUM_MATRIX_SYMMETRY_lower, ENUM_MATRIX_SYMMETRY_skewUpper,
  ENUM_MATRIX_SYMMETRY_skewLower, ENUM_MATRIX_SYMMETRY_HermitianLower, ENUM_MATRIX_SYMMETRY_HermitianUpper
}
 
enum  ENUM_MATRIX_CONSTRUCTOR_TYPE {
  ENUM_MATRIX_CONSTRUCTOR_TYPE_unknown = 0, ENUM_MATRIX_CONSTRUCTOR_TYPE_baseMatrix, ENUM_MATRIX_CONSTRUCTOR_TYPE_constantElements, ENUM_MATRIX_CONSTRUCTOR_TYPE_varRefElements,
  ENUM_MATRIX_CONSTRUCTOR_TYPE_linearElements, ENUM_MATRIX_CONSTRUCTOR_TYPE_generalElements, ENUM_MATRIX_CONSTRUCTOR_TYPE_objRefElements, ENUM_MATRIX_CONSTRUCTOR_TYPE_conRefElements,
  ENUM_MATRIX_CONSTRUCTOR_TYPE_mixedRowRefElements, ENUM_MATRIX_CONSTRUCTOR_TYPE_stringValuedElements, ENUM_MATRIX_CONSTRUCTOR_TYPE_transformation, ENUM_MATRIX_CONSTRUCTOR_TYPE_blocks,
  ENUM_MATRIX_CONSTRUCTOR_TYPE_block, ENUM_MATRIX_CONSTRUCTOR_TYPE_matrix
}
 
enum  ENUM_COMBINE_ARRAYS { ENUM_COMBINE_ARRAYS_replace, ENUM_COMBINE_ARRAYS_merge, ENUM_COMBINE_ARRAYS_ignore, ENUM_COMBINE_ARRAYS_throw }
 An enum to streamline set() methods of vectors. More...
 
enum  ENUM_NL_EXPR_SHAPE {
  ENUM_NL_EXPR_SHAPE_general = 1, ENUM_NL_EXPR_SHAPE_convex, ENUM_NL_EXPR_SHAPE_quadratic, ENUM_NL_EXPR_SHAPE_linear,
  ENUM_NL_EXPR_SHAPE_constant
}
 
enum  ENUM_CONE_TYPE {
  ENUM_CONE_TYPE_nonnegative = 1, ENUM_CONE_TYPE_nonpositive, ENUM_CONE_TYPE_orthant, ENUM_CONE_TYPE_polyhedral,
  ENUM_CONE_TYPE_quadratic, ENUM_CONE_TYPE_rotatedQuadratic, ENUM_CONE_TYPE_normed, ENUM_CONE_TYPE_rotatedNormed,
  ENUM_CONE_TYPE_semidefinite, ENUM_CONE_TYPE_copositiveMatrices, ENUM_CONE_TYPE_completelyPositiveMatrices, ENUM_CONE_TYPE_hyperbolicity,
  ENUM_CONE_TYPE_sumOfSquaresPolynomials, ENUM_CONE_TYPE_nonnegativePolynomials, ENUM_CONE_TYPE_moments, ENUM_CONE_TYPE_product,
  ENUM_CONE_TYPE_intersection, ENUM_CONE_TYPE_dual, ENUM_CONE_TYPE_polar, ENUM_CONE_TYPE_unknown
}
 

Functions

bool OSIsnan (double x)
 checks whether a given double is NaN More...
 
double OSNaN ()
 returns the value for NaN used in OS More...
 
std::string OSgetVersionInfo ()
 
int returnCPUSpeedUnit (std::string unit)
 
bool verifyCPUSpeedUnit (std::string unit)
 
int returnStorageUnit (std::string unit)
 
bool verifyStorageUnit (std::string unit)
 
int returnTimeUnit (std::string unit)
 
bool verifyTimeUnit (std::string unit)
 
int returnTimeType (std::string type)
 
bool verifyTimeType (std::string type)
 
int returnTimeCategory (std::string category)
 
bool verifyTimeCategory (std::string category)
 
int returnLocationType (std::string type)
 
bool verifyLocationType (std::string type)
 
int returnTransportType (std::string type)
 
bool verifyTransportType (std::string type)
 
int returnServiceType (std::string type)
 
bool verifyServiceType (std::string type)
 
int returnGeneralResultStatus (std::string status)
 
bool verifyGeneralResultStatus (std::string status)
 
int returnSystemCurrentState (std::string status)
 
bool verifySystemCurrentState (std::string status)
 
int returnJobStatus (std::string status)
 
bool verifyJobStatus (std::string status)
 
int returnBasisStatus (std::string status)
 
bool verifyBasisStatus (std::string status)
 
std::string returnBasisStatusString (ENUM_BASIS_STATUS status)
 
int returnSolutionStatus (std::string status)
 
bool verifySolutionStatus (std::string status)
 
int returnSolutionSubstatusType (std::string type)
 
bool verifySolutionSubstatusType (std::string type)
 
int returnVarType (char vt)
 
bool verifyVarType (char vt)
 
int returnMatrixType (std::string type)
 
std::string returnMatrixTypeString (ENUM_MATRIX_TYPE type)
 
bool verifyMatrixType (std::string type)
 
ENUM_MATRIX_TYPE mergeMatrixType (ENUM_MATRIX_TYPE type1, ENUM_MATRIX_TYPE type2)
 A function to merge two matrix types so we can infer the type of a matrix recursively. More...
 
std::string returnConReferenceValueTypeString (ENUM_CONREFERENCE_VALUETYPE valueType)
 
int returnConReferenceValueType (std::string valueType)
 
bool verifyConReferenceValueType (std::string valueType)
 
std::string returnMatrixSymmetryString (ENUM_MATRIX_SYMMETRY symmetry)
 
int returnMatrixSymmetry (std::string symmetry)
 
bool verifyMatrixSymmetry (std::string symmetry)
 
int returnMatrixConstructorType (std::string cType)
 
bool verifyMatrixConstructorType (std::string type)
 
int returnNlExprShape (std::string shape)
 
std::string returnExprShapeString (ENUM_NL_EXPR_SHAPE shape)
 
bool verifyNlExprShape (std::string shape)
 
int returnConeType (std::string type)
 
bool verifyConeType (std::string type)
 

Variables

const double OSDBL_MAX = std::numeric_limits<double>::max()
 
const int OSINT_MAX = std::numeric_limits<int>::max()
 

Macro Definition Documentation

#define OS_PLUS   1001

Definition at line 27 of file OSParameters.h.

#define OS_SUM   1002

Definition at line 28 of file OSParameters.h.

#define OS_MINUS   1003

Definition at line 29 of file OSParameters.h.

#define OS_NEGATE   1004

Definition at line 30 of file OSParameters.h.

#define OS_TIMES   1005

Definition at line 31 of file OSParameters.h.

#define OS_DIVIDE   1006

Definition at line 32 of file OSParameters.h.

#define OS_POWER   1009

Definition at line 33 of file OSParameters.h.

#define OS_PRODUCT   1010

Definition at line 34 of file OSParameters.h.

#define OS_ABS   2001

Definition at line 35 of file OSParameters.h.

#define OS_SQUARE   2005

Definition at line 36 of file OSParameters.h.

#define OS_SQRT   2006

Definition at line 37 of file OSParameters.h.

#define OS_LN   2007

Definition at line 38 of file OSParameters.h.

#define OS_EXP   2010

Definition at line 39 of file OSParameters.h.

#define OS_ERF   2023

Definition at line 40 of file OSParameters.h.

#define OS_SIN   3001

Definition at line 41 of file OSParameters.h.

#define OS_COS   3002

Definition at line 42 of file OSParameters.h.

#define OS_MIN   4010

Definition at line 43 of file OSParameters.h.

#define OS_MAX   4011

Definition at line 44 of file OSParameters.h.

#define OS_NUMBER   5001

Definition at line 45 of file OSParameters.h.

#define OS_PI   5003

Definition at line 46 of file OSParameters.h.

#define OS_E   5004

Definition at line 47 of file OSParameters.h.

#define OS_VARIABLE   6001

Definition at line 48 of file OSParameters.h.

#define OS_IF   7001

Definition at line 49 of file OSParameters.h.

#define OS_ALLDIFF   7016

Definition at line 50 of file OSParameters.h.

#define OS_MATRIX_DETERMINANT   8001

Definition at line 52 of file OSParameters.h.

#define OS_MATRIX_TRACE   8002

Definition at line 53 of file OSParameters.h.

#define OS_MATRIX_TO_SCALAR   8003

Definition at line 54 of file OSParameters.h.

#define OS_MATRIX_PLUS   8501

Definition at line 57 of file OSParameters.h.

#define OS_MATRIX_SUM   8502

Definition at line 58 of file OSParameters.h.

#define OS_MATRIX_MINUS   8503

Definition at line 59 of file OSParameters.h.

#define OS_MATRIX_NEGATE   8504

Definition at line 60 of file OSParameters.h.

#define OS_MATRIX_TIMES   8505

Definition at line 61 of file OSParameters.h.

#define OS_MATRIX_PRODUCT   8506

Definition at line 62 of file OSParameters.h.

#define OS_MATRIX_INVERSE   8510

Definition at line 63 of file OSParameters.h.

#define OS_MATRIX_TRANSPOSE   8515

Definition at line 64 of file OSParameters.h.

#define OS_MATRIX_SCALARTIMES   8518

Definition at line 65 of file OSParameters.h.

#define OS_MATRIX_DOTTIMES   8520

Definition at line 66 of file OSParameters.h.

#define OS_IDENTITY_MATRIX   8536

Definition at line 67 of file OSParameters.h.

#define OS_MATRIX_LOWERTRIANGLE   8537

Definition at line 68 of file OSParameters.h.

#define OS_MATRIX_UPPERTRIANGLE   8538

Definition at line 69 of file OSParameters.h.

#define OS_MATRIX_DIAGONAL   8539

Definition at line 70 of file OSParameters.h.

#define OS_DIAGONAL_MATRIX_FROM_VECTOR   8540

Definition at line 71 of file OSParameters.h.

#define OS_MATRIX_REFERENCE   8541

Definition at line 72 of file OSParameters.h.

#define OS_MATRIX_SUBMATRIX_AT   8544

Definition at line 73 of file OSParameters.h.

#define OS_MATRIX_VAR   8601

Definition at line 74 of file OSParameters.h.

#define OS_MATRIX_OBJ   8602

Definition at line 75 of file OSParameters.h.

#define OS_MATRIX_CON   8603

Definition at line 76 of file OSParameters.h.

#define OS_E_VALUE   exp(1.0)

Definition at line 80 of file OSParameters.h.

#define OS_PI_VALUE   2*asin(1.0)

Definition at line 81 of file OSParameters.h.

#define OS_SCHEMA_VERSION   "2.0"

Definition at line 83 of file OSParameters.h.

#define OS_NEAR_EQUAL   1e-2

we use OS_NEAR_EQUAL in unitTest to see if we are close to the optimal obj value

Definition at line 89 of file OSParameters.h.

#define OS_EPS   1e-12

Definition at line 91 of file OSParameters.h.

#define DEFAULT_OUTPUT_LEVEL   ENUM_OUTPUT_LEVEL_error

Definition at line 121 of file OSParameters.h.

Enumeration Type Documentation

Enumeration for the different verbosity levels that can be used in producing output.

The last three levels are used only in debug mode.

Enumerator
ENUM_OUTPUT_LEVEL_always 
ENUM_OUTPUT_LEVEL_error 
ENUM_OUTPUT_LEVEL_summary 
ENUM_OUTPUT_LEVEL_warning 
ENUM_OUTPUT_LEVEL_info 
ENUM_OUTPUT_LEVEL_debug 
ENUM_OUTPUT_LEVEL_trace 
ENUM_OUTPUT_LEVEL_detailed_trace 
ENUM_OUTPUT_LEVEL_NUMBER_OF_LEVELS 

Definition at line 107 of file OSParameters.h.

Enumeration for the different areas that can produce output.

The last entry ENUM_OUTPUT_AREA_NUMBER_OF_AREAS gives a convenient way to count them and to allocate space

Enumerator
ENUM_OUTPUT_AREA_main 
ENUM_OUTPUT_AREA_OSAgent 
ENUM_OUTPUT_AREA_Command_line_parser 
ENUM_OUTPUT_AREA_OSiL_parser 
ENUM_OUTPUT_AREA_OSoL_parser 
ENUM_OUTPUT_AREA_OSrL_parser 
ENUM_OUTPUT_AREA_OSGeneral 
ENUM_OUTPUT_AREA_OSInstance 
ENUM_OUTPUT_AREA_OSOption 
ENUM_OUTPUT_AREA_OSResult 
ENUM_OUTPUT_AREA_OSMatrix 
ENUM_OUTPUT_AREA_OSiLwriter 
ENUM_OUTPUT_AREA_OSoLwriter 
ENUM_OUTPUT_AREA_OSrLwriter 
ENUM_OUTPUT_AREA_OSModelInterfaces 
ENUM_OUTPUT_AREA_OSSolverInterfaces 
ENUM_OUTPUT_AREA_OSUtils 
ENUM_OUTPUT_AREA_NUMBER_OF_AREAS 

Definition at line 128 of file OSParameters.h.

Enumerator
ENUM_CPUSPEEDUNIT_hertz 
ENUM_CPUSPEEDUNIT_kilohertz 
ENUM_CPUSPEEDUNIT_megahertz 
ENUM_CPUSPEEDUNIT_gigahertz 
ENUM_CPUSPEEDUNIT_terahertz 
ENUM_CPUSPEEDUNIT_flops 
ENUM_CPUSPEEDUNIT_kiloflops 
ENUM_CPUSPEEDUNIT_megaflops 
ENUM_CPUSPEEDUNIT_gigaflops 
ENUM_CPUSPEEDUNIT_teraflops 
ENUM_CPUSPEEDUNIT_petaflops 

Definition at line 161 of file OSParameters.h.

Enumerator
ENUM_STORAGEUNIT_byte 
ENUM_STORAGEUNIT_kilobyte 
ENUM_STORAGEUNIT_megabyte 
ENUM_STORAGEUNIT_gigabyte 
ENUM_STORAGEUNIT_terabyte 
ENUM_STORAGEUNIT_petabyte 
ENUM_STORAGEUNIT_exabyte 
ENUM_STORAGEUNIT_zettabyte 
ENUM_STORAGEUNIT_yottabyte 

Definition at line 197 of file OSParameters.h.

Enumerator
ENUM_TIMEUNIT_tick 
ENUM_TIMEUNIT_millisecond 
ENUM_TIMEUNIT_second 
ENUM_TIMEUNIT_minute 
ENUM_TIMEUNIT_hour 
ENUM_TIMEUNIT_day 
ENUM_TIMEUNIT_week 
ENUM_TIMEUNIT_month 
ENUM_TIMEUNIT_year 

Definition at line 229 of file OSParameters.h.

Enumerator
ENUM_TIMETYPE_cpuTime 
ENUM_TIMETYPE_elapsedTime 
ENUM_TIMETYPE_other 

Definition at line 261 of file OSParameters.h.

Enumerator
ENUM_TIMECATEGORY_total 
ENUM_TIMECATEGORY_input 
ENUM_TIMECATEGORY_preprocessing 
ENUM_TIMECATEGORY_optimization 
ENUM_TIMECATEGORY_postprocessing 
ENUM_TIMECATEGORY_output 
ENUM_TIMECATEGORY_other 

Definition at line 281 of file OSParameters.h.

Enumerator
ENUM_LOCATIONTYPE_local 
ENUM_LOCATIONTYPE_http 
ENUM_LOCATIONTYPE_ftp 

Definition at line 309 of file OSParameters.h.

Enumerator
ENUM_TRANSPORT_TYPE_osp 
ENUM_TRANSPORT_TYPE_http 
ENUM_TRANSPORT_TYPE_smtp 
ENUM_TRANSPORT_TYPE_ftp 
ENUM_TRANSPORT_TYPE_other 

Definition at line 329 of file OSParameters.h.

Enumerator
ENUM_SERVICE_TYPE_analyzer 
ENUM_SERVICE_TYPE_solver 
ENUM_SERVICE_TYPE_scheduler 
ENUM_SERVICE_TYPE_modeler 
ENUM_SERVICE_TYPE_registry 
ENUM_SERVICE_TYPE_agent 
ENUM_SERVICE_TYPE_simulations 

Definition at line 353 of file OSParameters.h.

Enumerator
ENUM_GENERAL_RESULT_STATUS_error 
ENUM_GENERAL_RESULT_STATUS_warning 
ENUM_GENERAL_RESULT_STATUS_normal 

Definition at line 381 of file OSParameters.h.

Enumerator
ENUM_SYSTEM_CURRENT_STATE_busy 
ENUM_SYSTEM_CURRENT_STATE_busyButAccepting 
ENUM_SYSTEM_CURRENT_STATE_idle 
ENUM_SYSTEM_CURRENT_STATE_idleButNotAccepting 
ENUM_SYSTEM_CURRENT_STATE_noResponse 

Definition at line 401 of file OSParameters.h.

Enumerator
ENUM_JOB_STATUS_waiting 
ENUM_JOB_STATUS_running 
ENUM_JOB_STATUS_killed 
ENUM_JOB_STATUS_finished 
ENUM_JOB_STATUS_unknown 

Definition at line 425 of file OSParameters.h.

Enumeration for the different states that can be used in representating a basis The last state, ENUM_BASIS_STATUS_NUMBER_OF_STATES, is used only to record the number of states, which makes it easier to convert between different representations.

(For instance, AMPL uses a different order, so there may be a need to recode values. See OSosrl2ampl.cpp for an application.)

Enumerator
ENUM_BASIS_STATUS_basic 
ENUM_BASIS_STATUS_atLower 
ENUM_BASIS_STATUS_atUpper 
ENUM_BASIS_STATUS_atEquality 
ENUM_BASIS_STATUS_isFree 
ENUM_BASIS_STATUS_superbasic 
ENUM_BASIS_STATUS_unknown 
ENUM_BASIS_STATUS_NUMBER_OF_STATES 

Definition at line 456 of file OSParameters.h.

Enumerator
ENUM_SOLUTION_STATUS_unbounded 
ENUM_SOLUTION_STATUS_globallyOptimal 
ENUM_SOLUTION_STATUS_locallyOptimal 
ENUM_SOLUTION_STATUS_optimal 
ENUM_SOLUTION_STATUS_bestSoFar 
ENUM_SOLUTION_STATUS_feasible 
ENUM_SOLUTION_STATUS_infeasible 
ENUM_SOLUTION_STATUS_unsure 
ENUM_SOLUTION_STATUS_error 
ENUM_SOLUTION_STATUS_other 

Definition at line 498 of file OSParameters.h.

Enumerator
ENUM_SOLUTION_SUBSTATUSTYPE_stoppedByLimit 
ENUM_SOLUTION_SUBSTATUSTYPE_stoppedByBounds 
ENUM_SOLUTION_SUBSTATUSTYPE_other 

Definition at line 532 of file OSParameters.h.

Enumerator
ENUM_PROBLEM_COMPONENT_variables 
ENUM_PROBLEM_COMPONENT_objectives 
ENUM_PROBLEM_COMPONENT_constraints 

Definition at line 552 of file OSParameters.h.

Enumerator
ENUM_VARTYPE_continuous 
ENUM_VARTYPE_binary 
ENUM_VARTYPE_integer 
ENUM_VARTYPE_string 
ENUM_VARTYPE_semicontinuous 
ENUM_VARTYPE_semiinteger 

Definition at line 559 of file OSParameters.h.

Enumerator
ENUM_PATHPAIR_input_dir 
ENUM_PATHPAIR_input_file 
ENUM_PATHPAIR_output_file 
ENUM_PATHPAIR_output_dir 

Definition at line 586 of file OSParameters.h.

An enum to track the many different types of values that a matrix can contain Note that these types are partially ordered, which makes it easier to infer a matrix's type from the types of its constructors.

Enumerator
ENUM_MATRIX_TYPE_empty 
ENUM_MATRIX_TYPE_constant 
ENUM_MATRIX_TYPE_varReference 
ENUM_MATRIX_TYPE_linear 
ENUM_MATRIX_TYPE_quadratic 
ENUM_MATRIX_TYPE_general 
ENUM_MATRIX_TYPE_objReference 
ENUM_MATRIX_TYPE_conReference 
ENUM_MATRIX_TYPE_mixedRowReference 
ENUM_MATRIX_TYPE_string 
ENUM_MATRIX_TYPE_unknown 

Definition at line 599 of file OSParameters.h.

An enum to track the type of value contained in a reference to a constraint.

Enumerator
ENUM_CONREFERENCE_VALUETYPE_value 
ENUM_CONREFERENCE_VALUETYPE_status 
ENUM_CONREFERENCE_VALUETYPE_surplus 
ENUM_CONREFERENCE_VALUETYPE_shortage 

Definition at line 703 of file OSParameters.h.

Enumerator
ENUM_MATRIX_SYMMETRY_none 
ENUM_MATRIX_SYMMETRY_upper 
ENUM_MATRIX_SYMMETRY_lower 
ENUM_MATRIX_SYMMETRY_skewUpper 
ENUM_MATRIX_SYMMETRY_skewLower 
ENUM_MATRIX_SYMMETRY_HermitianLower 
ENUM_MATRIX_SYMMETRY_HermitianUpper 

Definition at line 735 of file OSParameters.h.

Enumerator
ENUM_MATRIX_CONSTRUCTOR_TYPE_unknown 
ENUM_MATRIX_CONSTRUCTOR_TYPE_baseMatrix 
ENUM_MATRIX_CONSTRUCTOR_TYPE_constantElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_varRefElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_linearElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_generalElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_objRefElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_conRefElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_mixedRowRefElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_stringValuedElements 
ENUM_MATRIX_CONSTRUCTOR_TYPE_transformation 
ENUM_MATRIX_CONSTRUCTOR_TYPE_blocks 
ENUM_MATRIX_CONSTRUCTOR_TYPE_block 
ENUM_MATRIX_CONSTRUCTOR_TYPE_matrix 

Definition at line 776 of file OSParameters.h.

An enum to streamline set() methods of vectors.

Enumerator
ENUM_COMBINE_ARRAYS_replace 
ENUM_COMBINE_ARRAYS_merge 
ENUM_COMBINE_ARRAYS_ignore 
ENUM_COMBINE_ARRAYS_throw 

Definition at line 820 of file OSParameters.h.

Enumerator
ENUM_NL_EXPR_SHAPE_general 
ENUM_NL_EXPR_SHAPE_convex 
ENUM_NL_EXPR_SHAPE_quadratic 
ENUM_NL_EXPR_SHAPE_linear 
ENUM_NL_EXPR_SHAPE_constant 

Definition at line 830 of file OSParameters.h.

Enumerator
ENUM_CONE_TYPE_nonnegative 
ENUM_CONE_TYPE_nonpositive 
ENUM_CONE_TYPE_orthant 
ENUM_CONE_TYPE_polyhedral 
ENUM_CONE_TYPE_quadratic 
ENUM_CONE_TYPE_rotatedQuadratic 
ENUM_CONE_TYPE_normed 
ENUM_CONE_TYPE_rotatedNormed 
ENUM_CONE_TYPE_semidefinite 
ENUM_CONE_TYPE_copositiveMatrices 
ENUM_CONE_TYPE_completelyPositiveMatrices 
ENUM_CONE_TYPE_hyperbolicity 
ENUM_CONE_TYPE_sumOfSquaresPolynomials 
ENUM_CONE_TYPE_nonnegativePolynomials 
ENUM_CONE_TYPE_moments 
ENUM_CONE_TYPE_product 
ENUM_CONE_TYPE_intersection 
ENUM_CONE_TYPE_dual 
ENUM_CONE_TYPE_polar 
ENUM_CONE_TYPE_unknown 

Definition at line 865 of file OSParameters.h.

Function Documentation

bool OSIsnan ( double  x)

checks whether a given double is NaN

Definition at line 51 of file OSParameters.cpp.

double OSNaN ( )

returns the value for NaN used in OS

Definition at line 60 of file OSParameters.cpp.

std::string OSgetVersionInfo ( )

Definition at line 71 of file OSParameters.cpp.

int returnCPUSpeedUnit ( std::string  unit)
inline

Definition at line 176 of file OSParameters.h.

bool verifyCPUSpeedUnit ( std::string  unit)
inline

Definition at line 192 of file OSParameters.h.

int returnStorageUnit ( std::string  unit)
inline

Definition at line 210 of file OSParameters.h.

bool verifyStorageUnit ( std::string  unit)
inline

Definition at line 224 of file OSParameters.h.

int returnTimeUnit ( std::string  unit)
inline

Definition at line 242 of file OSParameters.h.

bool verifyTimeUnit ( std::string  unit)
inline

Definition at line 256 of file OSParameters.h.

int returnTimeType ( std::string  type)
inline

Definition at line 268 of file OSParameters.h.

bool verifyTimeType ( std::string  type)
inline

Definition at line 276 of file OSParameters.h.

int returnTimeCategory ( std::string  category)
inline

Definition at line 292 of file OSParameters.h.

bool verifyTimeCategory ( std::string  category)
inline

Definition at line 304 of file OSParameters.h.

int returnLocationType ( std::string  type)
inline

Definition at line 316 of file OSParameters.h.

bool verifyLocationType ( std::string  type)
inline

Definition at line 324 of file OSParameters.h.

int returnTransportType ( std::string  type)
inline

Definition at line 338 of file OSParameters.h.

bool verifyTransportType ( std::string  type)
inline

Definition at line 348 of file OSParameters.h.

int returnServiceType ( std::string  type)
inline

Definition at line 364 of file OSParameters.h.

bool verifyServiceType ( std::string  type)
inline

Definition at line 376 of file OSParameters.h.

int returnGeneralResultStatus ( std::string  status)
inline

Definition at line 388 of file OSParameters.h.

bool verifyGeneralResultStatus ( std::string  status)
inline

Definition at line 396 of file OSParameters.h.

int returnSystemCurrentState ( std::string  status)
inline

Definition at line 410 of file OSParameters.h.

bool verifySystemCurrentState ( std::string  status)
inline

Definition at line 420 of file OSParameters.h.

int returnJobStatus ( std::string  status)
inline

Definition at line 434 of file OSParameters.h.

bool verifyJobStatus ( std::string  status)
inline

Definition at line 444 of file OSParameters.h.

int returnBasisStatus ( std::string  status)
inline

Definition at line 468 of file OSParameters.h.

bool verifyBasisStatus ( std::string  status)
inline

Definition at line 480 of file OSParameters.h.

std::string returnBasisStatusString ( ENUM_BASIS_STATUS  status)
inline

Definition at line 485 of file OSParameters.h.

int returnSolutionStatus ( std::string  status)
inline

Definition at line 512 of file OSParameters.h.

bool verifySolutionStatus ( std::string  status)
inline

Definition at line 527 of file OSParameters.h.

int returnSolutionSubstatusType ( std::string  type)
inline

Definition at line 539 of file OSParameters.h.

bool verifySolutionSubstatusType ( std::string  type)
inline

Definition at line 547 of file OSParameters.h.

int returnVarType ( char  vt)
inline

Definition at line 569 of file OSParameters.h.

bool verifyVarType ( char  vt)
inline

Definition at line 580 of file OSParameters.h.

int returnMatrixType ( std::string  type)
inline

Definition at line 618 of file OSParameters.h.

std::string returnMatrixTypeString ( ENUM_MATRIX_TYPE  type)
inline

Definition at line 637 of file OSParameters.h.

bool verifyMatrixType ( std::string  type)
inline

Definition at line 653 of file OSParameters.h.

ENUM_MATRIX_TYPE mergeMatrixType ( ENUM_MATRIX_TYPE  type1,
ENUM_MATRIX_TYPE  type2 
)
inline

A function to merge two matrix types so we can infer the type of a matrix recursively.

Definition at line 661 of file OSParameters.h.

std::string returnConReferenceValueTypeString ( ENUM_CONREFERENCE_VALUETYPE  valueType)
inline

Definition at line 711 of file OSParameters.h.

int returnConReferenceValueType ( std::string  valueType)
inline

Definition at line 720 of file OSParameters.h.

bool verifyConReferenceValueType ( std::string  valueType)
inline

Definition at line 729 of file OSParameters.h.

std::string returnMatrixSymmetryString ( ENUM_MATRIX_SYMMETRY  symmetry)
inline

Definition at line 746 of file OSParameters.h.

int returnMatrixSymmetry ( std::string  symmetry)
inline

Definition at line 758 of file OSParameters.h.

bool verifyMatrixSymmetry ( std::string  symmetry)
inline

Definition at line 770 of file OSParameters.h.

int returnMatrixConstructorType ( std::string  cType)
inline

Definition at line 794 of file OSParameters.h.

bool verifyMatrixConstructorType ( std::string  type)
inline

Definition at line 811 of file OSParameters.h.

int returnNlExprShape ( std::string  shape)
inline

Definition at line 839 of file OSParameters.h.

std::string returnExprShapeString ( ENUM_NL_EXPR_SHAPE  shape)
inline

Definition at line 849 of file OSParameters.h.

bool verifyNlExprShape ( std::string  shape)
inline

Definition at line 859 of file OSParameters.h.

int returnConeType ( std::string  type)
inline

Definition at line 889 of file OSParameters.h.

bool verifyConeType ( std::string  type)
inline

Definition at line 915 of file OSParameters.h.

Variable Documentation

const double OSDBL_MAX = std::numeric_limits<double>::max()

Definition at line 93 of file OSParameters.h.

const int OSINT_MAX = std::numeric_limits<int>::max()

Definition at line 94 of file OSParameters.h.