FunctionalModels.jl
FunctionalModels.jl copied to clipboard
Initial equations and initialization
Many problems currently fail during initialization. The initialization approaches in Sundials and DASSL are pretty simple. Lots has been written on the subject:
- https://modelica.org/events/modelica2011/Proceedings/pages/papers/04_3_ID_192_a_fv.pdf
- https://modelica.org/events/modelica2006/Proceedings/sessions/Session6a2.pdf
- http://www.ep.liu.se/ecp/084/011/ecp13084011.pdf
We can use KINSOL or NLSolve.jl to help. The main issue is that most models have underdetermined initial conditions, and KINSOL can't handle that. The methods outlined in the papers above might take a bit of work. It'd be nice to find something simple that's at least better than what we do now. The last paper above mentions turning the initial solution into an optimization problem. That might be something to try given that Julia has several good optimization packages.