This shows you the differences between two versions of the page.

— |
gnucap:user:programingdetails [2015/12/11 15:39] (current) |
||
---|---|---|---|

Line 1: | Line 1: | ||

+ | === Programming Details === | ||

+ | |||

+ | Topmost level solver computations are concentrated in s__solve.cc file in | ||

+ | <code c++> SIM::solve(...) </code> | ||

+ | inside it main important steps: | ||

+ | <code c++> do { </code> | ||

+ | assume we have some value of unknowns: X_c | ||

+ | calculate model parameters | ||

+ | <code c++> evaluate models; </code> | ||

+ | load matrices (Jacobian J and vector FG) | ||

+ | |||

+ | note, that dumping is implemented duing matrix & vector loading process. | ||

+ | <code c++> load_marix(); </code> | ||

+ | solve equations and obtan new poin X_n | ||

+ | <code c++> solve_equations(); </code> | ||

+ | until equations will converge or iteration limit will not be acieved | ||

+ | <code c++> } while ( ! converged && ! _sim-> exceeds_iteration_limit(it1));</code> | ||