Overview | Group | Tree | Graph | Index | Concepts |
An instance of the class IloReservoir
represents a resource
for which activities can both provide capacity and also require capacity. If
a maximal capacity of the reservoir is defined, then this maximal capacity,
or level, will never be exceeded.
When the model of your problem represents an ongoing process, you may be
faced with the fact that a reservoir level already exists. You can simply
pass an initial level like that to the constructor of
IloReservoir
or use the IloReservoir::setInitialLevel
(IloNum)
member function.
The level of a reservoir can vary over time. You can define temporary
maximal and minimal levels by using member functions of
IloReservoir
.
Parameter classes
Minimal and maximal capacity: (class IloNumToNumStepFunction
)
These parameters describe the minimal and maximal levels over time. They
are directly modified by the member functions IloReservoir::setLevelMin
and IloReservoir::setLevelMax
.
IloNumToNumStepFunction
is documented in the extensions section of the
IBM ILOG Concert Technology Reference Manual.
Refer to Scheduler Overview for more information on how to share parameters among resources, and how the direct modification of parameters through the resource API may affect them.
See Also:
IloEnforcementLevel, IloCapResource, IloResourceConstraint
Constructor Summary | |
---|---|
public | IloReservoir() |
public | IloReservoir(IloReservoirI * impl) |
public | IloReservoir(const IloEnv env, IloNum capacity=IloMaxCapacityReservoir, IloNum initialLevel=0, const char * name=0) |
Method Summary | |
---|---|
public IloReservoirI * | getImpl() const |
public IloNum | getInitialLevel() const |
public IloNum | getLevelMax(IloNum time) const |
public IloNum | getLevelMaxMax(IloNum timeMin, IloNum timeMax) const |
public IloNum | getLevelMaxMin(IloNum timeMin, IloNum timeMax) const |
public IloNum | getLevelMin(IloNum time) const |
public IloNum | getLevelMinMax(IloNum timeMin, IloNum timeMax) const |
public IloNum | getLevelMinMin(IloNum timeMin, IloNum timeMax) const |
public void | setInitialLevel(IloNum level) const |
public void | setLevelMax(IloNum timeMin, IloNum timeMax, IloNum level) const |
public void | setLevelMaxParam(const IloNumToNumStepFunction tfp) const |
public void | setLevelMin(IloNum timeMin, IloNum timeMax, IloNum level) const |
public void | setLevelMinParam(const IloNumToNumStepFunction tfp) const |
Constructor Detail |
---|
This constructor creates a new instance of IloReservoir
and
adds it to the set of resources managed in the given environment. The
capacity
argument expresses the capacity of the new reservoir.
The capacity may be consumed by certain activities and produced by others.
The argument initialLevel
defines an initial amount in the
reservoir at the time origin of the schedule environment. By default, the
reservoir is assumed to be empty at the time origin; that is, the initial
level is 0 (zero). If the argument name
is defined, it is
assigned as the name of the newly created reservoir.
Method Detail |
---|
This member function returns the initial level of the reservoir.
This member function returns the maximal reservoir level that is present
at the given time
.
This member function returns the maximal value of the reservoir level
over the interval [timeMin, timeMax)
(that is, the maximal value
over the interval [timeMin, timeMax)
of the maximal reservoir
level).
This member function returns the maximal value of the minimal reservoir
level, over the interval [timeMin, timeMax)
.
This member function returns the minimal level of the invoking reservoir
present at the given time
.
This member function returns the minimal value over the interval
[timeMin, timeMax)
of the maximal reservoir level.
This member function returns the minimal reservoir level throughout the
interval [timeMin, timeMax)
(that is, the minimal value over the
interval [timeMin, timeMax)
of the minimal reservoir
capacity).
This member function sets the initial level of the reservoir.
This member function states that the level of the reservoir can be at
most level
throughout the interval [timeMin,
timeMax)
.
This member function sets the maximal reservoir level over time to be the
function defined in tfp
.
This member function states that the level of the reservoir must be at
least level
throughout the interval [timeMin
timeMax)
.
This member function sets the minimal reservoir level over time to be the
function defined in tfp
.