Class COptQuestTimeSeriesVectorVariable
longScale ×
shortScale values. The engine arranges the values row by row as a
longScale by shortScale matrix, and the matrix is a constant plus a
correction of low rank. Use a time-series vector variable when the decision is a long sequence
with a repeating pattern, such as hourly values over many days.
In every solution that the engine generates, every value is from min to max,
and the matrix is the constant matrix (min + max) / 2 plus a correction of rank
at most rank.
The value of rank is the number of patterns that the engine can combine. With days as
rows and hours as columns and rank 1, each day is the middle value (min + max) /
2 plus one pattern over the hours, multiplied by an amount that can differ from day to day. So
every day has the same shape, and the size of the change can differ from day to day. With each
extra unit of rank, the engine can combine one more pattern. With rank 0, every value is the
middle value.
Variable names: <name>@1 to <name>@n, where n is longScale
× shortScale. Names are in row order. With days as rows and hours as columns, the
first shortScale names are the hours of day 1, the next shortScale names are the
hours of day 2, and so on. Hour h of day d is <name>@k, where k is (d - 1) ×
shortScale + h, with d and h counted from 1.
In most programs, you add this variable with
OptQuestModel.AddTimeSeriesVectorVariable
and read its values with OptQuestSolution.GetValue(String) and the generated names.
Construct this class only when you add the variable with
COptQuestOptimization.AddVariable(COptQuestVariable).
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCOptQuestTimeSeriesVectorVariable(String name, int longScale, int shortScale, int rank, double min, double max) Creates a time-series vector variable. -
Method Summary
Modifier and TypeMethodDescriptionReturns an empty list, because a time-series vector variable has no ordinary input variables.Returns an empty list, because a time-series vector variable has no output variables.Returns the decision values of this manifold variable that are not ordinary decision variables.Methods inherited from class com.opttek.optquest.COptQuestManifoldVariable
getConstraintsMethods inherited from class com.opttek.optquest.COptQuestUserControlledVariable
GetReplicationStatistic, GetReplicationStatisticValue, SetExclusiveRange, SetLowerBound, SetReplicationStatistic, SetUpperBoundMethods inherited from class com.opttek.optquest.COptQuestVariable
equals, GetDOELowerBound, GetDOEUpperBound, GetExclusiveLowerBoundAt, GetExclusiveUpperBoundAt, getID, GetLowerBound, GetName, GetNumberOfExclusiveRanges, GetStepSize, GetSuggestedValue, GetUpperBound, getVarRange, hashCode, isZeroOne, SetName
-
Constructor Details
-
COptQuestTimeSeriesVectorVariable
public COptQuestTimeSeriesVectorVariable(String name, int longScale, int shortScale, int rank, double min, double max) throws COptQuestException Creates a time-series vector variable.- Parameters:
name- base name of the variablelongScale- number of rows of the matrix, for example the number of days; must be at least 1shortScale- number of columns of the matrix, for example the number of hours in a day; must be at least 1rank- largest rank of the correction. A value greater than the number of rows or columns is reduced to it. With a value of 0 or less, the matrix is constant.min- lower bound of every elementmax- upper bound of every element- Throws:
COptQuestException- ifminormaxis NaN, or ifminis greater thanmax
-
-
Method Details
-
getInputVariables
Returns an empty list, because a time-series vector variable has no ordinary input variables.The values of a time-series vector variable are in the list that
getProjectedInputVariables()returns. That list has the variables<name>@1to<name>@n, where n islongScale×shortScale.- Returns:
- an empty list
-
getOutputVariables
Returns an empty list, because a time-series vector variable has no output variables.The values of a time-series vector variable are in the list that
getProjectedInputVariables()returns. That list has the variables<name>@1to<name>@n, where n islongScale×shortScale.- Returns:
- an empty list
-
getProjectedInputVariables
Description copied from class:COptQuestManifoldVariableReturns the decision values of this manifold variable that are not ordinary decision variables.For example, an angle variable returns
angle@theta, and a mixture variable returns onemix@<component>name for each component. In every solution that the engine generates, and in every suggested solution, these values are inside the set of the variable. Your evaluator reads them as inputs:OptQuestSolution.GetInputNames()returns them.A constraint that uses one of these names is checked after the evaluation, like a constraint on an output. Your evaluator can receive values that break the constraint, and the solution is then infeasible.
- Specified by:
getProjectedInputVariablesin classCOptQuestManifoldVariable- Returns:
- fixed-size or immutable list of these variables; never
null
-