Opened 14 years ago
Last modified 12 years ago
#1455 closed defect (fixed)
initial_residual() equations are created with removed Vars -> initialization problems
Reported by: | Willi Braun | Owned by: | Willi Braun |
---|---|---|---|
Priority: | blocker | Milestone: | |
Component: | Backend | Version: | trunk |
Keywords: | Cc: | Willi Braun, Frenkel, TUD, Lennart Ochel |
Description (last modified by )
The initial_residual() equations are created in some cases with already removed equations.
This can produce some really strange errors, while the simulation.
One of them ist the following:
"Error in initialization. Solver iterated 50000 times without finding a solution".
Or in some case the following occurs:
Error solving linear system of equations (no. 2458) at time 0.000000, system is singular. Error solving linear system of equations (no. 2458) at time 0.000000, system is singular. DASSL-- TOUT (=R1) TOO CLOSE TO T (=R2) TO START INTEGRATION In above, R1 = .5000000000000E+00 R2 = .0000000000000E+00 DDASRT: The code has encountered trouble from which it cannot recover.
The Dassl message especially is really quite strange.
I think we need a restructure of the BackendDAE.DAE record to split the Vars not only in Known and Unknown Variables. More in removedVars, states, parameters, free parameters and maybe some more.
Change History (3)
comment:1 by , 14 years ago
comment:2 by , 14 years ago
From a mathematical point of view we should at least distinct correctly between know and unknown variables. So that we don't treat simple equation variables as same as parameter or input variables. This results in such error like above.
comment:3 by , 12 years ago
Cc: | added; removed |
---|---|
Component: | → Backend |
Description: | modified (diff) |
From my point of view it is not a good idea to split the variables in to small peaces because the search of a variable will be really complicated.