Tuong Nguyen
posted this
11 August 2016
- Last edited 15 August 2016
Hi All,
I just recieved an email from a market participant asking if there is a manageable way to create more NIRM test cases based on the currently available daily gdx files?
The differences between the NIRM gdx and current gdx are the new parameters that required for NIRM model. In order to test NIRM using the current daily gdx, user need to modify the code in vSPDSolve.gms file (located under Program folder) so that vSPD program will not load the new parameters from gdx files but the values of new parameters are entered mannually.
The snippet of vSPDSolve code below illustrate how to test vSPD_NIRM using current daily gdx. The italic code is removed (commented out) and the bold code are added to enter the values of new parameters mannually.
* NIRM - Loading data for reserve sharing
if( UseShareReserve,
$ontext
execute_load i_tradePeriodFKCEnabled, i_tradePeriodRPStatus
i_tradePeriodReserveRoundPower, i_tradePeriodReserveSharing
i_tradePeriodModulationRisk, i_tradePeriodRoundPower2Mono
i_tradePeriodBipole2Mono, i_tradePeriodReserveSharingPoleMin
i_tradePeriodHVDCcontrolBand, i_tradePeriodHVDCcableDischarge
i_tradePeriodHVDClossScalingFactor, i_tradePeriodReserveEffectiveFactor
i_tradePeriodSharedNFRfactor, i_tradePeriodSharedNFRLoadOffset ;
$offtext
i_tradePeriodFKCEnabled(tp) = 1 ;
i_tradePeriodRPStatus(tp) = 1 ;
i_tradePeriodReserveRoundPower(tp,resC) = 1 ;
i_tradePeriodReserveSharing(tp,resC) = 1 ;
i_tradePeriodModulationRisk(tp,riskC) = 30 ;
i_tradePeriodRoundPower2Mono(tp) = 52.5 ;
i_tradePeriodBipole2Mono(tp) = 190 ;
i_tradePeriodReserveSharingPoleMin(tp) = 35 ;
i_tradePeriodHVDCcontrolBand(tp,fd) = 250 ;
i_tradePeriodHVDCcableDischarge(tp) = 0 ;
i_tradePeriodHVDClossScalingFactor(tp) = 1 ;
i_tradePeriodSharedNFRfactor(tp) = 0.01 ;
i_tradePeriodReserveEffectiveFactor(tp,ild,resC,riskC) = 0.8;
i_tradePeriodSharedNFRloadOffset(tp,'SI') = 500 ;
else
i_tradePeriodFKCEnabled(tp) = 0 ;
i_tradePeriodRPStatus(tp) = 0 ;
i_tradePeriodReserveRoundPower(tp,resC) = 0 ;
i_tradePeriodReserveSharing(tp,resC) = 0 ;
i_tradePeriodModulationRisk(tp,riskC) = 0 ;
i_tradePeriodRoundPower2Mono(tp) = 0 ;
i_tradePeriodBipole2Mono(tp) = 0 ;
i_tradePeriodReserveSharingPoleMin(tp) = 0 ;
i_tradePeriodHVDCcontrolBand(tp,fd) = 0 ;
i_tradePeriodHVDCcableDischarge(tp) = 0 ;
i_tradePeriodHVDClossScalingFactor(tp) = 0 ;
i_tradePeriodSharedNFRfactor(tp) = 0 ;
i_tradePeriodReserveEffectiveFactor(tp,ild,resC,riskC) = 0 ;
i_tradePeriodSharedNFRloadOffset(tp,'SI') = 500 ;
) ;
Please note that the current vSPD_NIRM is only for testing and there can be changes in the future.
If you have any issues or questions, post them in the forum and we'll take a look.
Note that the current system has static reserve share on HVDC. We need to subtract this static reserve sharing amount from net free reserve when applying NIRM to the current FP. Failing to do this will over-estimate the benefit of NIRM.
Hope this helps
Tuong Nguyen