      SUBROUTINE BION(SI,SO,LEM,LEN)
      implicit none
C     ****
C     ****     CALCULATES INTEGRATED F(X) NEEDED FOR TOTAL AURORAL
C     ****     IONIZATION
C     ****
C     ****     SI = X, F(X) RETURNED IN SO
C     ****     LEN = ARRAY LENGTH
C     ****
! Args:
      integer,intent(in) :: lem,len
      real,intent(in)  :: si(len)
      real,intent(out) :: so(len)
!
! Local:
      integer :: i
C     ****     CONSTANTS FOR PARAMETERIZATION (ED HSU)
      real,parameter :: c(8) =
     |  (/0.12718, 4.9119, 1.8429, 0.99336, 0.52472, 1.5565,
     |    0.85732, 1.4116/)
!
      DO I=LEM,LEN
        SO(I)=C(1)*SI(I)**C(2)*EXP(-C(3)*SI(I)**C(4))+
     |    C(5)*SI(I)**C(6)*EXP(-C(7)*SI(I)**C(8))
      ENDDO
      RETURN
      END
C
