17 #include "OSParameters.h"
20 #include "OSParameters.h"
52 numberOfSubstatuses (0),
99 numberOfOtherResults( 0),
160 systemInformation(
""),
161 availableDiskSpace(NULL),
162 availableMemory(NULL),
163 availableCPUSpeed(NULL),
164 availableCPUNumber(NULL),
207 currentState(
"unknown"),
210 timeServiceStarted(
"1970-01-01T00:00:00-00:00"),
211 serviceUtilization(-1.0),
304 submitTime(
"1970-01-01T00:00:00-00:00"),
305 scheduledStartTime(
"1970-01-01T00:00:00-00:00"),
306 actualStartTime(
"1970-01-01T00:00:00-00:00"),
307 endTime(
"1970-01-01T00:00:00-00:00"),
308 timingInformation(NULL),
379 numberOfSubstatuses(0),
526 numberOfEnumerations(0),
572 numberOfOtherVariableResults( 0),
688 numberOfEnumerations(0),
733 numberOfOtherObjectiveResults( 0),
844 numberOfEnumerations(0),
890 numberOfOtherConstraintResults( 0),
931 numberOfMatrixVar(0),
959 numberOfOtherMatrixVariableResults(0),
980 for(
int i = 0; i < numberOfMatrixVar; i++)
999 numberOfMatrixVar(0),
1002 numberOfEnumerations(0),
1018 numberOfMatrixVar(0),
1020 numberOfEnumerations(0),
1077 if(numberOfOtherMatrixVariableResults > 0 && matrixVar != NULL)
1079 for(
int i = 0; i < numberOfMatrixVar; i++)
1081 delete matrixVar[i];
1082 matrixVar[i] = NULL;
1110 if(numberOfOtherMatrixVariableResults > 0 && matrixVar != NULL)
1112 for(
int i = 0; i < numberOfMatrixVar; i++)
1114 delete matrixVar[i];
1115 matrixVar[i] = NULL;
1124 numberOfOtherMatrixProgrammingResults(0),
1125 matrixVariables(NULL),
1126 matrixObjectives(NULL),
1127 matrixConstraints(NULL),
1191 numberOfOtherSolutionResults( 0),
1192 otherSolutionResult( NULL)
1220 targetObjectiveIdx( -1),
1221 targetObjectiveName(
""),
1222 weightedObjectives(false),
1228 matrixProgramming(NULL),
1229 otherSolutionResults( NULL)
1308 numberOfSolverOutputs(0),
1338 numberOfSolutions(0),
1339 numberOfVariables( -1),
1340 numberOfObjectives( -1),
1341 numberOfConstraints(-1),
1343 otherSolverOutput(NULL)
1353 std::ostringstream outStr;
1367 outStr <<
"Deleting Solution: " << i << endl;
1383 m_iVariableNumber( -1),
1384 m_iObjectiveNumber( -1),
1385 m_iConstraintNumber( -1),
1386 m_iNumberOfOtherVariableResults( -1),
1387 m_mdPrimalValues( NULL),
1388 m_mdDualValues( NULL)
1454 for (k = 0; k < numPrimalVals; k++)
1461 int numDualVals = this->
dualVals.size();
1462 for (k = 0; k < numDualVals; k++)
1475 if (
general == NULL)
return NULL;
1481 if (
general == NULL)
return "";
1488 if (
general == NULL)
return "";
1495 if (
general == NULL)
return -1;
1502 if (
general == NULL)
return "";
1505 throw ErrorClass(
"idx is outside of range in routine getGeneralSubstatusName()");
1512 if (
general == NULL)
return "";
1515 throw ErrorClass(
"idx is outside of range in routine getGeneralSubstatusDescription()");
1522 if (
general == NULL)
return "";
1528 if (
general == NULL)
return "";
1534 if (
general == NULL)
return "";
1540 if (
general == NULL)
return "";
1546 if (
general == NULL)
return "";
1552 if (
general == NULL)
return "";
1558 if (
general == NULL)
return "";
1564 if (
general == NULL)
return -1;
1571 if (
general == NULL)
return "";
1574 throw ErrorClass(
"idx is outside of range in routine getOtherGeneralResultName()");
1581 if (
general == NULL)
return "";
1584 throw ErrorClass(
"idx is outside of range in routine getOtherGeneralResultValue()");
1591 if (
general == NULL)
return "";
1594 throw ErrorClass(
"idx is outside of range in routine getOtherGeneralResultDescription()");
1601 if (
system == NULL)
return "";
1607 if (
system == NULL)
return "";
1614 if (
system == NULL)
return "";
1621 if (
system == NULL)
return -1.;
1628 if (
system == NULL)
return "";
1635 if (
system == NULL)
return "";
1642 if (
system == NULL)
return -1.;
1649 if (
system == NULL)
return "";
1656 if (
system == NULL)
return "";
1663 if (
system == NULL)
return -1.;
1670 if (
system == NULL)
return "";
1677 if (
system == NULL)
return -1;
1684 if (
system == NULL)
return -1;
1691 if (
system == NULL)
return "";
1694 throw ErrorClass(
"idx is outside of range in routine getOtherSystemResultName()");
1701 if (
system == NULL)
return "";
1704 throw ErrorClass(
"idx is outside of range in routine getOtherSystemResultValue()");
1711 if (
system == NULL)
return "";
1714 throw ErrorClass(
"idx is outside of range in routine getOtherSystemResultDescription()");
1721 if (
service == NULL)
return "";
1727 if (
service == NULL)
return -1;
1733 if (
service == NULL)
return -1;
1739 if (
service == NULL)
return "";
1745 if (
service == NULL)
return -1.;
1751 if (
service == NULL)
return -1;
1758 if (
service == NULL)
return "";
1761 throw ErrorClass(
"idx is outside of range in routine getOtherServiceResultName()");
1768 if (
service == NULL)
return "";
1771 throw ErrorClass(
"idx is outside of range in routine getOtherServiceResultValue()");
1778 if (
service == NULL)
return "";
1781 throw ErrorClass(
"idx is outside of range in routine getOtherServiceResultDescription()");
1788 if (
job == NULL)
return "";
1794 if (
job == NULL)
return "";
1800 if (
job == NULL)
return "";
1806 if (
job == NULL)
return "";
1812 if (
job == NULL)
return "";
1818 if (
job == NULL)
return -1;
1825 if (
job == NULL)
return "";
1828 throw ErrorClass(
"idx is outside of range in routine getTimingInfoUnit()");
1835 if (
job == NULL)
return "";
1838 throw ErrorClass(
"idx is outside of range in routine getTimingInfoType()");
1845 if (
job == NULL)
return "";
1848 throw ErrorClass(
"idx is outside of range in routine getTimingInfoCategory()");
1855 if (
job == NULL)
return "";
1858 throw ErrorClass(
"idx is outside of range in routine getTimingInfoDescription()");
1868 throw ErrorClass(
"idx is outside of range in routine getTimingInfoValue()");
1875 if (
job == NULL)
return "";
1882 if (
job == NULL)
return "";
1889 if (
job == NULL)
return -1.;
1896 if (
job == NULL)
return "";
1903 if (
job == NULL)
return "";
1910 if (
job == NULL)
return -1.;
1917 if (
job == NULL)
return "";
1924 if (
job == NULL)
return "";
1931 if (
job == NULL)
return -1.;
1938 if (
job == NULL)
return "";
1945 if (
job == NULL)
return -1;
1952 if (
job == NULL)
return -1;
1959 if (
job == NULL)
return "";
1962 throw ErrorClass(
"idx is outside of range in routine getOtherJobResultName()");
1969 if (
job == NULL)
return "";
1972 throw ErrorClass(
"idx is outside of range in routine getOtherJobResultValue()");
1979 if (
job == NULL)
return "";
1982 throw ErrorClass(
"idx is outside of range in routine getOtherJobResultDescription()");
1989 if (
job == NULL)
return 0.0;
1997 if (
job == NULL)
return -1;
2046 throw ErrorClass(
"solIdx is outside of range in routine getSolutionStatus()");
2056 throw ErrorClass(
"solIdx is outside of range in routine getSolutionStatusType()");
2067 throw ErrorClass(
"solIdx is outside of range in routine getSolutionStatusDescription()");
2078 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfSolutionSubstatuses()");
2089 throw ErrorClass(
"solIdx is outside of range in routine getSolutionSubstatusType()");
2093 throw ErrorClass(
"solution substatus index is outside of range in routine getSolutionSubstatusType()");
2102 throw ErrorClass(
"solIdx is outside of range in routine getSolutionSubstatusDescription()");
2115 throw ErrorClass(
"solIdx is outside of range in routine getSolutionTargetObjectiveIdx()");
2125 throw ErrorClass(
"solIdx is outside of range in routine getSolutionTargetObjectiveName()");
2135 throw ErrorClass(
"solIdx is outside of range in routine getSolutionWeightedObjectives()");
2142 if(
optimization == NULL)
return "there is no solution";
2154 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfPrimalVariableValues()");
2166 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfVarValues()");
2178 throw ErrorClass(
"solIdx is outside of range in routine getVarValueIdx()");
2183 throw ErrorClass(
"varIdx is outside of range in routine getVarValueIdx()");
2192 throw ErrorClass(
"solIdx is outside of range in routine getVarValueIdx()");
2197 throw ErrorClass(
"varIdx is outside of range in routine getVarValueIdx()");
2206 throw ErrorClass(
"solIdx is outside of range in routine getVarValue()");
2211 throw ErrorClass(
"varIdx is outside of range in routine getVarValue()");
2220 for(
int i = 0; i < iSolutions; i++)
2222 if( i != solIdx)
continue;
2230 for(
int j = 0;
j < numberOfVar;
j++)
2252 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfVarValuesString()");
2264 throw ErrorClass(
"solIdx is outside of range in routine getVarValueStringIdx()");
2269 throw ErrorClass(
"varIdx is outside of range in routine getVarValueStringIdx()");
2278 throw ErrorClass(
"solIdx is outside of range in routine getVarValueStringIdx()");
2283 throw ErrorClass(
"varIdx is outside of range in routine getVarValueStringIdx()");
2292 throw ErrorClass(
"solIdx is outside of range in routine getVarValueString()");
2297 throw ErrorClass(
"varIdx is outside of range in routine getVarValueString()");
2306 throw ErrorClass(
"solIdx is outside of range in routine getBasisStatusNumberOfEl()");
2330 throw ErrorClass(
"target object not implemented in getBasisStatusNumberOfEl");
2339 throw ErrorClass(
"solIdx is outside of range in routine getBasisStatusEl()");
2341 throw ErrorClass(
"solution never defined in routine getBasisStatusEl()");
2348 throw ErrorClass(
"variables result never defined in routine getBasisStatusEl()");
2350 throw ErrorClass(
"basis status never defined in routine getBasisStatusEl()");
2356 throw ErrorClass(
"objectives result never defined in routine getBasisStatusEl()");
2358 throw ErrorClass(
"basis status never defined in routine getBasisStatusEl()");
2364 throw ErrorClass(
"constraints result never defined in routine getBasisStatusEl()");
2366 throw ErrorClass(
"basis status never defined in routine getBasisStatusEl()");
2370 throw ErrorClass(
"target object not implemented in getBasisStatusEl");
2379 throw ErrorClass(
"solIdx is outside of range in routine getBasisInformationDense()");
2381 throw ErrorClass(
"solution never defined in routine getBasisInformationDense()");
2383 for (
int i=0; i<dim; i++)
2391 throw ErrorClass(
"variables result never defined in routine getBasisInformationDense()");
2393 throw ErrorClass(
"basis status never defined in routine getBasisInformationDense()");
2399 throw ErrorClass(
"objectives result never defined in routine getBasisInformationDense()");
2401 throw ErrorClass(
"basis status never defined in routine getBasisInformationDense()");
2407 throw ErrorClass(
"constraints result never defined in routine getBasisInformationDense()");
2409 throw ErrorClass(
"basis status never defined in routine getBasisInformationDense()");
2413 throw ErrorClass(
"target object not implemented in getBasisInformationDense");
2463 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfOtherVariableResults()");
2465 throw ErrorClass(
"solution was never defined in routine getNumberOfOtherVariableResults()");
2478 if (solIdx < 0 || solIdx >= iSolutions)
2479 throw ErrorClass(
"solIdx is outside of range in routine getAnOtherVariableResultNumberOfVar()");
2484 throw ErrorClass(
"other variables result index is outside of range in routine getAnOtherVariableResultNumberOfVar()");
2493 if (solIdx < 0 || solIdx >= iSolutions)
2494 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultName()");
2499 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultName()");
2509 if (solIdx < 0 || solIdx >= iSolutions)
2510 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultType()");
2515 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultType()");
2525 if (solIdx < 0 || solIdx >= iSolutions)
2526 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultValue()");
2531 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultValue()");
2541 if (solIdx < 0 || solIdx >= iSolutions)
2542 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultDescription()");
2547 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultDescription()");
2557 if (solIdx < 0 || solIdx >= iSolutions)
2558 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultNumberOfVar()");
2563 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultNumberOfVar()");
2573 if (solIdx < 0 || solIdx >= iSolutions)
2574 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultVarIdx()");
2579 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultVarIdx()");
2583 throw ErrorClass(
"varIdx is outside of range in routine getOtherVariableResultVarIdx()");
2592 if (solIdx < 0 || solIdx >= iSolutions)
2593 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultVar()");
2598 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultVar()");
2602 throw ErrorClass(
"varIdx is outside of range in routine getOtherVariableResultVar()");
2612 if (solIdx < 0 || solIdx >= iSolutions)
2613 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultNumberOfEnumerations()");
2618 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultNumberOfEnumerations()");
2628 if (solIdx < 0 || solIdx >= iSolutions)
2629 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultNumberOfEnumerations()");
2634 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultNumberOfEnumerations()");
2651 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultEnumerationValue()");
2653 throw ErrorClass(
"solution never defined in routine getOtherVariableResultEnumerationValue()");
2656 throw ErrorClass(
"variables result never defined in routine getOtherVariableResultEnumerationValue()");
2658 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultEnumerationValue()");
2660 throw ErrorClass(
"other variable array never defined in routine getOtherVariableResultEnumerationValue()");
2662 throw ErrorClass(
"other variable result never defined in routine getOtherVariableResultEnumerationValue()");
2664 throw ErrorClass(
"enumerations array never defined in routine getOtherVariableResultEnumerationValue()");
2666 throw ErrorClass(
"enumIdx is outside of range in routine getOtherVariableResultEnumerationValue()");
2668 throw ErrorClass(
"enumeration never defined in routine getOtherVariableResultEnumerationValue()");
2678 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultEnumerationDescription()");
2680 throw ErrorClass(
"solution never defined in routine getOtherVariableResultEnumerationDescription()");
2683 throw ErrorClass(
"variables result never defined in routine getOtherVariableResultEnumerationDescription()");
2685 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultEnumerationDescription()");
2687 throw ErrorClass(
"other variable array never defined in routine getOtherVariableResultEnumerationDescription()");
2689 throw ErrorClass(
"other variable result never defined in routine getOtherVariableResultEnumerationDescription()");
2691 throw ErrorClass(
"enumerations array never defined in routine getOtherVariableResultEnumerationDescription()");
2693 throw ErrorClass(
"enumIdx is outside of range in routine getOtherVariableResultEnumerationDescription()");
2695 throw ErrorClass(
"enumeration never defined in routine getOtherVariableResultEnumerationDescription()");
2705 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultEnumerationNumberOfEl()");
2707 throw ErrorClass(
"solution never defined in routine getOtherVariableResultEnumerationNumberOfEl()");
2710 throw ErrorClass(
"variables result never defined in routine getOtherVariableResultEnumerationNumberOfEl()");
2712 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultEnumerationNumberOfEl()");
2714 throw ErrorClass(
"other variable array never defined in routine getOtherVariableResultEnumerationNumberOfEl()");
2716 throw ErrorClass(
"other variable result never defined in routine getOtherVariableResultEnumerationNumberOfEl()");
2718 throw ErrorClass(
"enumerations array never defined in routine getOtherVariableResultEnumerationNumberOfEl()");
2720 throw ErrorClass(
"enumIdx is outside of range in routine getOtherVariableResultEnumerationNumberOfEl()");
2722 throw ErrorClass(
"enumeration never defined in routine getOtherVariableResultEnumerationNumberOfEl()");
2732 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultEnumerationEl()");
2734 throw ErrorClass(
"solution never defined in routine getOtherVariableResultEnumerationEl()");
2737 throw ErrorClass(
"variables result never defined in routine getOtherVariableResultEnumerationEl()");
2739 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultEnumerationEl()");
2741 throw ErrorClass(
"other variable array never defined in routine getOtherVariableResultEnumerationEl()");
2743 throw ErrorClass(
"other variable result never defined in routine getOtherVariableResultEnumerationEl()");
2745 throw ErrorClass(
"enumerations array never defined in routine getOtherVariableResultEnumerationEl()");
2747 throw ErrorClass(
"enumIdx is outside of range in routine getOtherVariableResultEnumerationEl()");
2749 throw ErrorClass(
"enumeration never defined in routine getOtherVariableResultEnumerationEl()");
2761 throw ErrorClass(
"solIdx is outside of range in routine getOtherVariableResultArrayDense()");
2763 throw ErrorClass(
"solution never defined in routine getOtherVariableResultArrayDense()");
2765 throw ErrorClass(
"variables result never defined in routine getOtherVariableResultArrayDense()");
2767 throw ErrorClass(
"otherIdx is outside of range in routine getOtherVariableResultArrayDense()");
2769 throw ErrorClass(
"other variable array never defined in routine getOtherVariableResultArrayDense()");
2771 throw ErrorClass(
"other variable result never defined in routine getOtherVariableResultArrayDense()");
2779 for (i=0; i<dim; i++)
2780 resultArray[i] =
"";
2784 if (j >= 0 && j < dim)
2787 throw ErrorClass(
"variable index out of range in routine getOtherVariableResultArrayDense()");
2797 for (j=0; j<dim; j++)
2798 resultArray[j] =
"";
2807 if (j >= 0 && j < dim)
2808 resultArray[
k] = val;
2810 throw ErrorClass(
"variable index out of range in routine getOtherVariableResultArrayDense()");
3012 if (solIdx < 0 || solIdx >= iSolutions)
3013 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfObjValues()");
3025 if (solIdx < 0 || solIdx >= iSolutions)
3026 throw ErrorClass(
"solIdx is outside of range in routine getObjValueIdx()");
3031 throw ErrorClass(
"objIdx is outside of range in routine getObjValueIdx()");
3040 if (solIdx < 0 || solIdx >= iSolutions)
3041 throw ErrorClass(
"solIdx is outside of range in routine getObjValueIdx()");
3046 throw ErrorClass(
"objIdx is outside of range in routine getObjValueIdx()");
3055 if (solIdx < 0 || solIdx >= iSolutions)
3056 throw ErrorClass(
"solIdx is outside of range in routine getObjValue()");
3061 throw ErrorClass(
"objIdx is outside of range in routine getObjValue()");
3068 throw ErrorClass(
"No optimization or solution object defined");
3070 for (
int i = 0; i < iSolutions; i++)
3072 if(i != solIdx)
continue;
3083 throw ErrorClass(
"There is no optimal solution");
3088 throw ErrorClass(
"There is no optimal solution");
3091 throw ErrorClass(
"There is no optimal solution");
3099 if (solIdx < 0 || solIdx >= iSolutions)
3100 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfOtherObjectiveResults()");
3102 throw ErrorClass(
"solution was never defined in routine getNumberOfOtherObjectiveResults()");
3114 if (solIdx < 0 || solIdx >= iSolutions)
3115 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultName()");
3120 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultName()");
3130 if (solIdx < 0 || solIdx >= iSolutions)
3131 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultType()");
3136 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultType()");
3146 if (solIdx < 0 || solIdx >= iSolutions)
3147 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultValue()");
3152 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultValue()");
3162 if (solIdx < 0 || solIdx >= iSolutions)
3163 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultDescription()");
3168 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultDescription()");
3178 if (solIdx < 0 || solIdx >= iSolutions)
3179 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultNumberOfObj()");
3184 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultNumberOfObj()");
3194 if (solIdx < 0 || solIdx >= iSolutions)
3195 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultObjIdx()");
3200 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultObjIdx()");
3204 throw ErrorClass(
"objIdx is outside of range in routine getOtherObjectiveResultObjIdx()");
3214 if (solIdx < 0 || solIdx >= iSolutions)
3215 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultObj()");
3220 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultObj()");
3224 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultObj()");
3234 if (solIdx < 0 || solIdx >= iSolutions)
3235 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultNumberOfEnumerations()");
3240 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultNumberOfEnumerations()");
3251 if (solIdx < 0 || solIdx >= iSolutions)
3252 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultArrayType()");
3257 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultArrayType()");
3274 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultEnumerationValue()");
3276 throw ErrorClass(
"solution never defined in routine getOtherObjectiveResultEnumerationValue()");
3279 throw ErrorClass(
"variables result never defined in routine getOtherObjectiveResultEnumerationValue()");
3281 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultEnumerationValue()");
3283 throw ErrorClass(
"other variable array never defined in routine getOtherObjectiveResultEnumerationValue()");
3285 throw ErrorClass(
"other variable result never defined in routine getOtherObjectiveResultEnumerationValue()");
3287 throw ErrorClass(
"enumerations array never defined in routine getOtherObjectiveResultEnumerationValue()");
3289 throw ErrorClass(
"enumIdx is outside of range in routine getOtherObjectiveResultEnumerationValue()");
3291 throw ErrorClass(
"enumeration never defined in routine getOtherObjectiveResultEnumerationValue()");
3302 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultEnumerationDescription()");
3304 throw ErrorClass(
"solution never defined in routine getOtherObjectiveResultEnumerationDescription()");
3307 throw ErrorClass(
"variables result never defined in routine getOtherObjectiveResultEnumerationDescription()");
3309 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultEnumerationDescription()");
3311 throw ErrorClass(
"other variable array never defined in routine getOtherObjectiveResultEnumerationDescription()");
3313 throw ErrorClass(
"other variable result never defined in routine getOtherObjectiveResultEnumerationDescription()");
3315 throw ErrorClass(
"enumerations array never defined in routine getOtherObjectiveResultEnumerationDescription()");
3317 throw ErrorClass(
"enumIdx is outside of range in routine getOtherObjectiveResultEnumerationDescription()");
3319 throw ErrorClass(
"enumeration never defined in routine getOtherObjectiveResultEnumerationDescription()");
3330 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3332 throw ErrorClass(
"solution never defined in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3335 throw ErrorClass(
"variables result never defined in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3337 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3339 throw ErrorClass(
"other variable array never defined in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3341 throw ErrorClass(
"other variable result never defined in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3343 throw ErrorClass(
"enumerations array never defined in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3345 throw ErrorClass(
"enumIdx is outside of range in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3347 throw ErrorClass(
"enumeration never defined in routine getOtherObjectiveResultEnumerationNumberOfEl()");
3358 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultEnumerationEl()");
3360 throw ErrorClass(
"solution never defined in routine getOtherObjectiveResultEnumerationEl()");
3363 throw ErrorClass(
"variables result never defined in routine getOtherObjectiveResultEnumerationEl()");
3365 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultEnumerationEl()");
3367 throw ErrorClass(
"other variable array never defined in routine getOtherObjectiveResultEnumerationEl()");
3369 throw ErrorClass(
"other variable result never defined in routine getOtherObjectiveResultEnumerationEl()");
3371 throw ErrorClass(
"enumerations array never defined in routine getOtherObjectiveResultEnumerationEl()");
3373 throw ErrorClass(
"enumIdx is outside of range in routine getOtherObjectiveResultEnumerationEl()");
3375 throw ErrorClass(
"enumeration never defined in routine getOtherObjectiveResultEnumerationEl()");
3387 throw ErrorClass(
"solIdx is outside of range in routine getOtherObjectiveResultArrayDense()");
3389 throw ErrorClass(
"solution never defined in routine getOtherObjectiveResultArrayDense()");
3391 throw ErrorClass(
"objectives result never defined in routine getOtherObjectiveResultArrayDense()");
3393 throw ErrorClass(
"otherIdx is outside of range in routine getOtherObjectiveResultArrayDense()");
3395 throw ErrorClass(
"other objective array never defined in routine getOtherObjectiveResultArrayDense()");
3397 throw ErrorClass(
"other objective result never defined in routine getOtherObjectiveResultArrayDense()");
3405 for (i=0; i<dim; i++)
3406 resultArray[i] =
"";
3410 if (j >= 0 && j < dim)
3413 throw ErrorClass(
"objective index out of range in routine getOtherObjectiveResultArrayDense()");
3423 for (j=0; j<dim; j++)
3424 resultArray[j] =
"";
3434 if (j >= 0 && j < dim)
3435 resultArray[
k] = val;
3437 throw ErrorClass(
"objective index out of range in routine getOtherObjectiveResultArrayDense()");
3451 if (solIdx < 0 || solIdx >= iSolutions)
3452 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfDualValues()");
3464 if (solIdx < 0 || solIdx >= iSolutions)
3465 throw ErrorClass(
"solIdx is outside of range in routine getDualValueIdx()");
3470 throw ErrorClass(
"conIdx is outside of range in routine getDualValueIdx()");
3479 if (solIdx < 0 || solIdx >= iSolutions)
3480 throw ErrorClass(
"solIdx is outside of range in routine getDualValueIdx()");
3485 throw ErrorClass(
"conIdx is outside of range in routine getDualValueIdx()");
3494 if (solIdx < 0 || solIdx >= iSolutions)
3495 throw ErrorClass(
"solIdx is outside of range in routine getDualValue()");
3500 throw ErrorClass(
"conIdx is outside of range in routine getDualValue()");
3509 for(
int i = 0; i < iSolutions; i++)
3511 if(i != solIdx)
continue;
3519 for(
int j = 0;
j < numberOfCon;
j++)
3541 if (solIdx < 0 || solIdx >= iSolutions)
3542 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfOtherConstraintResults()");
3544 throw ErrorClass(
"solution was never defined in routine getNumberOfOtherConstraintResults()");
3556 if (solIdx < 0 || solIdx >= iSolutions)
3557 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultName()");
3562 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultName()");
3572 if (solIdx < 0 || solIdx >= iSolutions)
3573 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultType()");
3578 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultType()");
3588 if (solIdx < 0 || solIdx >= iSolutions)
3589 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultValue()");
3594 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultValue()");
3604 if (solIdx < 0 || solIdx >= iSolutions)
3605 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultDescription()");
3610 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultDescription()");
3620 if (solIdx < 0 || solIdx >= iSolutions)
3621 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultNumberOfCon()");
3626 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultNumberOfCon()");
3636 if (solIdx < 0 || solIdx >= iSolutions)
3637 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultConIdx()");
3642 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultConIdx()");
3646 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultConIdx()");
3655 if (solIdx < 0 || solIdx >= iSolutions)
3656 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultCon()");
3661 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultCon()");
3665 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultCon()");
3675 if (solIdx < 0 || solIdx >= iSolutions)
3676 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultArrayType()");
3681 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultArrayType()");
3698 if (solIdx < 0 || solIdx >= iSolutions)
3699 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultNumberOfEnumerations()");
3704 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultNumberOfEnumerations()");
3715 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultEnumerationValue()");
3717 throw ErrorClass(
"solution never defined in routine getOtherConstraintResultEnumerationValue()");
3720 throw ErrorClass(
"constraints result never defined in routine getOtherConstraintResultEnumerationValue()");
3722 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultEnumerationValue()");
3724 throw ErrorClass(
"other constraint array never defined in routine getOtherConstraintResultEnumerationValue()");
3726 throw ErrorClass(
"other constraint result never defined in routine getOtherConstraintResultEnumerationValue()");
3728 throw ErrorClass(
"enumerations array never defined in routine getOtherConstraintResultEnumerationValue()");
3730 throw ErrorClass(
"enumIdx is outside of range in routine getOtherConstraintResultEnumerationValue()");
3732 throw ErrorClass(
"enumeration never defined in routine getOtherConstraintResultEnumerationValue()");
3743 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultEnumerationDescription()");
3745 throw ErrorClass(
"solution never defined in routine getOtherConstraintResultEnumerationDescription()");
3748 throw ErrorClass(
"constraints result never defined in routine getOtherConstraintResultEnumerationDescription()");
3750 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultEnumerationDescription()");
3752 throw ErrorClass(
"other constraint array never defined in routine getOtherConstraintResultEnumerationDescription()");
3754 throw ErrorClass(
"other constraint result never defined in routine getOtherConstraintResultEnumerationDescription()");
3756 throw ErrorClass(
"enumerations array never defined in routine getOtherConstraintResultEnumerationDescription()");
3758 throw ErrorClass(
"enumIdx is outside of range in routine getOtherConstraintResultEnumerationDescription()");
3760 throw ErrorClass(
"enumeration never defined in routine getOtherConstraintResultEnumerationDescription()");
3770 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultEnumerationNumberOfEl()");
3772 throw ErrorClass(
"solution never defined in routine getOtherConstraintResultEnumerationNumberOfEl()");
3775 throw ErrorClass(
"constraints result never defined in routine getOtherConstraintResultEnumerationNumberOfEl()");
3777 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultEnumerationNumberOfEl()");
3779 throw ErrorClass(
"other constraint array never defined in routine getOtherConstraintResultEnumerationNumberOfEl()");
3781 throw ErrorClass(
"other constraint result never defined in routine getOtherConstraintResultEnumerationNumberOfEl()");
3783 throw ErrorClass(
"enumerations array never defined in routine getOtherConstraintResultEnumerationNumberOfEl()");
3785 throw ErrorClass(
"enumIdx is outside of range in routine getOtherConstraintResultEnumerationNumberOfEl()");
3787 throw ErrorClass(
"enumeration never defined in routine getOtherConstraintResultEnumerationNumberOfEl()");
3797 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultEnumerationEl()");
3799 throw ErrorClass(
"solution never defined in routine getOtherConstraintResultEnumerationEl()");
3802 throw ErrorClass(
"constraints result never defined in routine getOtherConstraintResultEnumerationEl()");
3804 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultEnumerationEl()");
3806 throw ErrorClass(
"other constraint array never defined in routine getOtherConstraintResultEnumerationEl()");
3808 throw ErrorClass(
"other constraint result never defined in routine getOtherConstraintResultEnumerationEl()");
3810 throw ErrorClass(
"enumerations array never defined in routine getOtherConstraintResultEnumerationEl()");
3812 throw ErrorClass(
"enumIdx is outside of range in routine getOtherConstraintResultEnumerationEl()");
3814 throw ErrorClass(
"enumeration never defined in routine getOtherConstraintResultEnumerationEl()");
3825 throw ErrorClass(
"solIdx is outside of range in routine getOtherConstraintResultArrayDense()");
3827 throw ErrorClass(
"solution never defined in routine getOtherConstraintResultArrayDense()");
3829 throw ErrorClass(
"constraints result never defined in routine getOtherConstraintResultArrayDense()");
3831 throw ErrorClass(
"otherIdx is outside of range in routine getOtherConstraintResultArrayDense()");
3833 throw ErrorClass(
"other constraint array never defined in routine getOtherConstraintResultArrayDense()");
3835 throw ErrorClass(
"other constraint result never defined in routine getOtherConstraintResultArrayDense()");
3843 for (i=0; i<dim; i++)
3844 resultArray[i] =
"";
3849 if (j >= 0 && j < dim)
3852 throw ErrorClass(
"constraint index out of range in routine getOtherConstraintResultArrayDense()");
3862 for (j=0; j<dim; j++)
3863 resultArray[j] =
"";
3873 if (j >= 0 && j < dim)
3874 resultArray[
k] = val;
3876 throw ErrorClass(
"constraint index out of range in routine getOtherConstraintResultArrayDense()");
3891 if (solIdx < 0 || solIdx >= iSolutions)
3892 throw ErrorClass(
"solIdx is outside of range in routine getNumberOfOtherSolutionResults()");
3903 if (solIdx < 0 || solIdx >= iSolutions)
3904 throw ErrorClass(
"solIdx is outside of range in routine getOtherSolutionResultName()");
3908 throw ErrorClass(
"otherIdx is outside of range in routine getOtherSolutionResultName()");
3918 if (solIdx < 0 || solIdx >= iSolutions)
3919 throw ErrorClass(
"solIdx is outside of range in routine getOtherSolutionResultName()");
3923 throw ErrorClass(
"otherIdx is outside of range in routine getOtherSolutionResultValue()");
3933 if (solIdx < 0 || solIdx >= iSolutions)
3934 throw ErrorClass(
"solIdx is outside of range in routine getOtherSolutionResultCategory()");
3938 throw ErrorClass(
"otherIdx is outside of range in routine getOtherSolutionResultCategory()");
3948 if (solIdx < 0 || solIdx >= iSolutions)
3949 throw ErrorClass(
"solIdx is outside of range in routine getOtherSolutionResultDescription()");
3953 throw ErrorClass(
"otherIdx is outside of range in routine getOtherSolutionResultDescription()");
3963 if (solIdx < 0 || solIdx >= iSolutions)
3964 throw ErrorClass(
"solIdx is outside of range in routine getOtherSolutionResultNumberOfItems()");
3968 throw ErrorClass(
"otherIdx is outside of range in routine getOtherSolutionResultNumberOfItems()");
3978 if (solIdx < 0 || solIdx >= iSolutions)
3979 throw ErrorClass(
"solIdx is outside of range in routine getOtherSolutionResultItem()");
3984 throw ErrorClass(
"otherIdx is outside of range in routine getOtherSolutionResultItem()");
3987 throw ErrorClass(
"itemIdx is outside of range in routine getOtherSolutionResultItem()");
4002 throw ErrorClass(
"otherIdx is outside of range in routine getSolverOutputName()");
4012 throw ErrorClass(
"otherIdx is outside of range in routine getSolverOutputCategory()");
4022 throw ErrorClass(
"otherIdx is outside of range in routine getSolverOutputDescription()");
4032 throw ErrorClass(
"otherIdx is outside of range in routine getSolverOutputNumberOfItems()");
4042 throw ErrorClass(
"otherIdx is outside of range in routine getSolverOutputItem");
4045 throw ErrorClass(
"itemIdx is outside of range in routine getSolverOutputItem()");
4053 std::string fileCreator, std::string description, std::string licence)
4087 if (num < 0)
return false;
4096 for(
int i = 0; i < num; i++)
4173 if (num < 0)
return false;
4179 for(
int i = 0; i < num; i++)
4275 if (
system == NULL)
return false;
4318 if (num < 0)
return false;
4324 for(
int i = 0; i < num; i++)
4400 if (num < 0)
return false;
4409 for(
int i = 0; i < num; i++)
4493 throw ErrorClass(
"Invalid unit of time in addTimingInformation()");
4499 for (i = 0; i <
nt; i++)
4521 std::string unit, std::string description,
double value)
4544 if (numberOfTimes < 0)
return false;
4549 if (numberOfTimes > 0)
4554 for(
int i = 0; i < numberOfTimes; i++)
4562 if (numberOfTimes < 0)
return false;
4668 if (num < 0)
return false;
4674 for(
int i = 0; i < num; i++)
4714 if(variableNumber < 0)
4724 if(objectiveNumber < 0)
4733 if(constraintNumber < 0)
4742 if(number < 0)
return false;
4743 if(number == 0)
return true;
4747 for(
int i = 0; i < number; i++)
4758 if(nSols <= 0)
return false;
4760 solIdx < 0 || solIdx >= nSols)
return false;
4777 if(nSols <= 0)
return false;
4779 solIdx < 0 || solIdx >= nSols)
return false;
4795 if(nSols <= 0)
return false;
4797 solIdx < 0 || solIdx >= nSols)
return false;
4814 if (nSols <= 0)
return false;
4816 solIdx < 0 || solIdx >= nSols)
return false;
4825 if (num < 0)
return false;
4831 for(
int i = 0; i < num; i++)
4844 solIdx < 0 || solIdx >= nSols)
return false;
4848 if (substatusIdx < 0 || substatusIdx >= nSubs)
return false;
4861 solIdx < 0 || solIdx >= nSols)
return false;
4865 if (substatusIdx < 0 || substatusIdx >= nSubs)
return false;
4874 if(nSols <= 0)
return false;
4877 solIdx < 0 || solIdx >= nSols)
return false;
4882 if(objectiveIdx >= 0)
return false;
4891 if(nSols <= 0)
return false;
4894 solIdx < 0 || solIdx >= nSols)
return false;
4907 if (nSols <= 0)
return false;
4910 solIdx < 0 || solIdx >= nSols)
return false;
4921 if(nSols <= 0)
return false;
4924 solIdx < 0 || solIdx >= nSols)
return false;
4937 if (numberOfVar <= 0 || numberOfVar > nVar)
return false;
4939 if (nSols <= 0)
return false;
4941 solIdx < 0 || solIdx >= nSols)
return false;
4954 if (numberOfVar < 0)
return false;
4957 if (numberOfVar > 0)
4965 int numberOfVar = x.size();
4967 if(nSols <= 0)
return false;
4969 solIdx < 0 || solIdx >= nSols)
return false;
4992 for(
int i = 0; i < numberOfVar; i++)
5006 if(nSols <= 0)
return false;
5008 solIdx < 0 || solIdx >= nSols)
return false;
5031 for(
int i = 0; i < numberOfVar; i++)
5048 if (solIdx < 0 || solIdx >= nSols)
return false;
5056 if (numberOfVar < 0)
return false;
5059 if (numberOfVar > 0)
5062 for(
int i = 0; i < numberOfVar; i++)
5076 if (solIdx < 0 || solIdx >= nSols)
5097 if (number < 0 || number >= nVar)
5122 if (solIdx < 0 || solIdx >= nSols)
5135 if (numberOfVar < 0)
return false;
5138 if (numberOfVar > 0)
5141 for(
int i = 0; i < numberOfVar; i++)
5155 if (solIdx < 0 || solIdx >= nSols)
5176 if (number < 0 || number >= nVar)
5197 if (solIdx < 0 || solIdx >= nSols)
5210 for (
int j=0;
j<ni;
j++)
if (i[
j] < 0)
return false;
5219 for (
int j=0; j<ni; j++) if (i[j] >= 0)
return false;
5228 for (
int j=0;
j<ni;
j++)
if (i[
j] < 0)
return false;
5232 throw ErrorClass(
"target object not implemented in setBasisStatus");
5241 if (nSols <= 0)
return false;
5244 solIdx < 0 || solIdx >= nSols)
return false;
5249 if (num < 0)
return false;
5255 for(
int i = 0; i < num; i++)
5264 int iNumberOfVariables = numberOfVar;
5265 if(iNumberOfVariables <= -1)
return false;
5268 if(nSols <= 0)
return false;
5271 solIdx < 0 || solIdx >= nSols)
return false;
5282 for(
int i = 0; i < numberOfVar; i++)
5292 bool OSResult::setAnOtherVariableResultSparse(
int solIdx,
int otherIdx,
string name,
string value,
string description,
int *idx,
string *s,
int numberOfVar, std::string type, std::string varType, std::string enumType)
5294 int iNumberOfVariables = numberOfVar;
5295 if(iNumberOfVariables <= -1)
return false;
5298 if(nSols <= 0)
return false;
5301 solIdx < 0 || solIdx >= nSols)
return false;
5315 for(
int i = 0; i < numberOfVar; i++)
5328 int iNumberOfVariables = numberOfVar;
5329 if (iNumberOfVariables <= -1)
return false;
5332 if (nSols <= 0)
return false;
5335 solIdx < 0 || solIdx >= nSols)
return false;
5346 for(
int i = 0; i < numberOfVar; i++)
5359 int iNumberOfVariables = numberOfVar;
5360 if(iNumberOfVariables <= -1)
return false;
5363 if(nSols <= 0)
return false;
5366 solIdx < 0 || solIdx >= nSols)
return false;
5380 for(
int i = 0; i < numberOfVar; i++)
5392 int iNumberOfVariables = numberOfVar;
5393 if (iNumberOfVariables <= -1)
return false;
5395 if (nSols <= 0)
return false;
5398 solIdx < 0 || solIdx >= nSols)
return false;
5405 for(
int i = 0; i < numberOfVar; i++)
5414 int iNumberOfEnumerations = numberOfEnumerations;
5415 if (iNumberOfEnumerations <= -1)
return false;
5417 if (nSols <= 0)
return false;
5420 solIdx < 0 || solIdx >= nSols)
return false;
5427 for(
int i = 0; i < numberOfEnumerations; i++)
5436 int iNumberOfVariables = numberOfVar;
5437 if (iNumberOfVariables <= -1)
return false;
5440 if (nSols <= 0)
return false;
5443 solIdx < 0 || solIdx >= nSols)
return false;
5455 int iNumberOfVariables = numberOfVar;
5456 if (iNumberOfVariables <= -1)
return false;
5459 if (nSols <= 0)
return false;
5462 solIdx < 0 || solIdx >= nSols)
return false;
5474 int iNumberOfVariables = numberOfVar;
5475 if (iNumberOfVariables <= -1)
return false;
5478 if (nSols <= 0)
return false;
5481 solIdx < 0 || solIdx >= nSols)
return false;
5493 int iNumberOfVariables = numberOfVar;
5494 if (iNumberOfVariables <= -1)
return false;
5497 if (nSols <= 0)
return false;
5500 solIdx < 0 || solIdx >= nSols)
return false;
5512 int iNumberOfVariables = numberOfVar;
5513 if (iNumberOfVariables <= -1)
return false;
5516 if (nSols <= 0)
return false;
5519 solIdx < 0 || solIdx >= nSols)
return false;
5531 int iNumberOfVariables = numberOfVar;
5532 if (iNumberOfVariables <= -1)
return false;
5535 if (nSols <= 0)
return false;
5538 solIdx < 0 || solIdx >= nSols)
return false;
5550 int iNumberOfVariables = numberOfVar;
5551 if (iNumberOfVariables <= -1)
return false;
5554 if (nSols <= 0)
return false;
5557 solIdx < 0 || solIdx >= nSols)
return false;
5569 int iNumberOfVariables = numberOfVar;
5570 if (iNumberOfVariables <= -1)
return false;
5573 if (nSols <= 0)
return false;
5576 solIdx < 0 || solIdx >= nSols)
return false;
5588 if(nSols <= 0)
return false;
5591 solIdx < 0 || solIdx >= nSols)
return false;
5596 if (idx < 0)
return false;
5604 if(nSols <= 0)
return false;
5607 solIdx < 0 || solIdx >= nSols)
return false;
5619 if(nSols <= 0)
return false;
5622 solIdx < 0 || solIdx >= nSols)
return false;
5636 if (solIdx < 0 || solIdx >= nSols)
5647 if (otherIdx < 0 || otherIdx >= n_other)
return false;
5651 if (enumIdx < 0 || enumIdx >= n_enum)
return false;
5654 for (
int j=0;
j<ni;
j++)
if (i[
j] < 0)
return false;
5664 if (enumIdx < 0 || enumIdx >= n_enum)
return false;
5667 for (
int j=0; j<ni; j++) if (i[j] >= 0)
return false;
5677 if (enumIdx < 0 || enumIdx >= n_enum)
return false;
5680 for (
int j=0;
j<ni;
j++)
if (i[
j] < 0)
return false;
5685 throw ErrorClass(
"target object not implemented in setOtherOptionOrResultEnumeration");
5693 if (nSols <= 0)
return false;
5696 solIdx < 0 || solIdx >= nSols)
return false;
5705 if (num < 0)
return false;
5711 for(
int i = 0; i < num; i++)
5727 if (solIdx < 0 || solIdx >= nSols)
5740 if (numberOfObj < 0)
return false;
5743 if (numberOfObj > 0)
5747 for(
int i = 0; i < numberOfObj; i++)
5758 if (numberOfObj <= 0 || numberOfObj > nObj)
return false;
5760 if (nSols <= 0)
return false;
5762 solIdx < 0 || solIdx >= nSols)
return false;
5786 int numberOfObj = x.size();
5787 int iNumberOfObjectives = numberOfObj;
5788 if(iNumberOfObjectives < 0)
return false;
5789 if(iNumberOfObjectives == 0)
return true;
5790 if(x.size() == 0)
return false;
5793 if(nSols <= 0)
return false;
5796 solIdx < 0 || solIdx >= nSols)
return false;
5814 for(
int i = 0; i < iNumberOfObjectives; i++)
5827 int iNumberOfObjectives = numberOfObj;
5828 if (iNumberOfObjectives < 0)
return false;
5829 if (iNumberOfObjectives == 0)
return true;
5830 if (objectiveValues == NULL)
return false;
5833 if (nSols <= 0)
return false;
5836 solIdx < 0 || solIdx >= nSols)
return false;
5855 for(
int i = 0; i < iNumberOfObjectives; i++)
5875 if (solIdx < 0 || solIdx >= nSols)
5896 if (number < 0 || number >= nObj)
5914 int iNumberOfObjectives = numberOfObj;
5915 if (iNumberOfObjectives <= -1)
return false;
5918 if (nSols <= 0)
return false;
5921 solIdx < 0 || solIdx >= nSols)
return false;
5928 for(
int i = 0; i < numberOfObj; i++)
5939 int iNumberOfEnumerations = numberOfEnumerations;
5940 if (iNumberOfEnumerations <= -1)
return false;
5942 if (nSols <= 0)
return false;
5945 solIdx < 0 || solIdx >= nSols)
return false;
5952 for(
int i = 0; i < numberOfEnumerations; i++)
5961 int iNumberOfObjectives = numberOfObj;
5962 if (iNumberOfObjectives <= -1)
return false;
5965 if (nSols <= 0)
return false;
5968 solIdx < 0 || solIdx >= nSols)
return false;
5980 int iNumberOfObjectives = numberOfObj;
5981 if (iNumberOfObjectives <= -1)
return false;
5984 if (nSols <= 0)
return false;
5987 solIdx < 0 || solIdx >= nSols)
return false;
5999 int iNumberOfObjectives = numberOfObj;
6000 if (iNumberOfObjectives <= -1)
return false;
6003 if (nSols <= 0)
return false;
6006 solIdx < 0 || solIdx >= nSols)
return false;
6018 int iNumberOfObjectives = numberOfObj;
6019 if (iNumberOfObjectives <= -1)
return false;
6022 if (nSols <= 0)
return false;
6025 solIdx < 0 || solIdx >= nSols)
return false;
6037 int iNumberOfObjectives = numberOfObj;
6038 if (iNumberOfObjectives <= -1)
return false;
6041 if (nSols <= 0)
return false;
6044 solIdx < 0 || solIdx >= nSols)
return false;
6056 int iNumberOfObjectives = numberOfObj;
6057 if (iNumberOfObjectives <= -1)
return false;
6060 if (nSols <= 0)
return false;
6063 solIdx < 0 || solIdx >= nSols)
return false;
6075 int iNumberOfObjectives = numberOfObj;
6076 if (iNumberOfObjectives <= -1)
return false;
6079 if (nSols <= 0)
return false;
6082 solIdx < 0 || solIdx >= nSols)
return false;
6094 int iNumberOfObjectives = numberOfObj;
6095 if (iNumberOfObjectives <= -1)
return false;
6098 if (nSols <= 0)
return false;
6101 solIdx < 0 || solIdx >= nSols)
return false;
6113 if (nSols <= 0)
return false;
6116 solIdx < 0 || solIdx >= nSols)
return false;
6121 if (idx >= 0)
return false;
6129 if (nSols <= 0)
return false;
6132 solIdx < 0 || solIdx >= nSols)
return false;
6144 if (nSols <= 0)
return false;
6147 solIdx < 0 || solIdx >= nSols)
return false;
6159 if (nSols <= 0)
return false;
6162 solIdx < 0 || solIdx >= nSols)
return false;
6171 if (num < 0)
return false;
6177 for(
int i = 0; i < num; i++)
6193 if (solIdx < 0 || solIdx >= nSols)
6206 if (numberOfCon < 0)
return false;
6209 if (numberOfCon > 0)
6212 for(
int i = 0; i < numberOfCon; i++)
6223 if (numberOfCon <= 0 || numberOfCon > nCon)
return false;
6225 if (nSols <= 0)
return false;
6227 solIdx < 0 || solIdx >= nSols)
return false;
6250 int numberOfCon = x.size();
6251 int iNumberOfConstraints = numberOfCon;
6252 if(iNumberOfConstraints < 0)
return false;
6253 if(iNumberOfConstraints == 0)
return true;
6256 if(nSols <= 0)
return false;
6259 solIdx < 0 || solIdx >= nSols)
return false;
6282 for(
int i = 0; i < iNumberOfConstraints; i++)
6294 int iNumberOfConstraints = numberOfCon;
6295 if (iNumberOfConstraints < 0)
return false;
6296 if (iNumberOfConstraints == 0)
return true;
6299 if (nSols <= 0)
return false;
6302 solIdx < 0 || solIdx >= nSols)
return false;
6325 for(
int i = 0; i < iNumberOfConstraints; i++)
6338 int iNumberOfConstraints = numberOfCon;
6339 if (iNumberOfConstraints <= 0)
return false;
6342 if (nSols <= 0)
return false;
6345 solIdx < 0 || solIdx >= nSols)
return false;
6362 if (dualVarValues == NULL)
6369 for(
int i = 0; i < iNumberOfConstraints; i++)
6387 if (solIdx < 0 || solIdx >= nSols)
6408 if (number < 0 || number >= nCon)
6426 int iNumberOfConstraints = numberOfCon;
6427 if (iNumberOfConstraints <= -1)
return false;
6430 if (nSols <= 0)
return false;
6433 solIdx < 0 || solIdx >= nSols)
return false;
6440 for(
int i = 0; i < numberOfCon; i++)
6449 int iNumberOfEnumerations = numberOfEnumerations;
6450 if (iNumberOfEnumerations <= -1)
return false;
6452 if (nSols <= 0)
return false;
6455 solIdx < 0 || solIdx >= nSols)
return false;
6462 for(
int i = 0; i < numberOfEnumerations; i++)
6471 int iNumberOfConstraints = numberOfCon;
6472 if (iNumberOfConstraints <= -1)
return false;
6475 if (nSols <= 0)
return false;
6478 solIdx < 0 || solIdx >= nSols)
return false;
6490 int iNumberOfConstraints = numberOfCon;
6491 if (iNumberOfConstraints <= -1)
return false;
6494 if (nSols <= 0)
return false;
6497 solIdx < 0 || solIdx >= nSols)
return false;
6509 int iNumberOfConstraints = numberOfCon;
6510 if (iNumberOfConstraints <= -1)
return false;
6513 if (nSols <= 0)
return false;
6516 solIdx < 0 || solIdx >= nSols)
return false;
6528 int iNumberOfConstraints = numberOfCon;
6529 if (iNumberOfConstraints <= -1)
return false;
6532 if (nSols <= 0)
return false;
6535 solIdx < 0 || solIdx >= nSols)
return false;
6547 int iNumberOfConstraints = numberOfCon;
6548 if (iNumberOfConstraints <= -1)
return false;
6551 if (nSols <= 0)
return false;
6554 solIdx < 0 || solIdx >= nSols)
return false;
6566 int iNumberOfConstraints = numberOfCon;
6567 if (iNumberOfConstraints <= -1)
return false;
6570 if (nSols <= 0)
return false;
6573 solIdx < 0 || solIdx >= nSols)
return false;
6585 int iNumberOfConstraints = numberOfCon;
6586 if (iNumberOfConstraints <= -1)
return false;
6589 if (nSols <= 0)
return false;
6592 solIdx < 0 || solIdx >= nSols)
return false;
6604 int iNumberOfConstraints = numberOfCon;
6605 if (iNumberOfConstraints <= -1)
return false;
6608 if (nSols <= 0)
return false;
6611 solIdx < 0 || solIdx >= nSols)
return false;
6623 if (nSols <= 0)
return false;
6626 solIdx < 0 || solIdx >= nSols)
return false;
6631 if (idx < 0)
return false;
6639 if (nSols <= 0)
return false;
6642 solIdx < 0 || solIdx >= nSols)
return false;
6654 if (nSols <= 0)
return false;
6657 solIdx < 0 || solIdx >= nSols)
return false;
6667 int numberOfOtherMatrixVariableResults_)
6670 if (nSols <= 0)
return false;
6673 solIdx < 0 || solIdx >= nSols)
return false;
6684 = numberOfMatrixVar_;
6686 = numberOfOtherMatrixVariableResults_;
6694 for (
int i=0; i < numberOfMatrixVar_; i++)
6696 for (
int i=0; i < numberOfOtherMatrixVariableResults_; i++)
6708 if (nSols <= 0)
return false;
6711 solIdx < 0 || solIdx >= nSols)
return false;
6721 != NULL)
return false;
6738 int* rowOffset,
int rowOffsetSize,
int numberOfBlocks,
int blocksConstructorIdx)
6741 if (nSols <= 0)
return false;
6744 solIdx < 0 || solIdx >= nSols)
return false;
6766 for (
int i=0; i <= numberOfBlocks; i++)
6773 for (
int i=0; i <= numberOfBlocks; i++)
6781 for (
int i=0; i<numberOfBlocks; i++)
6796 if (nSols <= 0)
return false;
6799 solIdx < 0 || solIdx >= nSols)
return false;
6810 == NULL)
return false;
6820 throw ErrorClass(
"memory error in setMatrixVarBlockElements: block was previously allocated");
6827 ->m_mChildren[blkno])->blockRowIdx = blkRowIdx;
6831 ->m_mChildren[blkno])->blockColIdx = blkColIdx;
6839 ->m_mChildren[blkno])->inumberOfChildren = 1;
6843 ->m_mChildren[blkno])->m_mChildren =
new MatrixNode*[1];
6850 throw ErrorClass(
"in setMatrixVarBlockElements: element type not yet implemented:"
6855 ->m_mChildren[blkno]->m_mChildren[0])->numberOfValues = nz;
6874 ->m_mChildren[blkno]->m_mChildren[0])->start =
new IntVector(startSize);
6876 for (
int i=0; i<startSize; i++)
6879 ->m_mChildren[blkno]->m_mChildren[0])->start->el[i] = start[i];
6885 ->m_mChildren[blkno]->m_mChildren[0])->index =
new IntVector(nz);
6887 for (
int i=0; i<nz; i++)
6890 ->m_mChildren[blkno]->m_mChildren[0])->index->el[i] = index[i];
6900 ->m_mChildren[blkno]->m_mChildren[0])->value->numberOfEl = nz;
6904 ->m_mChildren[blkno]->m_mChildren[0])->value->el =
new double[nz];
6906 for (
int i=0; i<nz; i++)
6909 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->value)->el[i]
6923 std::string description, std::string value, std::string type,
6924 std::string solver, std::string category,
6925 int numberOfMatrixVar, std::string matrixType,
6926 int numberOfEnumerations, std::string enumType)
6929 if (nSols <= 0)
return false;
6932 solIdx < 0 || solIdx >= nSols)
return false;
6951 = numberOfMatrixVar;
6955 = numberOfEnumerations;
6958 if (numberOfMatrixVar > 0)
6962 for (
int i=0; i<numberOfMatrixVar; i++)
6967 if (numberOfEnumerations > 0)
6971 for (
int i=0; i<numberOfEnumerations; i++)
6984 if (nSols <= 0)
return false;
6987 solIdx < 0 || solIdx >= nSols)
return false;
6998 == NULL)
return false;
6999 if (matrixVarIdx < 0 ||
7003 ->
matrixVar[matrixVarIdx] != NULL)
return false;
7022 int* colOffset,
int colOffsetSize,
int* rowOffset,
int rowOffsetSize,
7023 int numberOfBlocks,
int blocksConstructorIdx)
7026 if (nSols <= 0)
return false;
7029 solIdx < 0 || solIdx >= nSols)
return false;
7055 for (
int i=0; i <= numberOfBlocks; i++)
7062 for (
int i=0; i <= numberOfBlocks; i++)
7070 for (
int i=0; i<numberOfBlocks; i++)
7078 int blkno,
int blkRowIdx,
int blkColIdx,
int nz,
int* start,
int* index,
7085 if (nSols <= 0)
return false;
7088 solIdx < 0 || solIdx >= nSols)
return false;
7104 ->
matrixVar[matrixVarIdx] == NULL)
return false;
7115 throw ErrorClass(
"memory error in setMatrixVarBlockElements: block was previously allocated");
7123 ->
m_mChildren[0])->m_mChildren[blkno])->blockRowIdx = blkRowIdx;
7127 ->
m_mChildren[0])->m_mChildren[blkno])->blockColIdx = blkColIdx;
7135 ->
m_mChildren[0])->m_mChildren[blkno])->inumberOfChildren = 1;
7146 throw ErrorClass(
"in setMatrixVarBlockElements: element type not yet implemented:"
7151 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->numberOfValues = nz;
7170 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->start
7173 for (
int i=0; i<startSize; i++)
7176 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->start->el[i] = start[i];
7184 for (
int i=0; i<nz; i++)
7187 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->index->el[i] = index[i];
7193 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->value
7198 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->value->numberOfEl = nz;
7202 ->
m_mChildren[0])->m_mChildren[blkno]->m_mChildren[0])->value->el =
new double[nz];
7204 for (
int i=0; i<nz; i++)
7223 if (nSols <= 0)
return false;
7226 solIdx < 0 || solIdx >= nSols)
return false;
7235 if (num < 0)
return false;
7241 for(
int i = 0; i < num; i++)
7252 if (nSols <= 0)
return false;
7255 solIdx < 0 || solIdx >= nSols)
return false;
7266 if (nSols <= 0)
return false;
7269 solIdx < 0 || solIdx >= nSols)
return false;
7280 if (nSols <= 0)
return false;
7283 solIdx < 0 || solIdx >= nSols)
return false;
7295 if (nSols <= 0)
return false;
7298 solIdx < 0 || solIdx >= nSols)
return false;
7310 if (nSols <= 0)
return false;
7313 solIdx < 0 || solIdx >= nSols)
return false;
7318 if (numberOfItems < 0)
return false;
7321 if (numberOfItems > 0)
7329 if (nSols <= 0)
return false;
7332 solIdx < 0 || solIdx >= nSols)
return false;
7345 std::string category, std::string description,
int numberOfItems, std::string* item)
7347 if (name ==
"")
return false;
7348 int inumberOfItems = numberOfItems;
7349 if(inumberOfItems <= -1)
return false;
7351 if(nSols <= 0)
return false;
7354 solIdx < 0 || solIdx >= nSols)
return false;
7366 for (i = 0; i <
nres; i++)
7384 temp[
nres]->
item =
new std::string[numberOfItems];
7385 for (i=0; i<numberOfItems; i++)
7386 temp[nres]->item[i] = item[i];
7413 if (num < 0)
return false;
7419 for(
int i = 0; i < num; i++)
7460 if (numberOfItems < 0)
return false;
7463 if (numberOfItems > 0)
7533 std::ostringstream outStr;
7563 if (this->message != that->
message ||
7567 this->jobID != that->
jobID ||
7574 outStr <<
"Differences in GeneralResult" << endl;
7575 outStr <<
"message: " << this->message <<
" vs. " << that->
message << endl;
7576 outStr <<
"serviceURI: " << this->serviceURI <<
" vs. " << that->
serviceURI << endl;
7577 outStr <<
"serviceName: " << this->serviceName <<
" vs. " << that->
serviceName << endl;
7578 outStr <<
"instanceName: " << this->instanceName <<
" vs. " << that->
instanceName << endl;
7579 outStr <<
"jobID: " << this->jobID <<
" vs. " << that->
jobID << endl;
7599 std::ostringstream outStr;
7631 this->type != that->
type ||
7637 outStr <<
"Differences in GeneralStatus" << endl;
7639 outStr <<
"type: " << this->type <<
" vs. " << that->
type << endl;
7640 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
7656 std::ostringstream outStr;
7686 if (this->name != that->
name ||
7692 outStr <<
"Differences in GeneralSubstatus" << endl;
7693 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
7694 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
7707 std::ostringstream outStr;
7742 outStr <<
"Differences in OtherResults" << endl;
7761 std::ostringstream outStr;
7791 if (this->name != that->
name ||
7792 this->value != that->
value ||
7798 outStr <<
"Differences in OtherResult" << endl;
7799 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
7800 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
7801 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
7814 std::ostringstream outStr;
7849 outStr <<
"Differences in SystemResult" << endl;
7876 std::ostringstream outStr;
7915 outStr <<
"Differences in ServiceResult" << endl;
7936 std::ostringstream outStr;
7970 this->endTime != that->
endTime )
7975 outStr <<
"Differences in JobResult" << endl;
7976 outStr <<
"status: " << this->
status <<
" vs. " << that->
status << endl;
7980 outStr <<
"endTime: " << this->
endTime <<
" vs. " << that->
endTime << endl;
8007 std::ostringstream outStr;
8042 outStr <<
"Differences in TimingInformation" << endl;
8061 std::ostringstream outStr;
8091 if (this->type != that->
type ||
8092 this->category != that->
category ||
8098 outStr <<
"Differences in TimeMeasurement" << endl;
8099 outStr <<
"type: " << this->type <<
" vs. " << that->
type << endl;
8100 outStr <<
"category: " << this->
category <<
" vs. " << that->
category << endl;
8101 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
8114 std::ostringstream outStr;
8152 outStr <<
"Differences in OptimizationResult" << endl;
8177 std::ostringstream outStr;
8212 outStr <<
"Differences in OptimizationSolution" << endl;
8224 outStr <<
"Differences in OptimizationSolution" << endl;
8236 outStr <<
"Differences in OptimizationSolution" << endl;
8243 if (this->message != that->
message)
8248 outStr <<
"Differences in OptimizationSolution" << endl;
8249 outStr <<
"message: \'" << this->message <<
"\' vs. \'" << that->
message <<
"\'" << endl;
8274 std::ostringstream outStr;
8304 if (this->type != that->
type ||
8310 outStr <<
"Differences in OptimizationSolutionStatus" << endl;
8311 outStr <<
"type: " << this->type <<
" vs. " << that->
type << endl;
8312 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
8323 outStr <<
"Differences in OptimizationSolutionStatus" << endl;
8343 std::ostringstream outStr;
8373 if (this->type != that->
type ||
8379 outStr <<
"Differences in OptimizationSolutionSubstatus" << endl;
8380 outStr <<
"type: " << this->type <<
" vs. " << that->
type << endl;
8381 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
8395 std::ostringstream outStr;
8430 outStr <<
"Differences in VariableSolution" << endl;
8456 std::ostringstream outStr;
8491 outStr <<
"Differences in VariableValues" << endl;
8492 outStr <<
"numberOfVar: " << this->numberOfVar <<
" vs. " << that->
numberOfVar << endl;
8511 std::ostringstream outStr;
8541 if (this->idx != that->
idx || this->name != that->
name ||
8547 outStr <<
"Differences in VarValue" << endl;
8548 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
8549 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
8550 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
8564 std::ostringstream outStr;
8599 outStr <<
"Differences in VariableValuesString" << endl;
8600 outStr <<
"numberOfVar: " << this->numberOfVar <<
" vs. " << that->
numberOfVar << endl;
8619 std::ostringstream outStr;
8649 if (this->idx != that->
idx || this->name != that->
name ||
8650 this->value != that->
value )
8655 outStr <<
"Differences in VarValueString" << endl;
8656 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
8657 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
8658 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
8672 std::ostringstream outStr;
8702 if (this->name != that->
name ||
8703 this->value != that->
value ||
8709 outStr <<
"Differences in OtherVariableResult" << endl;
8710 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
8711 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
8712 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
8723 outStr <<
"numberOfVar: " << this->numberOfVar <<
" vs. " << that->
numberOfVar << endl;
8739 outStr <<
"Differences in OtherVariableResult" << endl;
8759 std::ostringstream outStr;
8789 if (this->idx != that->
idx || this->name != that->
name ||
8790 this->value != that->
value )
8795 outStr <<
"Differences in OtherVarResult" << endl;
8796 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
8797 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
8798 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
8812 std::ostringstream outStr;
8847 outStr <<
"Differences in ObjectiveSolution" << endl;
8872 std::ostringstream outStr;
8907 outStr <<
"Differences in ObjectiveValues" << endl;
8927 std::ostringstream outStr;
8957 if (this->idx != that->
idx || this->name != that->
name ||
8958 this->value != that->
value )
8963 outStr <<
"Differences in ObjValue" << endl;
8964 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
8965 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
8966 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
8980 std::ostringstream outStr;
9010 if (this->value != that->
value ||
9011 this->name != that->
name ||
9017 outStr <<
"Differences in OtherObjectiveResult" << endl;
9018 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
9019 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
9020 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
9031 outStr <<
"Differences in OtherObjectiveResult" << endl;
9048 outStr <<
"Differences in OtherObjectiveResult" << endl;
9068 std::ostringstream outStr;
9098 if (this->idx != that->
idx || this->name != that->
name ||
9099 this->value != that->
value )
9104 outStr <<
"Differences in OtherObjResult" << endl;
9105 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
9106 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
9107 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
9121 std::ostringstream outStr;
9156 outStr <<
"Differences in ConstraintSolution" << endl;
9181 std::ostringstream outStr;
9216 outStr <<
"Differences in DualVariableValues" << endl;
9235 std::ostringstream outStr;
9265 if (this->idx != that->
idx || this->name != that->
name ||
9271 outStr <<
"Differences in DualVarValue" << endl;
9272 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
9273 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
9274 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
9287 std::ostringstream outStr;
9317 if (this->name != that->
name ||
9318 this->value != that->
value ||
9324 outStr <<
"Differences in OtherConstraintResult" << endl;
9325 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
9326 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
9327 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
9338 outStr <<
"Differences in OtherConstraintResult" << endl;
9355 outStr <<
"Differences in OtherConstraintResult" << endl;
9375 std::ostringstream outStr;
9405 if (this->idx != that->
idx || this->name != that->
name ||
9406 this->value != that->
value )
9411 outStr <<
"Differences in OtherConResult" << endl;
9412 outStr <<
"idx: " << this->idx <<
" vs. " << that->
idx << endl;
9413 outStr <<
"name: -" << this->name <<
"- vs. -" << that->
name <<
"-" << endl;
9414 outStr <<
"value: " << this->value <<
" vs. " << that->
value << endl;
9428 std::ostringstream outStr;
9463 outStr <<
"Differences in OtherSolutionResults" << endl;
9482 std::ostringstream outStr;
9513 if (this->name != that->
name ||
9514 this->category != that->
category ||
9520 outStr <<
"Differences in OtherSolutionResult" << endl;
9521 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
9522 outStr <<
"category: " << this->
category <<
" vs. " << that->
category << endl;
9523 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
9534 outStr <<
"Differences in OtherSolutionResult" << endl;
9543 if (this->
item[i] != that->
item[i])
9548 outStr <<
"Differences in OtherSolutionResult" << endl;
9549 outStr <<
"item: " << this->
item[i] <<
" vs. " << that->
item[i] << endl;
9563 std::ostringstream outStr;
9598 outStr <<
"Differences in OtherSolverOutput" << endl;
9618 std::ostringstream outStr;
9648 if (this->name != that->
name ||
9649 this->category != that->
category ||
9655 outStr <<
"Differences in SolverOutput" << endl;
9656 outStr <<
"name: " << this->name <<
" vs. " << that->
name << endl;
9657 outStr <<
"category: " << this->
category <<
" vs. " << that->
category << endl;
9658 outStr <<
"description: " << this->description <<
" vs. " << that->
description << endl;
9669 outStr <<
"Differences in SolverOutput" << endl;
9677 if (this->
item[i] != that->
item[i])
9682 outStr <<
"Differences in SolverOutput" << endl;
9683 outStr <<
"item: " << this->
item[i] <<
" vs. " << that->
item[i] << endl;
9742 if (
OSRand() <= density) this->message =
"random string";
9743 if (
OSRand() <= density) this->serviceURI =
"random string";
9744 if (
OSRand() <= density) this->serviceName =
"random string";
9745 if (
OSRand() <= density) this->instanceName =
"random string";
9746 if (
OSRand() <= density) this->jobID =
"random string";
9774 if (
OSRand() <= density) type =
"normal";
9775 else type =
"error";
9776 if (
OSRand() <= density) description =
"random string";
9783 for (
int i = 0; i <
n; i++)
9797 name =
"substatus name";
9798 if (
OSRand() <= density) description =
"random string";
9817 for (
int i = 0; i <
n; i++)
9832 name =
"other result";
9833 value =
"random string";
9834 description =
"random string";
9885 if (conformant) temp = 0.5*temp;
9924 if (conformant) temp = 0.5*temp;
9926 if (temp <= 0.25) this->
status =
"finished";
9927 else if (temp <= 0.50) this->
status =
"running";
9928 else if (temp <= 0.75) this->
status =
"";
9929 else this->
status =
"walking";
9935 if (
OSRand() <= density)
endTime =
"1970-01-01T00:00:00-00:00";
9990 for (
int i = 0; i <
n; i++)
10000 bool Time::setRandom(
double density,
bool conformant)
10005 if (
OSRand() <= density)
10006 this->description =
"random string";
10008 if (
OSRand() <= density)
10011 if (conformant) temp = 0.5*temp;
10013 if (temp <= 0.25) this->type =
"elapsedTime";
10014 else if (temp <= 0.50) this->type =
"cpuTime";
10015 else if (temp <= 0.75) this->type =
"";
10016 else this->type =
"dinnerTime";
10019 if (
OSRand() <= density)
10022 if (conformant) temp = 0.5*temp;
10024 if (temp <= 0.25) this->
category =
"total";
10025 else if (temp <= 0.50) this->
category =
"input";
10026 else if (temp <= 0.75) this->
category =
"";
10030 if (
OSRand() <= density)
10033 if (conformant) temp = 0.5*temp;
10035 if (temp <= 0.25) this->
unit =
"second";
10036 else if (temp <= 0.50) this->
unit =
"tick";
10037 else if (temp <= 0.75) this->
unit =
"";
10038 else this->
unit =
"flea";
10041 if (
OSRand() <= density)
10043 if (
OSRand() <= 0.5) this->value = 3.14156;
10044 else this->value = 2.71828;
10056 if (
OSRand() <= density)
10057 this->description =
"random string";
10059 if (
OSRand() <= density)
10062 if (conformant) temp = 0.5*temp;
10064 if (temp <= 0.25) this->type =
"elapsedTime";
10065 else if (temp <= 0.50) this->type =
"cpuTime";
10066 else if (temp <= 0.75) this->type =
"";
10067 else this->type =
"dinnerTime";
10070 if (
OSRand() <= density)
10073 if (conformant) temp = 0.5*temp;
10075 if (temp <= 0.25) this->
category =
"total";
10076 else if (temp <= 0.50) this->
category =
"input";
10077 else if (temp <= 0.75) this->
category =
"";
10104 for (
int i = 0; i <
n; i++)
10118 if (
OSRand() <= density)
10127 if (
OSRand() <= density) message =
"random string";
10132 if (
OSRand() <= density)
10138 if (
OSRand() <= density)
10144 if (
OSRand() <= density)
10150 if (
OSRand() <= density)
10166 if (conformant) temp = 0.5*temp;
10168 if (temp <= 0.25) this->type =
"optimal";
10169 else if (temp <= 0.50) this->type =
"unsure";
10170 else if (temp <= 0.75) this->type =
"";
10171 else this->type =
"sure";
10173 if (
OSRand() <= density) this->description =
"random string";
10175 if (
OSRand() <= density)
10186 for (
int i = 0; i <
n; i++)
10203 if (conformant) temp = 0.5*temp;
10205 if (temp <= 0.25) this->type =
"stoppedByLimit";
10206 else if (temp <= 0.50) this->type =
"stoppedByBounds";
10207 else if (temp <= 0.75) this->type =
"";
10208 else this->type =
"stoppedByPolice";
10210 if (
OSRand() <= density) this->description =
"random string";
10221 if (
OSRand() <= density)
10232 for (
int i = 0; i <
n; i++)
10239 if (
OSRand() <= density)
10245 if (
OSRand() <= density)
10251 if (
OSRand() <= density)
10267 this->numberOfVar = (
int)(1+4*
OSRand());
10274 for (
int i = 0; i <
n; i++)
10290 if (
OSRand() <= 0.5) this->value = 3.14156;
10291 else this->value = 2.71828;
10293 if (
OSRand() <= density) this->name =
"random string";
10306 this->numberOfVar = (
int)(1+4*
OSRand());
10313 for (
int i = 0; i <
n; i++)
10329 if (
OSRand() <= 0.5) this->value =
"random string";
10330 else this->value =
"";
10332 if (
OSRand() <= density) this->name =
"random string";
10343 this->name =
"random string";
10344 if (
OSRand() <= density) this->value =
"random string";
10345 if (
OSRand() <= density) this->description =
"random string";
10347 if (
OSRand() <= density)
10353 this->numberOfVar = (
int)(1+4*
OSRand());
10360 for (
int i = 0; i <
n; i++)
10377 for (
int i = 0; i <
n; i++)
10395 if (
OSRand() <= 0.5) this->value =
"random string";
10396 else this->value =
"";
10398 if (
OSRand() <= density) this->name =
"random string";
10409 if (
OSRand() <= density)
10420 for (
int i = 0; i <
n; i++)
10429 if (
OSRand() <= density)
10435 if (
OSRand() <= density)
10459 for (
int i = 0; i <
n; i++)
10474 if (
OSRand() <= 0.5) this->idx = -1;
10475 else this->idx = -2;
10477 if (
OSRand() <= 0.5) this->value = 3.14156;
10478 else this->value = 2.71828;
10480 if (
OSRand() <= density) this->name =
"random string";
10491 this->name =
"random string";
10492 if (
OSRand() <= density) this->value =
"random string";
10493 if (
OSRand() <= density) this->description =
"random string";
10495 if (
OSRand() <= density)
10508 for (
int i = 0; i <
n; i++)
10525 for (
int i = 0; i <
n; i++)
10542 if (
OSRand() <= 0.5) this->idx = -1;
10543 else this->idx = -2;
10545 if (
OSRand() <= 0.5) this->value =
"random string";
10546 else this->value =
"";
10548 if (
OSRand() <= density) this->name =
"random string";
10559 if (
OSRand() <= density)
10570 for (
int i = 0; i <
n; i++)
10577 if (
OSRand() <= density)
10583 if (
OSRand() <= density)
10607 for (
int i = 0; i <
n; i++)
10622 if (
OSRand() <= 0.5) this->value = 3.14156;
10623 else this->value = 2.71828;
10625 if (
OSRand() <= density) this->name =
"random string";
10635 this->name =
"random string";
10636 if (
OSRand() <= density) this->value =
"random string";
10637 if (
OSRand() <= density) this->description =
"random string";
10639 if (
OSRand() <= density)
10652 for (
int i = 0; i <
n; i++)
10669 for (
int i = 0; i <
n; i++)
10688 if (
OSRand() <= 0.5) this->value =
"random string";
10689 else this->value =
"";
10691 if (
OSRand() <= density) this->name =
"random string";
10711 for (
int i = 0; i <
n; i++)
10725 name =
"random string";
10729 if (
OSRand() <= density) description =
"random string";
10736 if (n > 0 ||
OSRand() <= density)
10738 item =
new std::string[
n];
10740 for (
int i = 0; i <
n; i++)
10741 item[i] =
"random string";
10762 for (
int i = 0; i <
n; i++)
10777 name =
"random string";
10781 if (
OSRand() <= density) description =
"random string";
10788 if (n > 0 ||
OSRand() <= density)
10790 item =
new std::string[
n];
10792 for (
int i = 0; i <
n; i++)
10793 item[i] =
"random string";
The VariableValuesString Class.
bool IsEqual(OtherVarResult *that)
A function to check for the equality of two objects.
bool setUsedDiskSpaceUnit(std::string unit)
Set the unit in which used disk space is measured.
OptimizationSolutionStatus * status
status is a pointer to an OptimizationSolutionStatus object associated with this optimization solutio...
std::string unit
the unit in which CPU speed is measured
OtherSolutionResult ** other
a pointer to the array of <other> children
int getObjectiveNumber()
Get objective number.
std::string getVarValueStringName(int solIdx, int varIdx)
bool verifySolutionSubstatusType(std::string type)
VariableValues()
Default constructor.
bool IsEqual(SolverOutput *that)
A function to check for the equality of two objects.
std::string getAvailableCPUSpeedUnit()
~OSResult()
Class destructor.
bool setAvailableMemoryUnit(std::string unit)
Set the unit in which available memory is measured.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string getOtherObjectiveResultEnumerationValue(int solIdx, int otherIdx, int enumIdx)
Get the value of an enum associated with an <other> result for some solution.
std::string getGeneralMessage()
Get the general message.
GeneralStatus * getGeneralStatus()
Get the general status.
double getTimingInfoValue(int idx)
bool setOtherJobResultDescription(int idx, std::string description)
Set the job otherResult description.
bool IsEqual(ServiceResult *that)
A function to check for the equality of two objects.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
int m_iVariableNumber
m_iVariableNumber holds the variable number.
int getNumberOfOtherObjectiveResults(int solIdx)
std::string description
the description of the other result
bool weightedObjectives
a marker to track whether the objectives are weighted
bool IsEqual(VarValueString *that)
A function to check for the equality of two objects.
int getOtherConstraintResultEnumerationEl(int solIdx, int otherIdx, int enumIdx, int j)
Get one index of an enum associated with an <other> result for some solution.
bool setNumberOfObjValues(int solIdx, int numberOfObj)
Set the number of objectives to be given a value.
std::string description
Further description on the timer used.
std::string getDualValueName(int solIdx, int objIdx)
OtherConstraintResult ** other
a pointer to an array of other pointer objects for constraint functions
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setOtherObjectiveResultName(int solIdx, int otherIdx, std::string name)
Set the name of another (non-standard/solver specific) objective-related result, for the [i]th soluti...
OtherSolverOutput()
Default constructor.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string getTimingInfoDescription(int idx)
bool setGeneralStatusDescription(std::string description)
Set the general status description.
double getDualValue(int solIdx, int conIdx)
bool verifyCPUSpeedUnit(std::string unit)
int getOtherObjectiveResultObjIdx(int solIdx, int otherIdx, int objIdx)
The GeneralSubstatus Class.
std::vector< IndexValuePair * > primalVals
bool setDualValue(int solIdx, int number, int idx, std::string name, double val)
Set a dual value.
bool setSolutionStatus(int solIdx, std::string type, std::string description)
Set the [i]th optimization solution status, where i equals the given solution index.
std::string name
optional name
double getUsedDiskSpaceValue()
bool setJobEndTime(std::string endTime)
Set the time when the job finished.
std::string description
additional description about the storage
int numberOfVar
the number of variable values that are in the solution
std::string value
value is a value associated with the constraint indexed by idx, for example value might be the value ...
int getNumberOfOtherGeneralResults()
Get the number of other results in the <general> element.
std::string getOtherServiceResultName(int idx)
bool setPrimalVariableValuesDense(int solIdx, double *x)
Set the [i]th optimization solution's primal variable values, where i equals the given solution index...
int getDualValueIdx(int solIdx, int conIdx)
OtherResults * otherResults
a pointer to the OtherResults class
bool setAnOtherSolutionResult(int solIdx, std::string name, std::string value, std::string category, std::string description, int numberOfItems, std::string *item)
Set another solution result of solution [i].
std::string value
this element allows a specific value associated with this particular type of result ...
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string getGeneralStatusType()
Get the general status type, which can be: success, error, warning.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
double getObjValue(int solIdx, int objIdx)
bool IsEqual(ObjectiveValues *that)
A function to check for the equality of two objects.
double value
value is a double that holds the value of the entity
TimeMeasurement()
Default constructor.
std::string getGeneralSubstatusName(int i)
Get the i_th general substatus name.
MatrixProgrammingSolution()
The MatrixProgramming class constructor.
const OSSmartPtr< OSOutput > osoutput
std::string scheduledStartTime
the time when the job was supposed to start
std::string getSolutionStatusType(int solIdx)
Get the [i]th optimization solution status type, where i equals the given solution index...
StorageCapacity * usedMemory
a pointer to the MemorySize class
std::string type
type of the result value (integer, double, boolean, string)
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setOtherObjectiveResultObj(int solIdx, int otherIdx, int objIdx, std::string value)
Set the value of another (non-standard/solver specific) objective-related result, for the [i]th solut...
bool setAvailableMemoryDescription(std::string description)
Set the description of available memory.
int numberOfOtherMatrixProgrammingResults
the number of <other> child elements>
int getSolverOutputNumberOfItems(int otherIdx)
std::string getOtherGeneralResultValue(int idx)
ObjectiveValues()
Default constructor.
bool IsEqual(OptimizationSolution *that)
A function to check for the equality of two objects.
~ObjectiveSolution()
Class destructor.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setOtherConstraintResultNumberOfEnumerations(int solIdx, int otherIdx, int numberOfCon)
Set the number of <enumeration> children of another (non-standard/solver specific) constraint-related...
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
int numberOfOtherObjectiveResults
the number of types of objective function results other than the basic objective function values ...
TimingInformation * timingInformation
a pointer to the TimingInformation class
bool setAvailableMemoryValue(double value)
Set the amount of available memory.
std::string category
this element allows a specific category to be associated with this particular type of result ...
std::string getOtherObjectiveResultValue(int solIdx, int otherIdx)
std::string value
this element allows a specific value associated with this particular type of result ...
bool IsEqual(CPUSpeed *that)
A function to check for the equality of two objects.
Time()
Default constructor.
bool IsEqual(OptimizationResult *that)
A function to check for the equality of two objects.
int getOtherObjectiveResultNumberOfObj(int solIdx, int otherIdx)
OtherOptionOrResultEnumeration ** enumeration
the enumeration.
bool setHeader(std::string name, std::string source, std::string fileCreator, std::string description, std::string licence)
A function to populate an instance of the result header element.
bool setJobSubmitTime(std::string submitTime)
Set the time when the job was submitted.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
The OptimizationResult Class.
int numberOfOtherMatrixVariableResults
numberOfOtherMatrixVariableResults gives the number of <other> children
std::string description
a brief description of the type of result
bool setOtherGeneralResultName(int idx, std::string name)
Set the general otherResult name.
a data structure to represent the constant elements in a MatrixType object
std::string getUsedDiskSpaceDescription()
bool setUsedCPUSpeedValue(double value)
Set the used CPU speed.
bool setOtherSolutionResultItem(int solIdx, int otherIdx, int itemIdx, std::string item)
Set one item associated with the [j]th other solution result of solution [i].
int getOtherVariableResultEnumerationEl(int solIdx, int otherIdx, int enumIdx, int j)
Get one index of an enum associated with an <other> result for some solution.
bool setNumberOfSolutionSubstatuses(int solIdx, int num)
Set the [i]th optimization solution's number of substatus elements.
A commonly used structure holding an index-value pair.
int numberOfVar
the number of string-valued variable values that are in the solution
std::string getAvailableMemoryDescription()
ObjValue ** obj
obj is a pointer to an array of ObjValue objects that give an index and objective function value for ...
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setServiceName(std::string serviceName)
Set service name.
std::string description
a brief description of the type of result
ENUM_MATRIX_TYPE
An enum to track the many different types of values that a matrix can contain Note that these types a...
int idx
idx is the index on variable in the solution
std::string getOtherVariableResultDescription(int solIdx, int otherIdx)
int getOtherVariableResultVarIdx(int solIdx, int otherIdx, int varIdx)
The ObjectiveValues Class.
OtherSolutionResults * otherSolutionResults
otherSolutionResults is a pointer to an OtherSolutionResults object that is associated with this opti...
bool setUsedDiskSpaceDescription(std::string description)
Set the description of used disk space.
bool setOtherConstraintResultCategory(int solIdx, int otherIdx, std::string category)
Set the category of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
bool setNumberOfSolverOutputs(int numberOfSolverOutputs)
Set the number of other solver outputs.
MatrixNode ** m_mChildren
m_mChildren holds all the children, that is, nodes used in the definition or construction of the curr...
OtherObjResult()
Default constructor.
bool setVariableNumber(int variableNumber)
Set the variable number.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string errormsg
errormsg is the error that is causing the exception to be thrown
bool IsEqual(OptimizationSolutionStatus *that)
A function to check for the equality of two objects.
int currentJobCount
the number of jobs currently running
bool verifyStorageUnit(std::string unit)
bool setSolutionSubstatusType(int solIdx, int substatusIdx, std::string type)
Set the solution substatus type.
int idx
idx is the index on variable in the solution
bool setOtherServiceResultValue(int idx, std::string value)
Set the service otherResult value.
bool setUsedCPUSpeedUnit(std::string unit)
Set the unit in which used CPU speed is measured.
std::string description
the description of the substatus
std::string getAvailableDiskSpaceDescription()
OtherOptionOrResultEnumeration ** enumeration
int getNumberOfVarValues(int solIdx)
double getUsedMemoryValue()
int getNumberOfDualValues(int solIdx)
std::string solver
the solver of the result value
DualVarValue ** con
con is a vector of DualVarValue objects that give an index and dual variable value for each constrain...
MatrixVariableSolution()
The MatrixVariableSolution class constructor.
bool setMatrixVariablesOtherResultMatrixAttributes(int solIdx, int otherIdx, int matrixVarIdx, int numberOfRows, int numberOfColumns, ENUM_MATRIX_SYMMETRY symmetry=ENUM_MATRIX_SYMMETRY_none, ENUM_MATRIX_TYPE type=ENUM_MATRIX_TYPE_unknown, std::string name="")
A method to set attributes for a matrixVar in the [j]th other result associated with matrix variables...
bool setOtherObjectiveResultNumberOfEnumerations(int solIdx, int otherIdx, int numberOfObj)
Set the number of <enumeration> children of another (non-standard/solver specific) objective-related ...
DualVariableValues * dualValues
a pointer to an array of DualVariableValues objects
bool setSolutionTargetObjectiveName(int solIdx, std::string objectiveName)
Set the [i]th optimization solution's objective name, where i equals the given solution index...
to represent the nonzeros in a constantMatrix element
~GeneralResult()
Class destructor.
std::string getOtherObjectiveResultDescription(int solIdx, int otherIdx)
bool setUsedCPUSpeedDescription(std::string description)
Set the description of used CPU speed.
std::string value
this element allows a specific value associated with this particular type of result ...
~JobResult()
Class destructor.
bool IsEqual(OtherResults *that)
A function to check for the equality of two objects.
bool IsEqual(GeneralSubstatus *that)
A function to check for the equality of two objects.
bool setOtherObjectiveResultDescription(int solIdx, int otherIdx, std::string description)
Set the description of another (non-standard/solver specific) objective-related result, for the [i]th solution, where i equals the given solution index.
bool setNumberOfPrimalVariableValues(int solIdx, int n)
Set the [i]th optimization solution's number of primal variable values, where i equals the given solu...
std::string message
a message associated with this solution
std::string getOtherSolutionResultDescription(int solIdx, int otherIdx)
bool setMatrixVarValuesBlockElements(int solIdx, int idx, int blkno, int blkRowIdx, int blkColIdx, int nz, int *start, int *index, MatrixElementValues *value, ENUM_MATRIX_TYPE valueType, ENUM_MATRIX_SYMMETRY symmetry=ENUM_MATRIX_SYMMETRY_none, bool rowMajor=false)
A method to set the elements within a block of a matrixVar in the [i]th optimization solution...
std::vector< IndexValuePair * > getOptimalPrimalVariableValues(int solIdx)
Get one solution of optimal primal variable values.
bool setOtherSolutionResultDescription(int solIdx, int otherIdx, std::string description)
Set the description associated with the [j]th other solution result of solution [i].
bool setNumberOfTimes(int numberOfTimes)
Set the number of time measurements and initial the time array.
std::string unit
The unit of time (tick/millisecond/second/minute/hour/day/week/month/year)
std::string getOtherSolutionResultName(int solIdx, int otherIdx)
bool setSolverOutputCategory(int otherIdx, std::string category)
Set the category associated with the [j]th solver output.
int getNumberOfOtherConstraintResults(int solIdx)
std::string systemInformation
a string containing some basic system information
int numberOfSubstatuses
the number of substatuses
JobResult * job
job holds the fourth child of the OSResult specified by the OSrL Schema.
bool setOtherConstraintResultNumberOfCon(int solIdx, int otherIdx, int numberOfCon)
Set the number of <con> children of another (non-standard/solver specific) constraint-related result...
GeneralFileHeader * resultHeader
header information
DualVarValue()
Default constructor.
bool setSolutionStatusDescription(int solIdx, std::string description)
Set the [i]th optimization solution status description.
bool setSolutionStatusType(int solIdx, std::string type)
Set the [i]th optimization solution status type.
bool IsEqual(OtherConstraintResult *that)
A function to check for the equality of two objects.
int numberOfSubstatuses
the number of substatus objects
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool IsEqual(VariableValues *that)
A function to check for the equality of two objects.
~OptimizationSolution()
Class destructor.
std::string getOtherServiceResultDescription(int idx)
std::string description
a brief description of the type of result
ServiceResult()
Default constructor.
int getBasisInformationDense(int solIdx, int object, int *resultArray, int dim)
Get the basis information associated with the variables, objectives or constraints for some solution...
bool setJobStatus(std::string status)
Set the job status.
bool setCurrentState(std::string currentState)
Set the current state of the service.
GeneralResult * general
general holds the first child of the OSResult specified by the OSrL Schema.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
ServiceResult * service
service holds the third child of the OSResult specified by the OSrL Schema.
bool setNumberOfOtherSolutionResults(int solIdx, int numberOfOtherSolutionResults)
Set the [i]th optimization solution's other (non-standard/solver specific) solution-related results...
OtherResults * otherResults
a pointer to the OtherResults class
bool IsEqual(BasisStatus *that)
A function to check for the equality of two objects.
bool setSolverInvoked(std::string solverInvoked)
Set solver invoked.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
double value
the number of units
ObjectiveSolution()
Default constructor.
bool setOtherOptionOrResultEnumeration(int solIdx, int otherIdx, int object, int enumIdx, std::string value, std::string description, int *i, int ni)
Set the value and corresponding indices of another (non-standard/solver specific) variable-related re...
int value
the number of CPUs
bool setOtherObjectiveResultEnumType(int solIdx, int otherIdx, std::string enumType)
Set the enumType of another (non-standard/solver specific) objective-related result, for the [i]th solution, where i equals the given solution index.
std::string getUsedMemoryUnit()
bool setTime(double time)
Set time.
~MatrixObjectiveSolution()
The MatrixVariableSolution class destructor.
GeneralResult()
Default constructor.
std::string getSolverOutputCategory(int otherIdx)
The OptimizationSolution Class.
std::string targetObjectiveName
an optional name of the objective function for which we are reporting solution information ...
ENUM_MATRIX_TYPE type
To track the type of values present in the matrix or block.
bool setAnOtherVariableResultSparse(int solIdx, int otherIdx, std::string name, std::string value, std::string description, int *idx, std::string *s, int n)
Set the [i]th optimization solution's other (non-standard/solver specific)variable-related results...
std::string type
type of the result value (integer, double, boolean, string)
std::string type
type of the result value (integer, double, boolean, string)
std::string getOtherJobResultDescription(int idx)
int getOtherConstraintResultConIdx(int solIdx, int otherIdx, int conIdx)
std::string value
the value of the other result
int getOtherSolutionResultNumberOfItems(int solIdx, int otherIdx)
bool setOtherConstraintResultSolver(int solIdx, int otherIdx, std::string solver)
Set the solver of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
The ConstraintSolution Class.
GeneralSubstatus()
Default constructor.
bool setGeneralStatus(GeneralStatus *status)
Set the general status.
OptimizationResult * optimization
optimization holds the fifth child of the OSResult specified by the OSrL Schema.
bool setAvailableCPUSpeedDescription(std::string description)
Set the description of available CPU speed.
a data structure to represent the nonzeroes of a matrix in a blockwise fashion. Each block can be giv...
std::string getTimeServiceStarted()
std::string getAvailableMemoryUnit()
~TimeMeasurement()
Class destructor.
DualVariableValues()
Default constructor.
~MatrixConstraintSolution()
The MatrixConstraintSolution class destructor.
The OtherConstraintResult Class.
std::string description
additional description about the CPU speed
bool setOtherJobResultName(int idx, std::string name)
Set the job otherResult name.
a data structure to represent a MatrixBlock object (derived from MatrixType)
an abstract class to help represent the elements in a MatrixType object From this we derive concrete ...
double getOptimalObjValue(int objIdx, int solIdx)
Get one solution's optimal objective value.
bool setGeneralSubstatusName(int idx, std::string name)
Set the general substatus name.
bool setSolutionTargetObjectiveIdx(int solIdx, int objectiveIdx)
Set the [i]th optimization solution's objective index, where i equals the given solution index...
bool IsEqual(JobResult *that)
A function to check for the equality of two objects.
~OtherResult()
Class destructor.
bool getSolutionWeightedObjectives(int solIdx)
Get the [i]th optimization solution form of the objective.
SystemResult()
Default constructor.
std::string matrixType
the type of matrixVar
SystemResult * system
system holds the second child of the OSResult specified by the OSrL Schema.
std::vector< IndexValuePair * > getOptimalDualVariableValues(int solIdx)
Get one solution of optimal dual variable values.
std::string varType
type of the values in the var array
bool setDualVariableValuesDense(int solIdx, double *y)
Set the [i]th optimization solution's dual variable values, where i equals the given solution index...
int idx
idx is the index on a objective function
OtherVariableResult()
Default constructor.
bool setAnOtherVariableResultDense(int solIdx, int otherIdx, std::string name, std::string value, std::string description, std::string *s)
Set the [i]th optimization solution's other (non-standard/solver specific)variable-related results...
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
int idx
idx is the index on the constraint
std::string value
value is a value associated with an objective function indexed by idx
a generic class from which we derive matrix constructors (BaseMatrix, MatrixElements, MatrixTransformation and MatrixBlocks) as well as matrix types (OSMatrix and MatrixBlock).
OtherResults()
Default constructor.
bool setUsedMemoryValue(double value)
Set the amount of used memory.
bool setNumberOfDualValues(int solIdx, int numberOfCon)
Set the number of constraints to be given a value.
bool setServiceURI(std::string serviceURI)
Set service uri.
std::string getOtherVariableResultName(int solIdx, int otherIdx)
int getOtherConstraintResultEnumerationNumberOfEl(int solIdx, int otherIdx, int enumIdx)
Get the size of an enum associated with an <other> result for some solution.
std::string description
a brief description of the type of result
bool setObjectiveNumber(int objectiveNumber)
Set the objective number.
~OtherVariableResult()
Class destructor.
bool IsEqual(OtherResult *that)
A function to check for the equality of two objects.
bool IsEqual(OtherSolutionResult *that)
A function to check for the equality of two objects.
int numberOfMatrixVar
numberOfMatrixVar gives the number of <matrixVar> children
BasisStatus * basisStatus
a pointer to a BasisStatus object
bool setInstanceName(std::string instanceName)
Set instance name.
The OptimizationSolutionSubstatus Class.
std::string value
the value associated with the result the user is defining
bool setNumberOfObjectiveValues(int solIdx, int n)
Set the [i]th optimization solution's number of objective values, where i equals the given solution i...
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
int getBasisDense(int *resultArray, int dim, bool flipIdx)
Get the entire array of basis status in dense form.
this class extends OSMatrix for use, e.g., in the matrixVar section of OSoL and OSrL ...
double getTimeValue()
Get the time measurement.
bool setSolutionMessage(int solIdx, std::string msg)
Set the [i]th optimization solution's message, where i equals the given solution index.
bool setTimeNumber(int timeNumber)
Set the number of time measurements.
bool setOtherSystemResultValue(int idx, std::string value)
Set the system otherResult value.
bool setAvailableCPUSpeedUnit(std::string unit)
Set the unit in which available CPU speed is measured.
bool IsEqual(SystemResult *that)
A function to check for the equality of two objects.
The in-memory representation of the <matrixVariables> element.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string name
the name of the result the user is defining
OSResult()
Default constructor.
~VariableSolution()
Class destructor.
CPUNumber * usedCPUNumber
a pointer to the CPUNumber class
int getNumberOfOtherJobResults()
bool setOtherVariableResultVarType(int solIdx, int otherIdx, std::string varType)
Set the varType of another (non-standard/solver specific) variable-related result, for the [i]th solution, where i equals the given solution index.
~DualVarValue()
Class destructor.
~GeneralStatus()
Class destructor.
CPUSpeed * usedCPUSpeed
a pointer to the CPUSpeed class
bool setNumberOfOtherGeneralResults(int num)
Set number of other general results.
~OtherConstraintResult()
Class destructor.
CPUSpeed * availableCPUSpeed
a pointer to the CPUSpeed class
std::string name
Gives a name to this result.
OtherResult()
Default constructor.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string endTime
the time when the job finished
double getAvailableCPUSpeedValue()
~OtherObjResult()
Class destructor.
bool setOtherSolutionResultNumberOfItems(int solIdx, int otherIdx, int numberOfItems)
Set the number of items associated with the [j]th other solution result of solution [i]...
bool setPrimalVariableValuesSparse(int solIdx, std::vector< IndexValuePair * > x)
Set the [i]th optimization solution's primal variable values, where i equals the given solution index...
ObjectiveSolution * objectives
objectives holds the solution information for the objectives
double getAvailableMemoryValue()
OtherObjectiveResult()
Default constructor.
std::string enumType
type of the values in the enumeration array
std::string getOtherServiceResultValue(int idx)
bool verifySystemCurrentState(std::string status)
bool IsEqual(ObjectiveSolution *that)
A function to check for the equality of two objects.
std::string getUsedMemoryDescription()
std::string getOtherConstraintResultEnumerationDescription(int solIdx, int otherIdx, int enumIdx)
Get the description of an enum associated with an <other> result for some solution.
OtherSolutionResult ** otherSolutionResult
otherSolutionResult is a pointer to an array of OtherSolutionResult objects
bool IsEqual(GeneralStatus *that)
A function to check for the equality of two objects.
int getOtherObjectiveResultEnumerationNumberOfEl(int solIdx, int otherIdx, int enumIdx)
Get the size of an enum associated with an <other> result for some solution.
int numberOfVar
the number of variables which have values for this particular type of result
std::string enumType
the type of the enumeration
int m_iObjectiveNumber
m_iObjectiveNumber holds the objective number.
std::string name
optional name
bool setSystemInformation(std::string systemInformation)
Set the system information.
std::string timeServiceStarted
the time when the service was started
std::string getGeneralStatusDescription()
Get the general status description.
bool setVarValueString(int solIdx, int number, int idx, std::string name, std::string str)
Set a string-valued primal variable value.
int getOtherVariableResultNumberOfEnumerations(int solIdx, int otherIdx)
~OtherConResult()
Class destructor.
std::string actualStartTime
the time when the job actually started
bool setNumberOfOtherConstraintResults(int solIdx, int numberOfOtherConstraintResults)
Set the [i]th optimization solution's other (non-standard/solver specific) constraint-related results...
std::string getOtherVariableResultEnumerationValue(int solIdx, int otherIdx, int enumIdx)
Get the value of an enum associated with an <other> result for some solution.
bool setOtherConstraintResultConIdx(int solIdx, int otherIdx, int conIdx, int idx)
Set the index of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
The OtherSolverOutput Class.
bool IsEqual(OtherConResult *that)
A function to check for the equality of two objects.
bool verifyTimeUnit(std::string unit)
The OptimizationSolutionStatus Class.
std::string getTimingInfoType(int idx)
std::string getSystemInformation()
std::string solver
the solver of the result value
std::string getActualStartTime()
std::string getJobSubmitTime()
int getNumberOfOtherSolutionResults(int solIdx)
std::string getOtherVariableResultArrayType(int solIdx, int otherIdx)
Get the type of values contained in the or <enumeration> array associated with an <other> result for...
bool setNumberOfVarValues(int solIdx, int numberOfVar)
Set the number of primal variables to be given a value.
std::string description
other data elements are optional
OtherSolutionResult()
Default constructor.
std::string getOtherSystemResultName(int idx)
int numberOfItems
the number of items contained in this otherSolutionResult
OtherSolverOutput * otherSolverOutput
otherSolverOutput is a pointer to an OtherSolverOutput object
std::string getOtherConstraintResultArrayType(int solIdx, int otherIdx)
Get the type of values contained in the <con> or <enumeration> array associated with an <other> resul...
MatrixConstraintSolution()
The MatrixConstraintSolution class constructor.
bool IsEqual(CPUNumber *that)
A function to check for the equality of two objects.
bool setGeneralSubstatusDescription(int idx, std::string description)
Set the general substatus description.
OtherSolutionResults()
Default constructor.
bool setSolutionNumber(int number)
set the number of solutions.
std::string objType
type of the values in the obj array
double OSNaN()
returns the value for NaN used in OS
std::string getOtherSystemResultDescription(int idx)
bool setOtherConstraintResultType(int solIdx, int otherIdx, std::string type)
Set the type of another (non-standard/solver specific) constraint-related result, for the [i]th solut...
int getNumberOfSolverOutputs()
bool setIntVector(int status, int *i, int ni)
Set the indices for a particular status.
bool setBasisStatus(int solIdx, int object, int status, int *i, int ni)
Set the basis status of a number of variables/constraints/objectives.
int numberOfSolverOutputs
the number of elements in the pointer of SolverOutput objects
bool setOtherGeneralResultDescription(int idx, std::string description)
Set the general otherResult description.
double * m_mdPrimalValues
m_mdPrimalValues a vector of primal variables.
std::vector< IndexValuePair * > dualVals
bool setScheduledStartTime(std::string scheduledStartTime)
Set the job's scheduled start time.
bool setConstraintValuesDense(int solIdx, double *constraintValues)
Set the [i]th optimization solution's constraint values, where i equals the given solution index...
~ConstraintSolution()
Class destructor.
std::string getServiceName()
Get service name.
std::string getOtherSolutionResultItem(int solIdx, int otherIdx, int itemIdx)
int getUsedCPUNumberValue()
std::string message
any general message associated with the optimization
bool setOtherObjectiveResultValue(int solIdx, int otherIdx, std::string value)
Set the value of another (non-standard/solver specific) objective-related result, for the [i]th solut...
bool setAvailableDiskSpaceUnit(std::string unit)
Set the unit in which available disk space is measured.
std::string getOtherVariableResultType(int solIdx, int otherIdx)
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
OtherVarResult()
Default constructor.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string getSolutionMessage(int solIdx)
Get the [i]th optimization solution message, where i equals the given solution index.
int numberOfCon
record the number of constraints for which values are given
int getAnOtherVariableResultNumberOfVar(int solIdx, int iOther)
Get getAnOtherVariableResultNumberOfVar.
int getOtherObjectiveResultEnumerationEl(int solIdx, int otherIdx, int enumIdx, int j)
Get one index of an enum associated with an <other> result for some solution.
int numberOfEnumerations
the number of distinct values for this particular type of result
int getEl(int status, int j)
Get one entry in the array of indices for a particular status.
std::string description
additional description about the CPU
std::string getOtherObjectiveResultArrayType(int solIdx, int otherIdx)
Get the type of values contained in the <obj> or <enumeration> array associated with an <other> resul...
int getNumberOfObjValues(int solIdx)
bool setOtherVariableResultName(int solIdx, int otherIdx, std::string name)
Set the name of another (non-standard/solver specific) variable-related result, for the [i]th solutio...
bool verifySolutionStatus(std::string status)
VarValue ** var
a vector of VarValue objects, there will be one for each variable in the solution ...
bool setOtherConstraintResultDescription(int solIdx, int otherIdx, std::string description)
Set the description of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
VariableSolution * variables
variables holds the solution information for the variables
std::string getJobID()
Get the job id.
The OtherSolutionResult Class.
bool setNumberOfOtherSystemResults(int num)
Set number of other system results.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
double getServiceUtilization()
std::string getVarValueName(int solIdx, int varIdx)
MatrixObjectiveSolution()
The MatrixVariableSolution class constructor.
std::string name
optional name
bool setNumberOfOtherVariableResults(int solIdx, int numberOfOtherVariableResults)
Set the [i]th optimization solution's other (non-standard/solver specific) variable-related results...
~OptimizationSolutionStatus()
Class destructor.
ObjValue()
Default constructor.
OptimizationResult()
Default constructor.
bool setObjValue(int solIdx, int number, int idx, std::string name, double val)
Set an objective value.
std::string getScheduledStartTime()
int getNumberOfOtherSystemResults()
int numberOfSolutions
numberOfSolutions is the number of objective functions reported.
bool setAvailableCPUNumberDescription(std::string description)
Set the description of available number of CPUs.
std::string name
the name of the result the user is defining
bool verifyTimeCategory(std::string category)
int getOtherObjectiveResultArrayDense(int solIdx, int otherIdx, std::string *resultArray, int dim)
Get the values of an <obj> array or an <enumeration> associated with an <other> result for some solut...
std::string getOtherObjectiveResultName(int solIdx, int otherIdx)
MatrixVariableSolution * matrixVariables
a pointer to the matrixVariables object
bool setMatrixVarValuesAttributes(int solIdx, int idx, int matrixVarIdx, int numberOfRows, int numberOfColumns, ENUM_MATRIX_SYMMETRY symmetry=ENUM_MATRIX_SYMMETRY_none, ENUM_MATRIX_TYPE type=ENUM_MATRIX_TYPE_unknown, std::string name="")
A method to set general attributes for a matrixVar in the [i]th optimization solution, where i equals the given solution index.
int getNumberOfGeneralSubstatuses()
Get the number of substatuses.
std::string status
job status
std::string getSolutionSubstatusDescription(int solIdx, int substatusIdx)
OtherResults * otherResults
a pointer to the OtherResults class
double getAvailableDiskSpaceValue()
int getBasisStatusNumberOfEl(int solIdx, int object, int status)
Get the number of indices that belong to a particular basis status.
std::string name
the name of the result the user is defining
bool setOtherVariableResultVarName(int solIdx, int otherIdx, int varIdx, std::string name)
Set the name of another (non-standard/solver specific) variable-related result, for the [i]th solutio...
~OptimizationSolutionSubstatus()
Class destructor.
std::string getAvailableCPUNumberDescription()
std::string getAvailableDiskSpaceUnit()
std::string getAvailableCPUSpeedDescription()
std::string getOtherConstraintResultType(int solIdx, int otherIdx)
std::string getObjValueName(int solIdx, int objIdx)
std::string getVarValueString(int solIdx, int varIdx)
~OtherVarResult()
Class destructor.
VariableValues * values
a pointer to a VariableValues object
~MatrixProgrammingSolution()
The MatrixProgramming class destructor.
bool setUsedMemoryUnit(std::string unit)
Set the unit in which used memory is measured.
bool IsEqual(DualVarValue *that)
A function to check for the equality of two objects.
bool setOtherVariableResultNumberOfEnumerations(int solIdx, int otherIdx, int numberOfEnumerations)
Set the number of <enumeration> children of another (non-standard/solver specific) variable-related r...
StorageCapacity * availableMemory
a pointer to the MemorySize class
OtherMatrixVariableResult()
The standard MatrixVariableValues class constructor.
bool setUsedMemoryDescription(std::string description)
Set the description of used memory.
std::string getOtherConstraintResultName(int solIdx, int otherIdx)
bool setOtherVariableResultType(int solIdx, int otherIdx, std::string type)
Set the type of another (non-standard/solver specific) variable-related result, for the [i]th solutio...
The in-memory representation of the <MatrixVariableSolution> element.
std::string enumType
type of the values in the enumeration array
SolverOutput()
Default constructor.
GeneralStatus * generalStatus
a pointer to the GeneralStatus class
bool setOtherVariableResultValue(int solIdx, int otherIdx, std::string value)
Set the value of another (non-standard/solver specific) variable-related result, for the [i]th soluti...
std::string name
optional name
~MatrixVariableValues()
The MatrixVariableValues class destructor.
int idx
the index of a variable in the solution
VarValueString()
Default constructor.
The OtherObjResult Class.
The VariableValues Class.
bool setOtherObjectiveResultObjIdx(int solIdx, int otherIdx, int objIdx, int idx)
Set the index of another (non-standard/solver specific) objective-related result, for the [i]th solut...
bool setOtherConstraintResultConType(int solIdx, int otherIdx, std::string conType)
Set the conType of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
std::string getOtherObjectiveResultType(int solIdx, int otherIdx)
std::string name
optional name
int getNumberOfEl(int status)
Get the number of indices for a particular status.
int getVarValueStringIdx(int solIdx, int varIdx)
bool setMatrixVariablesOtherResultBlockStructure(int solIdx, int otherIdx, int matrixVarIdx, int *colOffset, int colOffsetSize, int *rowOffset, int rowOffsetSize, int numberOfBlocks, int blocksConstructorIdx=0)
A method to set the block structure for the values of a matrixVar associated with the [j]th "other" r...
void fint fint fint fint fint fint fint fint fint fint real real real real real real real real * s
std::string * item
an array of items (string-valued)
VarValueString ** var
a vector of VarValueString objects, there will be one for each variable in the solution ...
StorageCapacity * usedDiskSpace
a pointer to the DiskSpace class
unsigned int inumberOfChildren
inumberOfChildren is the number of MatrixNode child elements For the matrix types (OSMatrix and Matri...
int numberOfCon
the number of constraints which have values for this particular type of result
bool setOtherJobResultValue(int idx, std::string value)
Set the job otherResult value.
std::string unit
the unit in which storage capacity is measured
double getVarValue(int solIdx, int varIdx)
int getSolutionNumber()
get the number of solutions.
bool setOtherSystemResultDescription(int idx, std::string description)
Set the system otherResult description.
int getSolutionTargetObjectiveIdx(int solIdx)
bool setGeneralMessage(std::string message)
Set the general message.
int idx
idx holds the index of an entity (such as a variable, constraint, objective) that is part of a sparse...
std::string getOtherGeneralResultDescription(int idx)
std::string getInstanceName()
Get instance name.
std::string getTimeStamp()
Get the time stamp.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
~VariableValues()
Class destructor.
std::string type
the type of solution status
std::string solverInvoked
the name of the solver used
bool setOtherServiceResultName(int idx, std::string name)
Set the service otherResult name.
bool verifyTimeType(std::string type)
bool setGeneralStatusType(std::string type)
Set the general status type, which can be: success, error, warning.
int targetObjectiveIdx
the index of the objective function for which we are reporting solution information ...
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string timeStamp
a time stamp associated with the process
bool setUsedCPUNumberValue(int value)
Set the used number of CPUs.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool verifyJobStatus(std::string status)
std::string type
the type of status
int numberOfMatrixVar
number of matrix variables affected by or associated with this result
bool setUsedCPUNumberDescription(std::string description)
Set the description of used number of CPUs.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string solver
the solver of the result value
~ObjectiveValues()
Class destructor.
std::string getOtherObjectiveResultObj(int solIdx, int otherIdx, int objIdx)
~ServiceResult()
Class destructor.
int numberOfOtherSolutionResults
the number of elements in the pointer of OtherSolutionResult objects
~VarValue()
Class destructor.
ConstraintSolution()
Default constructor.
bool setOtherSolutionResultValue(int solIdx, int otherIdx, std::string value)
Set the value associated with the [j]th other solution result of solution [i].
The VariableSolution Class.
std::string name
the name of the result the user is defining
bool setNumberOfDualVariableValues(int solIdx, int n)
Set the [i]th optimization solution's number of dual variable values, where i equals the given soluti...
OptimizationSolution ** solution
solution is an array of pointers to OptimizationSolution objects
double * m_mdDualValues
m_mdDualValues a vector of dual variables.
bool setSolverOutputDescription(int otherIdx, std::string description)
Set the description associated with the [j]th solver output.
int getObjValueIdx(int solIdx, int objIdx)
OSMatrixWithMatrixVarIdx ** matrixVar
the list of matrices and their values
bool setOtherVariableResultSolver(int solIdx, int otherIdx, std::string solver)
Set the solver of another (non-standard/solver specific) variable-related result, for the [i]th solut...
an abstract class to help represent the elements in a MatrixType object From this we derive concrete ...
bool setOtherSolutionResultName(int solIdx, int otherIdx, std::string name)
Set the name associated with the [j]th other solution result of solution [i].
MatrixObjectiveSolution * matrixObjectives
a pointer to the matrixObjectives object
std::string getTimingInfoCategory(int idx)
MatrixConstraintSolution * matrixConstraints
a pointer to the matrixConstraints object
ConstraintSolution * constraints
constraints holds the solution information for the constraints
bool setOtherObjectiveResultNumberOfObj(int solIdx, int otherIdx, int numberOfObj)
Set the number of <obj> children of another (non-standard/solver specific) objective-related result...
bool setNumberOfOtherJobResults(int num)
Set number of other job results.
~OptimizationResult()
Class destructor.
The TimeMeasurement Class.
an integer Vector data structure
double serviceUtilization
service utilization
std::string category
the category of the result value
int getOtherVariableResultNumberOfVar(int solIdx, int otherIdx)
MatrixProgrammingSolution * matrixProgramming
matrixProgramming holds the solution information for the matrix programming components: matrix variab...
ObjectiveValues * values
a pointer to an array of ObjectiveValues objects
int getNumberOfOtherServiceResults()
std::string instanceName
the name of the instance that was solved
std::string getJobEndTime()
std::string category
the category of the result value
std::string description
a brief description of the type of result
double value
the CPU speed (expressed in multiples of unit)
bool setConstraintNumber(int constraintNumber)
Set the constraint number.
bool IsEqual(VarValue *that)
A function to check for the equality of two objects.
The OtherConResult Class.
std::string name
optional name
VarValue()
Default constructor.
std::string getOtherSolutionResultValue(int solIdx, int otherIdx)
bool setOtherVariableResultVar(int solIdx, int otherIdx, int varIdx, std::string value)
Set the value of another (non-standard/solver specific) variable-related result, for the [i]th soluti...
bool setOtherVariableResultDescription(int solIdx, int otherIdx, std::string description)
Set the description of another (non-standard/solver specific) variable-related result, for the [i]th solution, where i equals the given solution index.
std::string serviceName
the serviceName is the name of the solver service that did the optimization
bool IsEqual(ConstraintSolution *that)
A function to check for the equality of two objects.
bool setAvailableDiskSpaceDescription(std::string description)
Set the description of available disk space.
std::string getSolverOutputName(int otherIdx)
std::string category
this element allows a specific category to be associated with this particular type of result ...
std::string getJobStatus()
The in-memory representation of the <MatrixProgrammingSolution> element.
OptimizationSolutionSubstatus ** substatus
a pointer to an array of substatus objects
int numberOfConstraints
numberOfConstrants is the number of constraint functions reported in the solution.
std::string getSolutionStatusDescription(int solIdx)
Get the [i]th optimization solution status description, where i equals the given solution index...
std::string description
a description of the solution status type
BasisStatus * basisStatus
a pointer to a BasisStatus object
bool setOtherOptionOrResultEnumeration(std::string value, std::string description, int *i, int ni)
Set the indices for a particular level in an enumeration.
std::string getTimingInfoUnit(int idx)
bool setSolverOutputNumberOfItems(int otherIdx, int numberOfItems)
Set the number of items associated with the [j]th solver output.
std::string category
The category of time (total/input/preprocessing/optimization/postprocessing/output/other) ...
int idx
idx is the index on a constraint
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
OtherVariableResult ** other
a pointer to an array of other pointer objects for variables
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool OSIsEqual(double x, double y)
~OtherSolverOutput()
Class destructor.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
~SolverOutput()
Class destructor.
bool setActualStartTime(std::string actualStartTime)
Set the job's actual start time.
OSMatrixWithMatrixVarIdx ** matrixVar
matrixVar is an array of pointers to the <matrixVar> children
std::string * item
an array of items (string-valued)
~OtherResults()
Class destructor.
std::string name
the name of the other result
GeneralSubstatus ** substatus
the array of substatuses
MatrixVariableValues * values
values is pointer to the <values> child
~MatrixVariableSolution()
The MatrixVariableSolution class destructor.
VariableSolution()
Default constructor.
bool setMatrixVarValuesBlockStructure(int solIdx, int idx, int *colOffset, int colOffsetSize, int *rowOffset, int rowOffsetSize, int numberOfBlocks, int blocksConstructorIdx=0)
A method to set the block structure for the values of a matrixVar in the [i]th optimization solution...
std::string enumType
type of the values in the enumeration array
std::string getSolverInvoked()
Get the solver invoked.
int numberOfObj
record the number of objective rows for which values are given
bool setMatrixVariableSolution(int solIdx, int numberOfMatrixVar_, int numberOfOtherMatrixVariableResults_)
Set the [i]th optimization solution's MatrixVariableSolution, where i equals the given solution index...
std::string getOtherVariableResultEnumerationDescription(int solIdx, int otherIdx, int enumIdx)
Get the description of an enum associated with an <other> result for some solution.
bool setVarValue(int solIdx, int number, int idx, std::string name, double val)
Set a primal variable value.
bool setOtherSolutionResultCategory(int solIdx, int otherIdx, std::string category)
Set the category associated with the [j]th other solution result of solution [i]. ...
int getOtherConstraintResultNumberOfCon(int solIdx, int otherIdx)
CPUNumber * availableCPUNumber
a pointer to the CPUNumber class
bool IsEqual(OtherObjectiveResult *that)
A function to check for the equality of two objects.
std::string getSolverOutputDescription(int otherIdx)
std::string serviceURI
the serviceURI is the URI of the solver service that did the optimization
bool setJobID(std::string jobID)
Set job id.
bool IsEqual(OptimizationSolutionSubstatus *that)
A function to check for the equality of two objects.
bool setOtherSystemResultName(int idx, std::string name)
Set the system otherResult name.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
The DualVariableValues Class.
bool setObjectiveValuesSparse(int solIdx, std::vector< IndexValuePair * > x)
Set the [i]th optimization solution's objective values, where i equals the given solution index...
int getNumberOfSolutionSubstatuses(int solIdx)
std::string getOtherSolutionResultCategory(int solIdx, int otherIdx)
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setCurrentJobCount(int jobCount)
Set the current job count.
bool setOtherConstraintResultEnumType(int solIdx, int otherIdx, std::string enumType)
Set the enumType of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
std::string type
The type of timer used (cpuTime/elapsedTime/other)
bool setRandom(double density, bool conformant, int iMin, int iMax)
A function to make a random instance of this class.
VariableValuesString * valuesString
a pointer to a VariableValuesString object
bool IsEqual(OtherVariableResult *that)
A function to check for the equality of two objects.
std::string conType
type of the values in the con array
OtherMatrixVariableResult ** other
other is a pointer to an array of <other> children
The in-memory representation of the <matrixVariables> <other> element.
int numberOfEnumerations
number of levels in an enumeration associated with this result
The OtherObjectiveResult Class.
std::string getOtherConstraintResultCon(int solIdx, int otherIdx, int conIdx)
OtherOptionOrResultEnumeration ** enumeration
int numberOfEnumerations
the number of distinct values for this particular type of result
bool setNumberOfOtherServiceResults(int num)
Set number of other service results.
bool IsEqual(OSResult *that)
A function to check for the equality of two objects.
bool setSolutionSubstatusDescription(int solIdx, int substatusIdx, std::string description)
Set the solution substatus description.
std::string getSolutionTargetObjectiveName(int solIdx)
~VariableValuesString()
Class destructor.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setOtherObjectiveResultObjName(int solIdx, int otherIdx, int objIdx, std::string name)
Set the name of another (non-standard/solver specific) objective-related result, for the [i]th soluti...
std::string name
the name of the substatus
int getNumberOfVarValuesString(int solIdx)
bool setNumberOfVarValuesString(int solIdx, int numberOfVar)
Set the number of string-valued primal variables to be given a value.
bool setOtherConstraintResultName(int solIdx, int otherIdx, std::string name)
Set the name of another (non-standard/solver specific) constraint-related result, for the [i]th solut...
bool setUsedDiskSpaceValue(double value)
Set the amount of used disk space.
~VarValueString()
Class destructor.
int getEl(int j)
get an entry in the data array of an IntVector
bool setOtherServiceResultDescription(int idx, std::string description)
Set the service otherResult description.
OtherObjectiveResult ** other
a pointer to an array of other pointer objects for objective functions
int getBasisStatusEl(int solIdx, int object, int status, int j)
Get an entry in the array of indices that belong to a particular basis status.
bool IsEqual(TimeMeasurement *that)
A function to check for the equality of two objects.
int numberOfVariables
numberOfVariables is the number of variables reported in the solution.
bool setOtherGeneralResultValue(int idx, std::string value)
Set the general otherResult value.
std::string getOtherSystemResultValue(int idx)
~GeneralSubstatus()
Class destructor.
int getNumberOfOtherVariableResults(int solIdx)
Get numberOfOtherVariableResult.
bool IsEqual(OtherSolutionResults *that)
A function to check for the equality of two objects.
bool setMatrixVariablesOtherResultBlockElements(int solIdx, int otherIdx, int matrixVarIdx, int blkno, int blkRowIdx, int blkColIdx, int nz, int *start, int *index, MatrixElementValues *value, ENUM_MATRIX_TYPE valueType, ENUM_MATRIX_SYMMETRY symmetry=ENUM_MATRIX_SYMMETRY_none, bool rowMajor=false)
A method to set the elements within a block of a matrixVar associated with the [j]th "other" result i...
bool setOtherObjectiveResultType(int solIdx, int otherIdx, std::string type)
Set the type of another (non-standard/solver specific) objective-related result, for the [i]th soluti...
int getOtherConstraintResultArrayDense(int solIdx, int otherIdx, std::string *resultArray, int dim)
Get the values of a <con> array or an <enumeration> associated with an <other> result for some soluti...
bool setObjectiveValuesDense(int solIdx, double *objectiveValues)
Set the [i]th optimization solution's objective values, where i equals the given solution index...
int numberOfOtherConstraintResults
the number of types of constraint function results other than the basic constraint function values ...
bool addTimingInformation(std::string type, std::string category, std::string unit, std::string description, double value)
Add timing information.
std::string getUsedCPUSpeedDescription()
std::string name
optional name
std::string category
the category of the result value
int getOtherConstraintResultNumberOfEnumerations(int solIdx, int otherIdx)
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
bool setOtherVariableResultVarIdx(int solIdx, int otherIdx, int varIdx, int idx)
Set the index of another (non-standard/solver specific) variable-related result, for the [i]th soluti...
std::string category
The category of time (total/input/preprocessing/optimization/postprocessing/output/other) ...
bool IsEqual(TimeSpan *that)
A function to check for the equality of two objects.
bool setSolverOutputName(int otherIdx, std::string name)
Set the name associated with the [j]th solver output.
JobResult()
Default constructor.
std::string getUsedCPUNumberDescription()
MatrixVariableValues()
The MatrixVariableValues class constructor.
~ObjValue()
Class destructor.
~DualVariableValues()
Class destructor.
int getTimeNumber()
Get the number of time measurements.
bool IsEqual(VariableSolution *that)
A function to check for the equality of two objects.
std::string getServiceURI()
Get service uri.
int numberOfOtherVariableResults
the number of types of variable results other than the value of the variable
OtherOptionOrResultEnumeration ** enumeration
int idx
idx is the index on an objective function
OptimizationSolutionSubstatus()
Default constructor.
int getOtherObjectiveResultNumberOfEnumerations(int solIdx, int otherIdx)
OtherConstraintResult()
Default constructor.
bool setSolutionWeightedObjectives(int solIdx, bool weightedObjectives)
Record whether the [i]th optimization solution uses weighted objectives, where i equals the given sol...
double value
the value of the objective indexed by idx
std::string getSolverOutputItem(int otherIdx, int itemIdx)
GeneralStatus()
Default constructor.
bool setOtherVariableResultEnumType(int solIdx, int otherIdx, std::string enumType)
Set the enumType of another (non-standard/solver specific) variable-related result, for the [i]th solution, where i equals the given solution index.
bool IsEqual(StorageCapacity *that)
A function to check for the equality of two objects.
~OtherMatrixVariableResult()
The MatrixVariableValues class destructor.
std::string getCurrentState()
bool setSolverOutputItem(int otherIdx, int itemIdx, std::string item)
Set one item associated with the [j]th solver output.
bool setOtherObjectiveResultCategory(int solIdx, int otherIdx, std::string category)
Set the category of another (non-standard/solver specific) objective-related result, for the [i]th solution, where i equals the given solution index.
BasisStatus * basisStatus
a pointer to a BasisStatus object
bool setTotalJobsSoFar(int number)
Set the total number of jobs so far.
int m_iNumberOfOtherVariableResults
m_iNumberOfOtherVariableResults holds the number of OtherVariableResult objects.
bool setOtherConstraintResultCon(int solIdx, int otherIdx, int conIdx, std::string value)
Set the value of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
int numberOfOtherResults
the number of other results
std::string getOtherVariableResultValue(int solIdx, int otherIdx)
VariableValuesString()
Default constructor.
int numberOfObj
the number of objectives which have values for this particular type of result
OtherResult ** other
the array of other results
std::string getOtherGeneralResultName(int idx)
Get the name of the i-th other result in the <general> element.
bool setDualVariableValuesSparse(int solIdx, std::vector< IndexValuePair * > x)
Set the [i]th optimization solution's dual variable values, where i equals the given solution index...
int getOtherVariableResultArrayDense(int solIdx, int otherIdx, std::string *resultArray, int dim)
Get the values of a array or an <enumeration> associated with an <other> result for some solution...
bool setNumberOfGeneralSubstatuses(int num)
Set the number of substatus elements.
~OtherSolutionResults()
Class destructor.
bool setOtherConstraintResultValue(int solIdx, int otherIdx, std::string value)
Set the value of another (non-standard/solver specific) constraint-related result, for the [i]th solution, where i equals the given solution index.
int getAvailableCPUNumberValue()
std::string jobID
the jobID is the ID associated with the solution of this instance
bool IsEqual(GeneralResult *that)
A function to check for the equality of two objects.
bool IsEqual(VariableValuesString *that)
A function to check for the equality of two objects.
std::string type
the type of the solution substatus
std::string currentState
a string describing the current state of the service
bool IsEqual(OtherObjResult *that)
A function to check for the equality of two objects.
int getNumberOfPrimalVariableValues(int solIdx)
std::string getOtherJobResultValue(int idx)
int getOtherVariableResultEnumerationNumberOfEl(int solIdx, int otherIdx, int enumIdx)
Get the size of an enum associated with an <other> result for some solution.
OptimizationSolution()
Default constructor.
std::string value
value holds a general value associated with a variable, for example, rather than the value of a varia...
bool setRandom(double density, bool conformant, int iMin, int iMax)
A function to make a random instance of this class.
used for throwing exceptions.
OptimizationSolutionStatus * getSolutionStatus(int solIdx)
Get the [i]th optimization solution status, where i equals the given solution index.
std::string getGeneralSubstatusDescription(int i)
Get the i_th general substatus description.
bool setTimingInformation(int idx, std::string type, std::string category, std::string unit, std::string description, double value)
Set timing information.
ENUM_MATRIX_SYMMETRY symmetry
To track the type of symmetry present in the matrix or block.
bool IsEqual(DualVariableValues *that)
A function to check for the equality of two objects.
std::string getUsedDiskSpaceUnit()
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string getUsedCPUSpeedUnit()
bool setTimeStamp(std::string timeStamp)
Set time stamp.
bool setMatrixVariablesOtherResultGeneralAttributes(int solIdx, int idx, std::string name, std::string description, std::string value, std::string type, std::string solver, std::string category, int numberOfMatrixVar=0, std::string matrixType="", int numberOfEnumerations=0, std::string enumType="")
A method to set general attributes for another (non-standard/solver specific) result associated with ...
int getVarValueIdx(int solIdx, int varIdx)
int getVariableNumber()
Get variable number.
std::string description
a description of the solution substatus
bool verifyGeneralResultStatus(std::string status)
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
int numberOfEnumerations
the number of distinct values for this particular type of result
int m_iConstraintNumber
m_iConstraintNumber holds the constraint number.
bool setNumberOfOtherObjectiveResults(int solIdx, int numberOfOtherObjectiveResults)
Set the [i]th optimization solution's other (non-standard/solver specific) objective-related results...
bool setOtherVariableResultNumberOfVar(int solIdx, int otherIdx, int numberOfVar)
Set the number of children of another (non-standard/solver specific) variable-related result...
double value
value of dual variable on the constraint indexed by idx
~SystemResult()
Class destructor.
bool IsEqual(ObjValue *that)
A function to check for the equality of two objects.
std::string getOtherConstraintResultValue(int solIdx, int otherIdx)
OtherResults * otherResults
a pointer to the OtherResults class
std::string getSolutionSubstatusType(int solIdx, int substatusIdx)
bool setOtherConstraintResultConName(int solIdx, int otherIdx, int conIdx, std::string name)
Set the name of another (non-standard/solver specific) constraint-related result, for the [i]th solut...
int numberOfItems
the number of items contained in this otherSolutionResult
bool setOtherObjectiveResultSolver(int solIdx, int otherIdx, std::string solver)
Set the solver of another (non-standard/solver specific) objective-related result, for the [i]th solution, where i equals the given solution index.
a data structure to represent an LP basis on both input and output
bool setAvailableCPUNumberValue(int value)
Set the available number of CPUs.
the StorageCapacity class.
int totalJobsSoFar
total jobs processed so far
std::string unit
the unit in which time is measured
bool setTimeServiceStarted(std::string startTime)
Set the time the service was started.
OtherConResult()
Default constructor.
double value
the number of units of storage capacity
int numberOfObjectives
numberOfObjectives is the number of objective functions reported in the solution. ...
std::string getOtherJobResultName(int idx)
~OtherSolutionResult()
Class destructor.
bool IsEqual(OtherSolverOutput *that)
A function to check for the equality of two objects.
bool setServiceUtilization(double value)
Set the service utilitzation.
int getConstraintNumber()
Get constraint number.
The OtherVariableResult Class.
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
The ObjectiveSolution Class.
std::string getOtherVariableResultVar(int solIdx, int otherIdx, int varIdx)
std::string getOtherObjectiveResultEnumerationDescription(int solIdx, int otherIdx, int enumIdx)
Get the description of an enum associated with an <other> result for some solution.
bool setAvailableDiskSpaceValue(double value)
Set the amount of available disk space.
void fint fint fint real fint real * x
bool setOtherVariableResultCategory(int solIdx, int otherIdx, std::string category)
Set the category of another (non-standard/solver specific) variable-related result, for the [i]th solution, where i equals the given solution index.
std::string returnMatrixTypeString(ENUM_MATRIX_TYPE type)
std::string getOtherConstraintResultDescription(int solIdx, int otherIdx)
double getUsedCPUSpeedValue()
bool setOtherObjectiveResultObjType(int solIdx, int otherIdx, std::string objType)
Set the objType of another (non-standard/solver specific) objective-related result, for the [i]th solution, where i equals the given solution index.
SolverOutput ** solverOutput
solverOutput is a pointer to an array of SolverOutput objects
OptimizationSolutionStatus()
Default constructor.
std::string description
the description of the status
std::string name
the name of the result the user is defining
std::string submitTime
time the job was submitted
bool setRandom(double density, bool conformant)
A function to make a random instance of this class.
std::string getOtherConstraintResultEnumerationValue(int solIdx, int otherIdx, int enumIdx)
Get the value of an enum associated with an <other> result for some solution.
~OtherObjectiveResult()
Class destructor.
bool setAvailableCPUSpeedValue(double value)
Set the available CPU speed.
The OtherSolutionResults Class.
StorageCapacity * availableDiskSpace
a pointer to the DiskSpace class