This question is closed. Reopen it to edit or answer.

Why this algorithm work only for 4 equations ?

2 views (last 30 days)
Joseph El Bacha
Joseph El Bacha on 22 Oct 2014
Closed: MATLAB Answer Bot on 20 Aug 2021
This algorithm solves n non linear equations for n variables. And it is working only for n=4. I cant find why, if anyone can help please ?

Answers (1)

Matt Tearle
Matt Tearle on 22 Oct 2014
Your checkResult function is returning something insufficiently close to zero. Given that it seems to be comparing the result from fsolve with some kind of analytic solution, the only conclusion I can make is that your analytic solution doesn't make the function in myObjectiveFunction. You can easily check the solution returned by fsolve by evaluating myObjectiveFunction with it (you can also get the function value back as a second output from fsolve). It's pretty much 0 for n = 3 and n = 5, but n = 6 didn't converge (too many function calls).
So either myObjectiveFunction or the analytic solution in checkResult is not giving the value you expect. Without knowing the math of what you're trying to do, it's impossible to know what the exact problem is. Do you have some known values you can evaluate these for and check that they give the values you expect?
  1 Comment
Joseph El Bacha
Joseph El Bacha on 22 Oct 2014
Yes I have the known values for n=4 and the program is giving the correct answers for n=4. The prog I already sent is useful in the triphase inverter.
Please find attached another program for the single-phase inverter very close to the previous one but working for all n !!! And I couldnt know why.
Thank you.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!