Package org.powertac.common.msg
Class EconomicControlEvent
java.lang.Object
org.powertac.common.state.XStreamStateLoggable
org.powertac.common.TariffMessage
org.powertac.common.msg.TariffUpdate
org.powertac.common.msg.ControlEvent
org.powertac.common.msg.EconomicControlEvent
- All Implemented Interfaces:
ValidatableMessage
@Domain(fields={"tariffId","curtailmentRatio","timeslotIndex"}) public class EconomicControlEvent extends ControlEvent
Message sent by a broker to the subscribers to a particular tariff, requesting
them to adjust usage against that tariff in the specified timeslot.
The curtailmentRatio parameter specifies the portion of total usage that
will be curtailed for that timeslot, but the actual curtailment is also
constrained by the Rate in effect during that timeslot, so it might be less.
Customer models can interpret this ratio in two ways: First, it might be
that an individual customer reduces usage by that amount over what would
have been used otherwise; second, it might be that the specified proportion
of the population represented by the customer model is completely curtailed
during that timeslot.
If the applicable tariff has one or more RegulationRates, then the
curtailmentRatio value can be used to withdraw energy from storage
(1.0 < ratio <= 2.0), or to deposit energy in storage, thereby
increasing the load (0.0 > ratio >= -1.0). Of course, giving ratio > 1.0
for anything other than a battery-like load will act like ratio = 1.0.
State log fields for readResolve():
new(long tariffId, double curtailmentRatio, long timeslotIndex)
new(long tariffId, double curtailmentRatio, long timeslotIndex)
- Author:
- John Collins
-
Field Summary
-
Constructor Summary
Constructors Modifier Constructor Description protectedEconomicControlEvent()EconomicControlEvent(TariffSpecification tariff, double curtailmentRatio, int timeslotIndex)Creates a new EconomicControlEvent to take effect in the following timeslot. -
Method Summary
Modifier and Type Method Description doublegetCurtailmentRatio()
-
Constructor Details
-
EconomicControlEvent
public EconomicControlEvent(TariffSpecification tariff, double curtailmentRatio, int timeslotIndex)Creates a new EconomicControlEvent to take effect in the following timeslot. Package visibility reflects the fact that this is intended to be called by the factory method in ControlEvent. -
EconomicControlEvent
protected EconomicControlEvent()
-
-
Method Details
-
getCurtailmentRatio
public double getCurtailmentRatio()
-