Class ColdStorage
- java.lang.Object
-
- org.powertac.customer.AbstractCustomer
-
- org.powertac.customer.coldstorage.ColdStorage
-
- All Implemented Interfaces:
CustomerModelAccessor
@Domain @ConfigurableInstance public class ColdStorage extends AbstractCustomer implements CustomerModelAccessor
*** Description is incorrect *** Model of a cold-storage warehouse with multiple refrigeration units. The size of the refrigeration units is specified as stockCapacity. The number is indeterminate - as many as needed will be used, depending on heat loss and current internal temperature. If currentTemp < nominalTemp and falling or steady, then a unit will be de-energized. If currentTemp >= nominalTemp and rising or steady, then another unit will be activated.- Author:
- John Collins
-
-
Field Summary
-
Fields inherited from class org.powertac.customer.AbstractCustomer
allCustomerInfos, customerInfos, name, rs1, service
-
-
Constructor Summary
Constructors Constructor Description ColdStorage()
Default constructor, requires manual setting of nameColdStorage(String name)
Constructor with name
-
Method Summary
-
Methods inherited from class org.powertac.customer.AbstractCustomer
addCustomerInfo, changeSubscription, createTariffEvaluator, getCurrentSubscriptions, getCurrentSubscriptions, getCustId, getCustomerInfo, getCustomerInfoList, getCustomerInfos, getId, getName, getPopulation, lastSunday, nextStartOfDay, saveBootstrapState, setName, setServiceAccessor, setTariffMarket, startOfDay, toString
-
-
-
-
Constructor Detail
-
ColdStorage
public ColdStorage()
Default constructor, requires manual setting of name
-
ColdStorage
public ColdStorage(String name)
Constructor with name
-
-
Method Detail
-
initialize
public void initialize()
- Overrides:
initialize
in classAbstractCustomer
-
getCustomerInfo
public CustomerInfo getCustomerInfo()
- Specified by:
getCustomerInfo
in interfaceCustomerModelAccessor
-
step
public void step()
- Specified by:
step
in classAbstractCustomer
-
evaluateTariffs
public void evaluateTariffs(List<Tariff> tariffs)
- Specified by:
evaluateTariffs
in classAbstractCustomer
-
getCapacityProfile
public CapacityProfile getCapacityProfile(Tariff tariff)
- Specified by:
getCapacityProfile
in interfaceCustomerModelAccessor
-
getBrokerSwitchFactor
public double getBrokerSwitchFactor(boolean isSuperseding)
- Specified by:
getBrokerSwitchFactor
in interfaceCustomerModelAccessor
-
getTariffChoiceSample
public double getTariffChoiceSample()
- Specified by:
getTariffChoiceSample
in interfaceCustomerModelAccessor
-
getInertiaSample
public double getInertiaSample()
- Specified by:
getInertiaSample
in interfaceCustomerModelAccessor
-
getCurrentTemp
public double getCurrentTemp()
-
setCurrentTemp
@StateChange public void setCurrentTemp(double temp)
-
getMinTemp
public double getMinTemp()
-
withMinTemp
@ConfigurableValue(valueType="Double", dump=false, description="minimum allowable temperature") @StateChange public ColdStorage withMinTemp(double temp)
-
getMaxTemp
public double getMaxTemp()
-
withMaxTemp
@ConfigurableValue(valueType="Double", dump=false, description="maximum allowable temperature") @StateChange public ColdStorage withMaxTemp(double temp)
-
getNominalTemp
public double getNominalTemp()
-
setShiftSag
@ConfigurableValue(valueType="Double", description="allowable temperature change to save money on TOU tariffs") @StateChange public void setShiftSag(double deltaT)
-
getShiftSag
public double getShiftSag()
-
setEvalEnvTemp
@ConfigurableValue(valueType="Double", dump=false, description="assumed outdoor temp for tariff evaluation") @StateChange public void setEvalEnvTemp(double temp)
-
getEvalEnvTemp
public double getEvalEnvTemp()
-
withNominalTemp
@ConfigurableValue(valueType="Double", dump=false, description="nominal internal temperature") @StateChange public ColdStorage withNominalTemp(double temp)
-
getNewStockTemp
public double getNewStockTemp()
-
withNewStockTemp
@ConfigurableValue(valueType="Double", dump=false, description="Temperature of incoming stock") @StateChange public ColdStorage withNewStockTemp(double temp)
-
getStockCapacity
public double getStockCapacity()
-
withStockCapacity
@ConfigurableValue(valueType="Double", dump=false, description="Typical inventory in tonnes of H2O") @StateChange public ColdStorage withStockCapacity(double value)
-
getTurnoverRatio
public double getTurnoverRatio()
-
withTurnoverRatio
@ConfigurableValue(valueType="Double", description="Ratio of stock that gets replaced daily") @StateChange public ColdStorage withTurnoverRatio(double ratio)
-
getRoofArea
public double getRoofArea()
-
withRoofArea
@ConfigurableValue(valueType="Double", dump=false, description="Area of roof") @StateChange public ColdStorage withRoofArea(double area)
-
getRoofRValue
public double getRoofRValue()
-
withRoofRValue
@ConfigurableValue(valueType="Double", description="R-value of roof insulation") @StateChange public ColdStorage withRoofRValue(double value)
-
getWallArea
public double getWallArea()
-
withWallArea
@ConfigurableValue(valueType="Double", dump=false, description="Total area of outside walls") @StateChange public ColdStorage withWallArea(double area)
-
getWallRValue
public double getWallRValue()
-
withWallRValue
@ConfigurableValue(valueType="Double", description="R-value of wall insulation") @StateChange public ColdStorage withWallRValue(double value)
-
getFloorRValue
public double getFloorRValue()
-
withFloorRValue
@ConfigurableValue(valueType="Double", description="R-value of floor insulation") @StateChange public ColdStorage withFloorRValue(double value)
-
getInfiltrationRatio
public double getInfiltrationRatio()
-
withInfiltrationRatio
@ConfigurableValue(valueType="Double", dump=false, description="Infiltration loss as proportion of wall + roof loss") @StateChange public ColdStorage withInfiltrationRatio(double value)
-
getUnitSize
public double getUnitSize()
-
withUnitSize
@ConfigurableValue(valueType="Double", dump=false, description="Thermal capacity in tons of cooling plant") @StateChange public ColdStorage withUnitSize(double cap)
-
getCop
public double getCop()
-
withCop
@ConfigurableValue(valueType="Double", dump=false, description="Coefficient of Performance of refrigeration unit") @StateChange public ColdStorage withCop(double value)
-
getHysteresis
public double getHysteresis()
-
withHysteresis
@ConfigurableValue(valueType="Double", dump=false, description="Control range for refrigeration unit") @StateChange public ColdStorage withHysteresis(double value)
-
getNonCoolingUsage
public double getNonCoolingUsage()
-
withNonCoolingUsage
@ConfigurableValue(valueType="Double", dump=false, description="Mean hourly energy usage for non-cooling purposes") @StateChange public ColdStorage withNonCoolingUsage(double value)
-
getShiftingInconvenienceFactor
public double getShiftingInconvenienceFactor(Tariff tariff)
- Specified by:
getShiftingInconvenienceFactor
in interfaceCustomerModelAccessor
-
-