home *** CD-ROM | disk | FTP | other *** search
- defoad(iter,h,x,y,dy,iflag)
-
- /* subroutine to solve first-order ordinary differential */
- /* equations y'=f(x,y) by Adam's method. */
-
- int iflag,iter;
- float dy[],h,x[],y[];
- {
- int i,j;
- float xn,yn;
- double yprime();
-
- xn = x[0];
- yn = y[0];
- dy[0] = yprime(xn,yn,iflag);
- j = 4;
- defork(j,h,x,y,dy,iflag);
-
- for(i = 3; i <= iter-2; i++)
- {
- y[i+1]=y[i]+h*(55.*dy[i]-59.*dy[i-1]+37.*dy[i-2]-9.*dy[i-3])/24.;
- xn = x[i+1];
- yn = y[i+1];
- dy[i+1] = yprime(xn,yn,iflag);
- }
- }