dodpe3 Subroutine

public impure subroutine dodpe3(lunerr, d2, d3)

Print error reports indicating that computations were stopped in user-supplied subroutine fcn.

Arguments

Type IntentOptional Attributes Name
integer :: lunerr

The logical unit number used for error messages.

integer :: d2

The 2nd digit (from the left) of info.

integer :: d3

The 3rd digit (from the left) of info.


Called by

proc~~dodpe3~~CalledByGraph proc~dodpe3 dodpe3 proc~dodper dodper proc~dodper->proc~dodpe3 proc~doddrv doddrv proc~doddrv->proc~dodper proc~dodcnt dodcnt proc~dodcnt->proc~doddrv proc~odr odr proc~odr->proc~dodcnt proc~odr_long_c odr_long_c proc~odr_long_c->proc~odr proc~odr_medium_c odr_medium_c proc~odr_medium_c->proc~odr proc~odr_short_c odr_short_c proc~odr_short_c->proc~odr program~example1 example1 program~example1->proc~odr program~example2 example2 program~example2->proc~odr program~example3 example3 program~example3->proc~odr program~example4 example4 program~example4->proc~odr program~example5 example5 program~example5->proc~odr

Source Code

   impure subroutine dodpe3(lunerr, d2, d3)
   !! Print error reports indicating that computations were stopped in user-supplied 
   !! subroutine `fcn`.
   ! Routines Called  (NONE)
   ! Date Written   860529   (YYMMDD)
   ! Revision Date  920619   (YYMMDD)

      integer :: lunerr
         !! The logical unit number used for error messages.
      integer :: d2
         !! The 2nd digit (from the left) of `info`.
      integer :: d3
         !! The 3rd digit (from the left) of `info`.

      ! Variable Definitions (alphabetically)
      !  D2:      The 2nd digit (from the left) of INFO.
      !  D3:      The 3rd digit (from the left) of INFO.
      !  LUNERR:  The logical unit number used for error messages.

      ! Print appropriate messages to indicate where computations were stopped

      if (d2 == 2) then
         write (lunerr, 1100)
      elseif (d2 == 3) then
         write (lunerr, 1200)
      elseif (d2 == 4) then
         write (lunerr, 1300)
      end if
      if (d3 == 2) then
         write (lunerr, 1400)
      end if

      ! Format statements

   1100 format &
         (//' Variable ISTOP has been returned with a nonzero value  '/ &
         ' from user supplied subroutine FCN when invoked using the'/ &
         ' initial estimates of BETA and DELTA supplied by the     '/ &
         ' user.  The initial estimates must be adjusted to allow  '/ &
         ' proper evaluation of subroutine FCN before the          '/ &
         ' regression procedure can continue.')
   1200 format &
         (//' Variable ISTOP has been returned with a nonzero value  '/ &
         ' from user supplied subroutine FCN.  This occurred during'/ &
         ' the computation of the number of reliable digits in the '/ &
         ' predicted values (F) returned from subroutine FCN, indi-'/ &
         ' cating that changes in the initial estimates of BETA(K),'/ &
         ' K=1,NP, as small as 2*BETA(K)*SQRT(MACHINE PRECISION),  '/ &
         ' where MACHINE PRECISION is defined as the smallest value'/ &
         ' E such that 1+E>1 on the computer being used, prevent   '/ &
         ' subroutine FCN from being properly evaluated.  The      '/ &
         ' initial estimates must be adjusted to allow proper      '/ &
         ' evaluation of subroutine FCN during these computations  '/ &
         ' before the regression procedure can continue.')
   1300 format &
         (//' Variable ISTOP has been returned with a nonzero value  '/ &
         ' from user supplied subroutine FCN.  This occurred during'/ &
         ' the derivative checking procedure, indicating that      '/ &
         ' changes in the initial estimates of BETA(K), K=1,NP, as '/ &
         ' small as MAX[BETA(K),1/SCLB(K)]*10**(-NETA/2), and/or   '/ &
         ' of DELTA(I,J), I=1,N and J=1,M, as small as             '/ &
         ' MAX[DELTA(I,J),1/SCLD(I,J)]*10**(-NETA/2), where NETA   '/ &
         ' is defined to be the number of reliable digits in       '/ &
         ' predicted values (F) returned from subroutine FCN,      '/ &
         ' prevent subroutine FCN from being properly evaluated.   '/ &
         ' the initial estimates must be adjusted to allow proper  '/ &
         ' evaluation of subroutine FCN during these computations  '/ &
         ' before the regression procedure can continue.')
   1400 format &
         (//' Variable ISTOP has been returned with a nonzero value  '/ &
         ' from user supplied subroutine FCN when invoked for '/ &
         ' derivative evaluations using the initial estimates of '/ &
         ' BETA and DELTA supplied by the user.  The initial '/ &
         ' estimates must be adjusted to allow proper evaluation '/ &
         ' of subroutine FCN before the regression procedure can '/ &
         ' continue.')

   end subroutine dodpe3