MATLAB: Do I receive an algebraic loop related error while simulating a model using the Simulate hysteresis mode in a Three Phase Transformer (Two Windings) block in SimPowerSystems R2008a

simulink

I has a model which simulates fine unless I select the "Simulate Hysteresis" checkbox in the Three-Phase Transformer block then I receive the following error message:
Trouble solving algebraic loop containing 'my_model/Three-Phase Transformer (Two Windings)1/Model/Discrete Hysteresis/Discrete Hysteresis3/Hysteresis main loop + Saturation. (Upper Part)' at time 0.009950000000000001. Stopping simulation. There may be a singularity in the solution. If the model is correct, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances).

Best Answer

To get rid of this algebraic loop, go to the Advanced tab of Three-Phase Transformer (Two Windings) block and check the "Break Algebraic loop in discrete saturation model" parameter.
This algebraic loop is caused by the saturation model of transformer block only when thePOWERGUI is set to Discrete. The default model (introducing an algebraic loop) normally provides good simulation results, however, an alternate model with no loop can be used by checking this parameter.
Depending on the applications breaking the algebraic loop may not provide reliable simulation results.