You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Long ago I wrote some code for accounting for 1) increased fuel use rate at lower average loads and 2) allowing retrofitting of existing tech capacity with an additional capital investment (in practice, the latter works so that part of the existing capacity is removed and replaced by a corresponding amount with enhanced features, with an additional capital investment). I was just now wondering whether these may be useful features to have on a branch, for some applications?
I copy-paste the formulations I had written as they are. Here you find all the documentation. They fit the long code. https://www.politesi.polimi.it/handle/10589/117564
The increased fuel use rate was based on Manuel Welsch's additional equations on ramping, and looks roughly like this (can be simplified and adapted to the master): s.t. R30_PartialLoad{r in REGION, t in TECHNOLOGY, l in TIMESLICE, f in FUEL, y in YEAR: ElectricityForTransmissionTag[r,f]=1 }: OnlineCapacity[r,t,l,y]* CapacityToActivityUnit[r,t] - RateOfProductionByTechnology[r,t,l,f,y] = LoadPartialisation[r,t,l,y]; s.t. EBa5_RateOfFuelUse2{r in REGION, t in TECHNOLOGY, l in TIMESLICE, f in FUEL, y in YEAR}: sum{m in MODE_OF_OPERATION: InputActivityRatio[r,t,f,m,y]<>0} RateOfUseByTechnologyByMode[r,t,l,f,m,y] + LoadPartialisation[r,t,l,y]* AdditionalFuelUse[r,t,f,y] = RateOfUseByTechnology[r,t,l,f,y];
The retrofit is way more convoluted (maybe there are simpler ways), but anyway already fits with the master I think, and looks like this: s.t. CAa5_Accumulated_Withdrawn_Capacity{r in REGION, t in TECHNOLOGY, y in YEAR}: AccumulatedWithdrawnCapacity[r,t,y]= sum{yy in YEAR: y-yy>=0} WithdrawnCapacity[r,t,yy]; s.t. CAa6_AccumulatedRetiredCapacity{r in REGION, t in TECHNOLOGY, y in YEAR}: AccumulatedRetiredCapacity[r,t,y] = sum{yy in YEAR: y-yy>=0 && (yy +1)<= (max{yyy in YEAR} max(yyy))}(ResidualCapacity[r,t,yy] - if ResidualCapacity[r,t,yy+1] <=ResidualCapacity[r,t,yy] then ResidualCapacity[r,t,yy+1] else ResidualCapacity[r,t,yy]); s.t. CAa7_Accumulated_Withdrawn_Capacity2{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR: (y+1) <= (max{yy in YEAR}max(yy))}: AccumulatedWithdrawnCapacity[r,t,y+1] >= AccumulatedRetiredCapacity[r,t,y]; s.t. CAa8_Withdrawn_Capacity{r in REGION, t in TECHNOLOGY, y in YEAR: (y+1) <= (max{yy in YEAR}max(yy))}: WithdrawnCapacity[r,t,y+1] <= TotalCapacityAnnual[r,t,y]-AccumulatedNewCapacity[r,t,y]; s.t. CAa9_Balance_old_retrofitted{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR: RetrofitLink[r,t,tt]=1}: TotalCapacityAnnual[r,t,y] + TotalCapacityAnnual[r,tt,y] - AccumulatedNewCapacity[r,t,y] - AccumulatedNewCapacity[r,tt,y] = ResidualCapacity[r,t,y]+ResidualCapacity[r,tt,y]; s.t. CAa10_AccumulatedRetrofittedCapacity{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR}: AccumulatedRetrofittedCapacity[r,t,y] = sum{yy in YEAR: y-yy>=0 && (y-(min{yyy in YEAR}min(yyy)))<=OperationalLife[r,t]}RetrofittedCapacity[r,t,yy]; s.t. CAa11_RetrofittedCapacity{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR}: (WithdrawnCapacity[r,t,y]-RetrofittedCapacity[r,tt,y])*RetrofitLink[r,t,tt]>=0;
The text was updated successfully, but these errors were encountered:
Long ago I wrote some code for accounting for 1) increased fuel use rate at lower average loads and 2) allowing retrofitting of existing tech capacity with an additional capital investment (in practice, the latter works so that part of the existing capacity is removed and replaced by a corresponding amount with enhanced features, with an additional capital investment). I was just now wondering whether these may be useful features to have on a branch, for some applications?
I copy-paste the formulations I had written as they are. Here you find all the documentation. They fit the long code.
https://www.politesi.polimi.it/handle/10589/117564
The increased fuel use rate was based on Manuel Welsch's additional equations on ramping, and looks roughly like this (can be simplified and adapted to the master):
s.t. R30_PartialLoad{r in REGION, t in TECHNOLOGY, l in TIMESLICE, f in FUEL, y in YEAR: ElectricityForTransmissionTag[r,f]=1 }: OnlineCapacity[r,t,l,y]* CapacityToActivityUnit[r,t] - RateOfProductionByTechnology[r,t,l,f,y] = LoadPartialisation[r,t,l,y];
s.t. EBa5_RateOfFuelUse2{r in REGION, t in TECHNOLOGY, l in TIMESLICE, f in FUEL, y in YEAR}: sum{m in MODE_OF_OPERATION: InputActivityRatio[r,t,f,m,y]<>0} RateOfUseByTechnologyByMode[r,t,l,f,m,y] + LoadPartialisation[r,t,l,y]* AdditionalFuelUse[r,t,f,y] = RateOfUseByTechnology[r,t,l,f,y];
The retrofit is way more convoluted (maybe there are simpler ways), but anyway already fits with the master I think, and looks like this:
s.t. CAa5_Accumulated_Withdrawn_Capacity{r in REGION, t in TECHNOLOGY, y in YEAR}: AccumulatedWithdrawnCapacity[r,t,y]= sum{yy in YEAR: y-yy>=0} WithdrawnCapacity[r,t,yy]; s.t. CAa6_AccumulatedRetiredCapacity{r in REGION, t in TECHNOLOGY, y in YEAR}: AccumulatedRetiredCapacity[r,t,y] = sum{yy in YEAR: y-yy>=0 && (yy +1)<= (max{yyy in YEAR} max(yyy))}(ResidualCapacity[r,t,yy] - if ResidualCapacity[r,t,yy+1] <=ResidualCapacity[r,t,yy] then ResidualCapacity[r,t,yy+1] else ResidualCapacity[r,t,yy]); s.t. CAa7_Accumulated_Withdrawn_Capacity2{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR: (y+1) <= (max{yy in YEAR}max(yy))}: AccumulatedWithdrawnCapacity[r,t,y+1] >= AccumulatedRetiredCapacity[r,t,y]; s.t. CAa8_Withdrawn_Capacity{r in REGION, t in TECHNOLOGY, y in YEAR: (y+1) <= (max{yy in YEAR}max(yy))}: WithdrawnCapacity[r,t,y+1] <= TotalCapacityAnnual[r,t,y]-AccumulatedNewCapacity[r,t,y]; s.t. CAa9_Balance_old_retrofitted{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR: RetrofitLink[r,t,tt]=1}: TotalCapacityAnnual[r,t,y] + TotalCapacityAnnual[r,tt,y] - AccumulatedNewCapacity[r,t,y] - AccumulatedNewCapacity[r,tt,y] = ResidualCapacity[r,t,y]+ResidualCapacity[r,tt,y]; s.t. CAa10_AccumulatedRetrofittedCapacity{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR}: AccumulatedRetrofittedCapacity[r,t,y] = sum{yy in YEAR: y-yy>=0 && (y-(min{yyy in YEAR}min(yyy)))<=OperationalLife[r,t]}RetrofittedCapacity[r,t,yy]; s.t. CAa11_RetrofittedCapacity{r in REGION, t in TECHNOLOGY, tt in TECHNOLOGY, y in YEAR}: (WithdrawnCapacity[r,t,y]-RetrofittedCapacity[r,tt,y])*RetrofitLink[r,t,tt]>=0;
The text was updated successfully, but these errors were encountered: