@Domain @ConfigurableInstance public class Genco extends Broker
| Modifier and Type | Field and Description |
|---|---|
protected BrokerProxy |
brokerProxyService |
protected RandomSeed |
seed |
| Modifier and Type | Method and Description |
|---|---|
void |
generateOrders(org.joda.time.Instant now,
List<Timeslot> openSlots)
Generates Orders in the market to sell available capacity.
|
double |
getCarbonEmissionRate()
Rate at which this plant emits carbon, relative to a coal-fired
thermal plant.
|
int |
getCommitmentLeadtime()
Leadtime to commit energy from this plant, expressed in number of
timeslots.
|
double |
getCost()
Ask price for energy from this plant.
|
double |
getNominalCapacity()
Nominal or mean capacity of plant.
|
double |
getReliability()
Probability that this plant will submit asks in any given timeslot
|
double |
getVariability()
Maximim amount by which capacity can change/timeslot in random walk.
|
void |
init(BrokerProxy proxy,
int seedId,
RandomSeedRepo randomSeedRepo) |
boolean |
isInOperation()
True if plant is currently operating
|
void |
setCurrentCapacity(double val) |
void |
setInOperation(boolean op) |
void |
updateModel(org.joda.time.Instant currentTime)
Updates this model for the current timeslot, by adjusting
capacity, checking for downtime, and creating exogenous
commitments.
|
Genco |
withCarbonEmissionRate(double rate)
Fluent setter for carbonEmissionRate.
|
Genco |
withCommitmentLeadtime(int leadtime)
Fluent setter for commitment leadtime.
|
Genco |
withCost(double cost)
Fluent setter for nominal capacity
|
Genco |
withNominalCapacity(double capacity)
Fluent setter for nominal capacity
|
Genco |
withReliability(double reliability)
Fluent setter for reliability.
|
Genco |
withVariability(double var)
Fluent setter for variability.
|
addMarketPosition, addMarketPosition, findMarketPositionByTimeslot, findMarketPositionByTimeslot, getCashBalance, getId, getIdPrefix, getKey, getPassword, getUsername, isEnabled, isLocal, isWholesale, receiveMessage, setEnabled, setIdPrefix, setKey, setLocal, setPassword, setQueueName, setWholesale, toQueueName, toString, updateCashprotected BrokerProxy brokerProxyService
protected RandomSeed seed
public Genco(String username)
public void init(BrokerProxy proxy, int seedId, RandomSeedRepo randomSeedRepo)
public boolean isInOperation()
public double getNominalCapacity()
@ConfigurableValue(valueType="Double", description="nominal output capacity of this genco in MW") @StateChange public Genco withNominalCapacity(double capacity)
public double getCost()
@ConfigurableValue(valueType="Double", description="minimum payment/mwh needed to operate this plant") @StateChange public Genco withCost(double cost)
public double getVariability()
@ConfigurableValue(valueType="Double", description="max ratio for a step in capacity random walk") @StateChange public Genco withVariability(double var)
public double getReliability()
@ConfigurableValue(valueType="Double", description="probability that plant will participate in wholesale market") @StateChange public Genco withReliability(double reliability)
public int getCommitmentLeadtime()
@ConfigurableValue(valueType="Integer", description="minimum leadtime for first commitment, in hours") @StateChange public Genco withCommitmentLeadtime(int leadtime)
public double getCarbonEmissionRate()
@ConfigurableValue(valueType="Double", description="carbon emissions/mwh, relative to coal-fired plant") @StateChange public Genco withCarbonEmissionRate(double rate)
public void updateModel(org.joda.time.Instant currentTime)
public void generateOrders(org.joda.time.Instant now,
List<Timeslot> openSlots)
@StateChange public void setCurrentCapacity(double val)
@StateChange public void setInOperation(boolean op)
Copyright © 2017 Power TAC. All rights reserved.