-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Slack distribution on generators (optionally) only considering generators on voltage control #1063
base: main
Are you sure you want to change the base?
Conversation
|
* If a generator voltage control is enabled in input data but internally disabled due to a consistency check, | ||
(see e.g. `reactiveRangeCheckMode` and `disableVoltageControlOfGeneratorsOutsideActivePowerLimits`), | ||
then no slack distribution will occur for that generator. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not sure this is right, changing PR to WIP
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is not right, or say, not what I need. I need to consider only the input setting of the generator.
// check first if generator: | ||
// - is set to be participating | ||
// - and if option is set to distribute only on generators on voltage control | ||
if (!generator.isParticipating() || |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At each distribution outer loop, the controlled buses are changing (PV buses) so are the associated controller buses too. If you want a dynamic behavior, you must prefer using the method isGeneratorVoltageControlEnabled()
from the controller bus (even if in case of remote voltage control? It is not the PV bus...). If you don't want a dynamic behavior, I think you can use the type (but without a dedicated method called `hasVoltageControl' because we have too much and we have tried to make the difference between voltage control, controllers and controlled buses).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't want dynamic behavior. Also I fear that doing this would result in "distributed slack" and "reactive limits" fighting each other.
But checking again my requirements, the hasVoltageControl
as currently implemented is not what I need functionally speaking, i need usage of the "raw" voltageRegulatorOn generator status.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So, maybe you have to add a new type because "OFF" can mean off in input data and off because checks are not passing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes exactly, this is why I wrote #1063 (comment) ...
but I am wondering if this is a feature we want in OLF or if we want to leave this feature outside ... it is quite easy to disable slack distribution on a generator via ActivePowerControl extension ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry I miss that, yes if you only need IIDM "voltageRegulatorOn" status, better try first to use active power control extension.
Please check if the PR fulfills these requirements
Does this PR already have an issue describing the problem?
No
What kind of change does this PR introduce?
Feature
What is the current behavior?
List of generators participating in slack distribution does not consider whether the generator is on voltage control.
What is the new behavior (if this is a feature change)?
We can restrict the list of generators participating in slack distribution to generators on voltage control.
Does this PR introduce a breaking change or deprecate an API?
Other information:
Motivation: European Merging Function Requirements Specification v3, page 40, option
generation distribution active power and voltage nodes only
.generation distribution active power ...
suggests this option should apply only for Balance TypePROPORTIONAL_TO_GENERATION_P
, but in this PR we allow also to restrict also for the other possible Balance Types involving generators (todayPROPORTIONAL_TO_GENERATION_P_MAX
,PROPORTIONAL_TO_GENERATION_REMAINING_MARGIN
,PROPORTIONAL_TO_GENERATION_PARTICIPATION_FACTOR
)