56 subroutine prn3lb(n, x, f, task, iprint, info, itfile,
57 + iter, nfgv, nintol, nskip, nact, sbgnrm,
58 + time, nseg, word, iback, stp, xstep, k,
59 + cachyt, sbtime, lnscht)
63 integer n, iprint, info, itfile, iter, nfgv, nintol,
64 + nskip, nact, nseg, iback, k
65 double precision f, sbgnrm, time, stp, xstep, cachyt, sbtime,
82 if (task(1:5) .eq.
'ERROR') goto 999
84 if (iprint .ge. 0)
then
87 write(6,3005) n,iter,nfgv,nintol,nskip,nact,sbgnrm,f
88 if (iprint .ge. 100)
then
89 write (6,1004)
'X =',(x(i),i = 1,n)
91 if (iprint .ge. 1)
write (6,*)
' F =',f
94 if (iprint .ge. 0)
then
97 if (info .eq. -1)
write (6,9011)
98 if (info .eq. -2)
write (6,9012)
99 if (info .eq. -3)
write (6,9013)
100 if (info .eq. -4)
write (6,9014)
101 if (info .eq. -5)
write (6,9015)
102 if (info .eq. -6)
write (6,*)
' Input nbd(',k,
') is invalid.'
104 +
write (6,*)
' l(',k,
') > u(',k,
'). No feasible solution.'
105 if (info .eq. -8)
write (6,9018)
106 if (info .eq. -9)
write (6,9019)
108 if (iprint .ge. 1)
write (6,3007) cachyt,sbtime,lnscht
110 if (iprint .ge. 1)
then
111 if (info .eq. -4 .or. info .eq. -9)
then
113 + iter,nfgv,nseg,nact,word,iback,stp,xstep
115 write (itfile,3009) task
116 if (info .ne. 0)
then
117 if (info .eq. -1)
write (itfile,9011)
118 if (info .eq. -2)
write (itfile,9012)
119 if (info .eq. -3)
write (itfile,9013)
120 if (info .eq. -4)
write (itfile,9014)
121 if (info .eq. -5)
write (itfile,9015)
122 if (info .eq. -8)
write (itfile,9018)
123 if (info .eq. -9)
write (itfile,9019)
125 write (itfile,3008) time
129 1004
format (/,a4, 1p, 6(1x,d11.4),/,(4x,1p,6(1x,d11.4)))
130 3002
format(2(1x,i4),2(1x,i5),2x,a3,1x,i4,1p,2(2x,d7.1),6x,
'-',10x,
'-')
133 +
'Tit = total number of iterations',/,
134 +
'Tnf = total number of function evaluations',/,
135 +
'Tnint = total number of segments explored during',
136 +
' Cauchy searches',/,
137 +
'Skip = number of BFGS updates skipped',/,
138 +
'Nact = number of active bounds at final generalized',
140 +
'Projg = norm of the final projected gradient',/,
141 +
'F = final function value',/,/,
143 3004
format (/,3x,
'N',4x,
'Tit',5x,
'Tnf',2x,
'Tnint',2x,
144 +
'Skip',2x,
'Nact',5x,
'Projg',8x,
'F')
145 3005
format (i5,2(1x,i6),(1x,i6),(2x,i4),(1x,i5),1p,2(2x,d10.3))
146 3007
format (/,
' Cauchy time',1p,e10.3,
' seconds.',/
147 +
' Subspace minimization time',1p,e10.3,
' seconds.',/
148 +
' Line search time',1p,e10.3,
' seconds.')
149 3008
format (/,
' Total User time',1p,e10.3,
' seconds.',/)
152 +
' Matrix in 1st Cholesky factorization in formk is not Pos. Def.')
154 +
' Matrix in 2st Cholesky factorization in formk is not Pos. Def.')
156 +
' Matrix in the Cholesky factorization in formt is not Pos. Def.')
158 +
' Derivative >= 0, backtracking line search impossible.',/,
159 +
' Previous x, f and g restored.',/,
160 +
' Possible causes: 1 error in function or gradient evaluation;',/,
161 +
' 2 rounding errors dominate computation.')
163 +
' Warning: more than 10 function and gradient',/,
164 +
' evaluations in the last line search. Termination',/,
165 +
' may possibly be caused by a bad search direction.')
166 9018
format (/,
' The triangular system is singular.')
168 +
' Line search cannot locate an adequate point after 20 function',/
169 +,
' and gradient evaluations. Previous x, f and g restored.',/,
170 +
' Possible causes: 1 error in function or gradient evaluation;',/,
171 +
' 2 rounding errors dominate computation.')
subroutine prn3lb(n, x, f, task, iprint, info, itfile, iter, nfgv, nintol, nskip, nact, sbgnrm, time, nseg, word, iback, stp, xstep, k, cachyt, sbtime, lnscht)
This subroutine prints out information when either a built-in convergence test is satisfied or when a...