powsybl / powsybl-open-loadflow

An open source loadflow based on PowSyBl
Mozilla Public License 2.0
47 stars 7 forks source link

Shared local control for generators not working #45

Closed annetill closed 4 years ago

annetill commented 4 years ago

It could be considered as a bug.

It seems that a shared control at local common local bus for generators is not working when the parameter "GeneratorVoltageRemoteControl" is active.

The use case is the one used in tutorial "cgmes". The open load flow parameters should be:

OpenLoadFlowParameters openLoadFlowParameters = new OpenLoadFlowParameters().setGeneratorVoltageRemoteControl(true);

If we set:

networkBe.getGenerator("_3a3b27be-b18b-4385-b557-6735d733baf0").setVoltageRegulatorOn(false);

we should obtain the same results as if

OpenLoadFlowParameters openLoadFlowParameters = new OpenLoadFlowParameters().setGeneratorVoltageRemoteControl(false);

but it is not the case.

Huge differences in that case.

(if a question doesn't apply, you can delete it)

geofjamg commented 4 years ago

setGeneratorVoltageRemoteControl on open load flow parameters only configure the way we manage remote voltage, either with a scaling or with additional equations to the equation system. setVoltageRegulatorOn on a generator is a different thing, it only configures if one particular generator control the voltage or not (PV/PQ bus).

annetill commented 4 years ago

Yes in fact to be more precise : the generator I propose to put out of regulation is the only one in the study network that could controls a remote point. It is a way to say that if we don't have this generator in the newtork, the open load flow option "setGeneratorVoltageRemoteControl" set to true or false should provide the same results.

geofjamg commented 4 years ago

You can't have the same result because you won't have the same number of PV bus (and it is not linked to the way we handle remote voltage, with scaling or not).