ogpwri_end Subroutine

private subroutine ogpwri_end(me, Objval, Numvio, Convio)

WRITE OPTIMIZATION END RESULT IN PYGMO FORMAT

2023/01/25 | W. MARTENS | NEW

Type Bound

optgra

Arguments

Type IntentOptional Attributes Name
class(optgra), intent(inout) :: me
real(kind=wp), intent(in) :: Objval

OBJECTIVE VALUE

integer(kind=ip), intent(in) :: Numvio

NUMBER OF VIOLATED CONSTRAINTS

real(kind=wp), intent(in) :: Convio

TOTAL CONSTRAINT VIOLATION


Called by

proc~~ogpwri_end~~CalledByGraph proc~ogpwri_end optgra%ogpwri_end proc~ogexec optgra%ogexec proc~ogexec->proc~ogpwri_end proc~ogeval optgra%ogeval proc~ogexec->proc~ogeval proc~ogcorr optgra%ogcorr proc~ogexec->proc~ogcorr proc~ogopti optgra%ogopti proc~ogexec->proc~ogopti proc~ogpwri optgra%ogpwri proc~ogpwri->proc~ogpwri_end proc~ogeval->proc~ogpwri proc~ogcorr->proc~ogeval proc~ogopti->proc~ogeval

Source Code

   subroutine ogpwri_end(me,Objval,Numvio,Convio)

      !! WRITE OPTIMIZATION END RESULT IN PYGMO FORMAT
      !!
      !! 2023/01/25 | W. MARTENS | NEW

      class(optgra),intent(inout) :: me
      real(wp),intent(in) :: Objval !! OBJECTIVE VALUE
      real(wp),intent(in) :: Convio !! TOTAL CONSTRAINT VIOLATION
      integer(ip),intent(in) :: Numvio !! NUMBER OF VIOLATED CONSTRAINTS

      if ( me%Pygfla==0 ) return

      ! Write termination message
      write (me%Loglup,'("")')
      write (me%Loglup,'("Final values after iteration        ", I16:)')  me%Numite
      write (me%Loglup,'("Final objective value:              ", F16.4)') Objval
      write (me%Loglup,'("Final constraint violation:         ", F16.4)') Convio
      write (me%Loglup,'("Final num. of violated constraints: ", I16)')   Numvio

      select case (me%Pygfla)
       case ( 1 ); write (me%Loglup,'("Successful termination: Optimal solution found.")')
       case ( 2 ); write (me%Loglup,'("Successful termination: Constraints matched.")')
       case ( 3 ); write (me%Loglup,'("Not converged.")')
       case ( 4 ); write (me%Loglup,'("Problem appears infeasible.")')
      end select
      write (me%Loglup,'("")')

   end subroutine ogpwri_end