Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
Antares::Data::ThermalCluster Class Referencefinal

A single thermal cluster. More...

#include <cluster.h>

Inheritance diagram for Antares::Data::ThermalCluster:
Antares::Data::Cluster

Classes

struct  DivModulation
 

Public Types

enum  ThermalDispatchableGroup {
  thermalDispatchGrpNuclear = 0 , thermalDispatchGrpLignite , thermalDispatchGrpHardCoal , thermalDispatchGrpGas ,
  thermalDispatchGrpOil , thermalDispatchGrpMixedFuel , thermalDispatchGrpOther1 , thermalDispatchGrpOther2 ,
  thermalDispatchGrpOther3 , thermalDispatchGrpOther4 , groupMax
}
 
using Set = std::set<ThermalCluster*, CompareClusterName>
 Set of thermal clusters.
 
using SetPointer = std::set<ThermalCluster*>
 Set of thermal clusters (pointer)
 
using Vector = std::vector<Data::ThermalCluster*>
 Vector of thermal clusters.
 
- Public Types inherited from Antares::Data::Cluster
using Set = std::set<Cluster*, CompareClusterName>
 

Public Member Functions

 ThermalCluster (Data::Area *parent)
 
bool forceReload (bool reload) const override
 Invalidate all data associated to the thermal cluster.
 
void markAsModified () const override
 Mark the thermal cluster as modified.
 
void reset () override
 Reset to default values.
 
void setGroup (Data::ClusterName newgrp) override
 Set the group.
 
Spinning
void calculationOfSpinning ()
 Calculation of spinning.
 
void reverseCalculationOfSpinning ()
 Calculation of spinning (reverse)
 
bool integrityCheck () override
 Check and fix all values of a thermal cluster.
 
void copyFrom (const ThermalCluster &cluster)
 Copy data from another cluster.
 
uint groupId () const override
 Group ID as an uint.
 
- Public Member Functions inherited from Antares::Data::Cluster
 Cluster (Area *parent)
 
const ClusterName & id () const
 
const ClusterName & group () const
 
const ClusterName & name () const
 
void setName (const AnyString &newname)
 
Yuni::String getFullName () const
 
void invalidateArea ()
 Invalidate the whole attached area.
 
bool isVisibleOnLayer (const size_t &layerID) const
 Check wether the cluster is visible in a layer (it's parent area is visible in the layer)
 
bool saveDataSeriesToFolder (const AnyString &folder) const
 
bool loadDataSeriesFromFolder (Study &s, const std::filesystem::path &folder)
 
bool isEnabled () const
 

Static Public Member Functions

static const char * GroupName (enum ThermalDispatchableGroup grp)
 Get the group name string.
 

Public Attributes

Pollutant emissions
 
PMin
double minStablePower = 0.
 Min. Stable Power (MW)
 
struct Antares::Data::ThermalCluster::DivModulation minDivModulation
 
uint minUpTime = 1
 Min. Up time (1..168)
 
uint minDownTime = 1
 Min. Down time (1..168)
 
uint minUpDownTime
 Max entre . minUp/minDown time (1..168)
 
double spinning = 0.
 Spinning (%)
 
double fuelEfficiency = 100
 Efficiency (%)
 
double forcedVolatility = 0.
 Forced Volatility.
 
double plannedVolatility = 0.
 Planned volatility.
 
StatisticalLaw forcedLaw = LawUniform
 Law (ts-generator)
 
StatisticalLaw plannedLaw = LawUniform
 Law (ts-generator)
 
- Public Attributes inherited from Antares::Data::Cluster
uint unitCount = 0
 
bool enabled = true
 
AreaparentArea
 The associate area (alias)
 
double nominalCapacity = 0.
 Capacity of reference per unit (MW) (pMax)
 
unsigned int areaWideIndex = (uint)-1
 The index of the cluster from the area's point of view.
 
unsigned int enabledIndex = (uint)-1
 
TimeSeriesNumbers tsNumbers
 tsNumbers must be constructed before series
 
TimeSeries series
 Series.
 
Matrix modulation
 Modulation matrix.
 

validity of Min Stable Power

uint index = 0
 The index of the cluster (within a list)
 
ThermalDispatchableGroup groupID = thermalDispatchGrpOther1
 The group ID.
 
bool mustrun = false
 Mustrun.
 
bool mustrunOrigin = false
 Mustrun (as it were at the loading of the data)
 
double nominalCapacityWithSpinning = 0.
 Nominal capacity - spinning (solver only)
 
void calculatMinDivModulation ()
 Calculte the minimum modulation/ceil(modulation) from 8760 capacity modulation.
 
bool checkMinStablePower ()
 Check the validity of Min Stable Power.
 
bool checkMinStablePowerWithNewModulation (uint idx, double value)
 Check the validity of Min Stable Power with a new modulation value.
 
bool doWeGenerateTS (bool globalTSgeneration) const
 
void checkAndCorrectAvailability ()
 
bool isActive () const
 
bool isMustRun () const
 

Costs

CostGeneration costgeneration = setManually
 Cost generation.
 
double marginalCost = 0
 Marginal cost (euros/MWh)
 
double spreadCost = 0
 Spread (euros/MWh)
 
double fixedCost = 0
 Fixed cost (euros/hour)
 
double startupCost = 0
 Startup cost (euros/startup)
 
double marketBidCost = 0
 Market bid cost (euros/MWh)
 
double variableomcost = 0
 Variable O&M cost (euros/MWh)
 
std::vector< double > PthetaInf
 thermalMinGenModulation vector used in solver only to store the year values 8760 vector PthetaInf[hour]
 
std::unique_ptr< PreproAvailabilityprepro
 Data for the preprocessor.
 
EconomicInputData ecoInput
 
LocalTSGenerationBehavior tsGenBehavior = LocalTSGenerationBehavior::useGlobalParameter
 
class ThermalClusterList
 
unsigned int precision () const override
 
CostProvidergetCostProvider ()
 

Additional Inherited Members

- Protected Attributes inherited from Antares::Data::Cluster
Data::ClusterName pName
 
Data::ClusterName pID
 
Data::ClusterName pGroup
 

Detailed Description

A single thermal cluster.

Member Enumeration Documentation

◆ ThermalDispatchableGroup

Enumerator
thermalDispatchGrpNuclear 

Nuclear.

thermalDispatchGrpLignite 

Lignite.

thermalDispatchGrpHardCoal 

Hard Coal.

thermalDispatchGrpGas 

Gas.

thermalDispatchGrpOil 

Oil.

thermalDispatchGrpMixedFuel 

Mixed fuel.

thermalDispatchGrpOther1 

Other 1.

thermalDispatchGrpOther2 

Other 2.

thermalDispatchGrpOther3 

Other 3.

thermalDispatchGrpOther4 

Other 4.

groupMax 

The highest value.

Member Function Documentation

◆ calculationOfSpinning()

void Antares::Data::Data::ThermalCluster::calculationOfSpinning ( )

Calculation of spinning.

The formula is : TS[i,j] = TS[i,j] * (1 - Spinning / 100)

◆ copyFrom()

void Antares::Data::Data::ThermalCluster::copyFrom ( const ThermalCluster & cluster)

Copy data from another cluster.

The name and the id will remain untouched.

◆ forceReload()

bool Antares::Data::Data::ThermalCluster::forceReload ( bool reload) const
overridevirtual

Invalidate all data associated to the thermal cluster.

Implements Antares::Data::Cluster.

◆ groupId()

uint Antares::Data::ThermalCluster::groupId ( ) const
overridevirtual

Group ID as an uint.

Implements Antares::Data::Cluster.

◆ GroupName()

const char * Antares::Data::Data::ThermalCluster::GroupName ( enum ThermalDispatchableGroup grp)
static

Get the group name string.

Returns
A valid CString

◆ integrityCheck()

bool Antares::Data::Data::ThermalCluster::integrityCheck ( )
overridevirtual

Check and fix all values of a thermal cluster.

Returns
False if an error has been detected and fixed with a default value

Implements Antares::Data::Cluster.

◆ markAsModified()

void Antares::Data::Data::ThermalCluster::markAsModified ( ) const
overridevirtual

Mark the thermal cluster as modified.

Implements Antares::Data::Cluster.

◆ precision()

unsigned int Antares::Data::ThermalCluster::precision ( ) const
overridevirtual

◆ reset()

void Antares::Data::Data::ThermalCluster::reset ( )
overridevirtual

Reset to default values.

This method should only be called from the GUI

Reimplemented from Antares::Data::Cluster.

◆ reverseCalculationOfSpinning()

void Antares::Data::Data::ThermalCluster::reverseCalculationOfSpinning ( )

Calculation of spinning (reverse)

The original formula for the calculation of the spinning is : TS[i,j] = TS[i,j] * (1 - Spinning / 100)

This method is used to removed the spinning, before exporting the TS matrices into the input.

◆ setGroup()

void Antares::Data::Data::ThermalCluster::setGroup ( Data::ClusterName newgrp)
overridevirtual

Set the group.

Implements Antares::Data::Cluster.

Member Data Documentation

◆ groupID

ThermalDispatchableGroup Antares::Data::ThermalCluster::groupID = thermalDispatchGrpOther1

The group ID.

This value is computed from the field 'group' in 'group()

See also
group()

The documentation for this class was generated from the following files: