fix import/export of ierode common on Windows
[scilab.git] / scilab / modules / differential_equations / src / fortran / stode.f
index 7d1ca24..b795170 100644 (file)
@@ -2,6 +2,9 @@ C/MEMBR ADD NAME=STODE,SSI=0
       subroutine stode (neq, y, yh, nyh, yh1, ewt, savf, acor,
      1   wm, iwm, f, jac, pjac, slvs)
 clll. optimize
+      
+      include 'stack.h'
+      
       external f, jac, pjac, slvs
       integer neq, nyh, iwm
       integer iownd, ialth, ipup, lmax, meo, nqnyh, nslp,
@@ -16,8 +19,6 @@ clll. optimize
      1   r, rh, rhdn, rhsm, rhup, told, vnorm
       dimension neq(*), y(*), yh(nyh,*), yh1(*), ewt(*), savf(*),
      1   acor(*), wm(*), iwm(*)
-      integer         iero
-      common /ierode/ iero
       common /ls0001/ rownd, conit, crate, el(13), elco(13,12),
      1   hold, rmax, tesco(3,12),
      2   ccmax, el0, h, hmin, hmxi, hu, rc, tn, uround, iownd(14),
@@ -236,7 +237,7 @@ c-----------------------------------------------------------------------
       do 230 i = 1,n
  230    y(i) = yh(i,1)
       call f (neq, tn, y, savf)
-      if(iero.gt.0) return
+      if(ierror.gt.0) return
       nfe = nfe + 1
       if (ipup .le. 0) go to 250
 c-----------------------------------------------------------------------
@@ -249,7 +250,7 @@ c-----------------------------------------------------------------------
       nslp = nst
       crate = 0.70d+0
       call pjac (neq, y, yh, nyh, ewt, acor, savf, wm, iwm, f, jac)
-      if(iero.gt.0) return
+      if(ierror.gt.0) return
       if (ierpj .ne. 0) go to 430
  250  do 260 i = 1,n
  260    acor(i) = 0.0d+0
@@ -292,7 +293,7 @@ c-----------------------------------------------------------------------
       if (m .ge. 2 .and. del .gt. 2.0d+0*delp) go to 410
       delp = del
       call f (neq, tn, y, savf)
-      if(iero.gt.0) return
+      if(ierror.gt.0) return
       nfe = nfe + 1
       go to 270
 c-----------------------------------------------------------------------
@@ -435,7 +436,7 @@ c-----------------------------------------------------------------------
       iret = 2
       go to 150
 c-----------------------------------------------------------------------
-c control reaches this section if 3 or more failures have occured.
+c control reaches this section if 3 or more failures have occurred.
 c if 10 failures have occurred, exit with kflag = -1.
 c it is assumed that the derivatives that have accumulated in the
 c yh array have errors of the wrong order.  hence the first
@@ -450,7 +451,7 @@ c-----------------------------------------------------------------------
       do 645 i = 1,n
  645    y(i) = yh(i,1)
       call f (neq, tn, y, savf)
-      if(iero.gt.0) return
+      if(ierror.gt.0) return
       nfe = nfe + 1
       do 650 i = 1,n
  650    yh(i,2) = h*savf(i)