How do you convert the saturation characteristic of a transformer from RMS values to peak values for EMT studies?

Dynamic Simulation

Several EMT studies (transformer energisation, load rejection, ferro-resonance etc.) require a detailed model of the non-linear behaviour of the transformer iron core which is defined by its saturation characteristic.

Often manufacturers only provide RMS values for the saturation characteristic as voltage/current-pairs. However, for EMT simulations peak values are necessary. Since the current waveform is not sinusoidal when the core is driven into saturation, a conversion of the RMS into peak values is quite complex.

Using the attached python script, RMS values which are entered on the Load Flow or RMS Simulation page of the transformer type are converted into peak values. Depending on the input parameters of the script, the resulting flux/magnetising current-pairs are only stored in a matrix object (located within the script) or additionally written  into the transformer type (EMT Simulation page).

The attached PowerFactory-project contains a network with a transformer (RMS values are already defined) and the python script object (ComPython) which is stored in the project library. Set the path in the python script object to the external python file location (Script page in the ComPython object).

In order to use the script and convert the RMS values to peak values, select the transformer, right click on it and select “Execute Script”. From the opened dialog select the RMS2peak script, found in the list underneath the project library. Execute the script and check the Output Window.

Additional information about the handling of the script can be found on the ComPython's Description page.

Please note that the ComPython-object has to be the one from the project, simply creating a new ComPython and linking the *.py-file will lead to errors due to missing input parameters etc.