Vd, which is dependent on the model outputs, is fed-back to the model inputs which would have caused an algebraic loop if the filters were not present. The continued presence of the algebraic loop indicates that the V Filter and I Filter implementation probably has an unintended direct-feed through at some point during the simulation.
The proposed model bypasses the faulty filters with correctly functioning filters which breaks the algebraic loop.
Gert Kruger (2020). PV array with algebraic loop broken (https://www.mathworks.com/matlabcentral/fileexchange/71682-pv-array-with-algebraic-loop-broken), MATLAB Central File Exchange. Retrieved .
Doenst work powergui on discrete
Please note the following issues:
- The model is tested to work at least up to 2016b, with the Powergui block set to continuous.
- A discrete solver setting results in a derivative error: "Derivative of state '1' in block 'PV_array_solved_algebraic_loop_bus/PV Array/Vd Filter/ ' at time 0.0001 is not finite."
- It also does not initialize correctly when calling a Simulink model from a Matlab script. A workaround for this is to open the model and initialize it by running it at least once using the Simulink interface. Whilst still open the model can be called from a Matlab script.
It gives several errors. Sadly it doesnt work.
can you please have a look here
I have a same problem
it does not work with powergui block with discrete mode
how to solve this error :Derivative of state '1' in block 'PV_array_solved_algebraic_loop_bus/PV Array/Vd Filter/ ' at time 0.0001 is not finite. The simulation will be stopped. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)
The motivation for this contribution originated from this post: https://www.mathworks.com/matlabcentral/answers/267687-why-pv-panels-gives-algebraic-loop-errors#answer_377065
Fixed the internal measurements of the model so that the bus selector functions as intended.
Added acknowledgment to filter used.
I_PV and V_PV do not have to be filtered separately in order to break the algebraic loop. Only Vd needs to be filtered. The Vd filter output is initialized to the panel open circuit voltage.
Inspired by: Real time tunable filters