Algrebraic loop error in MATLAB/Simulink
Afficher commentaires plus anciens
I am trying to model a solar cell in MATLAB/Simulink based on the equation :
V = Rsh*(Iph - Is*exp((V+I*Rs)/(A*Vt) - 1)) - I*(Rs+Rsh)
The issue that constantly occurs is due to the existance of an algebraic loop (as V is the output and it also appears inside the exponential term). I have already used Initial Condition and Algebraic Constraint block but it didn't have any result. Also, I tried to add a Unit Delay converting the simulation running time to discrete format but the error insists. Is anything else I could try ?
Réponses (1)
Sam Chak
le 6 Fév 2022
0 votes
If the problem involves the exponential function and you cannot solve it using any known elementary function, then you probably need to manually express the solution using a special function called, "Lambert W / Product Log function".
https://www.mathworks.com/help/symbolic/lambertw.html
If Rsh, Iph, Is, I, Rs, A, Vt are non-zero real numbers, then a real solution exists for V:
.Please double-check to make sure that it is completely correct.
1 commentaire
Giorgos Mylonas
le 6 Fév 2022
Catégories
En savoir plus sur Mathematics dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!