
Originally Posted by
MrShorty
Considering the very specific nature of the questions, I'm not sure we can make specific suggestions without knowing much more detail about your algorithm and the equations you are trying to solve and so on. At this point, I cannot even be sure if the problem is with the spreadsheet programming of the algorithm or if it is an inherent instability in the algorithm that is present when programmed in any programming language.
In my experience with "circular" calculations, I find that a spreadsheet is much more suited to "linear" calculations. Circular calculations can be tricky to program into a spreadsheet. Assuming equal familiarity with the language, I find that numerical, circular, trial and error type algorithms are often easier to program in symbolic languages (like VBA, Python, C, etc.) or maybe something built for more intense math (like MathCad or Mathematica). The loop and variable structures available in these other languages make it easier to control convergence criteria, test for divergence, and other challenges that are part of these numeric algorithms. However, simply changing programming languages cannot cure the inherent instabilities in the chosen numeric algorithm. If that means that you need to learn a new programming language from scratch, you also need to figure that effort into the task.
Without knowing the specifics of your algorithms, I don't think we can make any specific suggestions. If you will help us understand the algorithm(s) you are using, what causes the instabilities in the algorithms, how you have programmed them into the spreadsheet, and so one, we may be able to make some specific suggestions. If you will tell us what other programming languages you have access to, then we might be able to make suggestions in that direction.
Bookmarks