ODEPACK is a library for the numerical solution of systems of ordinary differential equations. It is written in Fortran 77, but can be accessed from C and C++ with only a little effort. The permanent home of ODEPACK is in the ODEPACK directory at netlib. Surprisingly, there are very few open-source libraries that perform the functions of ODEPACK.
A friendlier distribution of ODEPACK
https://github.com/cfinch/odepack
ODEPACK is distributed as fixed-format Fortran 77 source with plain text files offering documentation and examples. It is not the friendliest distribution, because there are no makefiles and even the examples are buried in commented-out sections of the solver source code. It seems that ODEPACK was designed to be used in source form, perhaps by copying relevant functions and pasting them into your own Fortran program, or compiling ODEPACK right into your program.
In an effort to get ODEPACK running for my own use, I have developed a friendlier distribution. I created a Makefile that will compile ODEPACK as a shared library, using the Gnu compiler collection (gcc), and separated the demonstration code into a directory of standalone programs. I intended to make it publicly available…but I never did. Ask me if you want it!
Documentation for ODEPACK
Using ODEPACK
Once compiled as a library, ODEPACK has to be linked with your application.
ODEPACK and C/C++
Although ODEPACK is written in the vintage dialect of Fortran 77, it can be called from a C or C++ program.
Hi just wondered if you got around the compiler / linker errors from the original code. ie. where real arrays are passed into integer arrays and arrays are accessed past their defined end. I tried to suppress these in the the Intel Compiler but test cases 5 and 6 fail.
I’m sorry, I don’t know…I haven’t worked on ODEPACK in years.
thanks, I’m trying to work with it now, and it has many old bad Fortran assumptions