For the last several weeks I have been implementing [1] a DASSL
algorithm in Julia.  The DASSL algorithm was developed by Linda
Petzold in late 80s to solve Differential Algebraic Equations (DAE)
and its Fortran 77 implementation is one of the most popular DAE
solvers.  My implementation in Julia bases mainly on a book [3] and
partly on the source of the original implementation [2] (mostly in
places where the book was ambiguous).  I tried to mimic the behavior
of the original implementation as much as I could but my code is not
in a one to one correspondence with the original (I aimed at
readability of the algorithm), so don't be surprised if you get
slightly different results from both versions.

This is my first larger project in Julia so don't expect high end
quality or performance, but I tested my implementation for convergence
on various simple index-0 and index-1 problems and it works just
fine.  That said, I am open to any critique and suggestions, and any
help with improving the code.  Ultimately, I would like to see this
code merged into the ODE.jl library, if the maintainers of the latter
allow it.

[1] https://github.com/pwl/dassl.jl
[2] http://www.netlib.org/ode/ddassl.f
[3] "Numerical Solution of Initial'Value Problems in Differential-Algebraic 
Equations" K. E. Brenan, S. L. Campbell, L. R. Petzold

Reply via email to