Hi, I need to solve a multidimensional ODE system that has many (~1600) parameters. So far, I've been taking the coward's way out on & using global macros for the 2 or 3 parameters in my programs, but can't do that anymore. So I decided to do a little test program (classical simple harmonic oscillator) with 2 parameters (mass & omega).
I RTFM'ed and saw p282 and P287 of the gsl manual to see how to pass parameters into the function & jacobian subroutines. The text and example show how to do it for one parameter. I assumed that, in order to do it for multiple parameters, I'd have to put the parameters in an array and pass the base address to the gsl_odeiv_system datatype, then use pointer arithmetic in the function & jacobian subroutines to get the values there, but it's not working (ie getting wrong values while the function/jacobian is running). I'd be mighty grateful if a fresh pair of eyes could look at my disastrous handiwork and point out what I'm doing wrong. More details of what I did and my source code are posted here: http://www.ph.utexas.edu/~daneel/shmerr/shm_2param/shm_2param.html also, the pastebin for the C-source file is: http://pastebin.ca/42131 Thanks in advance, Analabha Roy _______________________________________________ Help-gsl mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-gsl
