Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.mrao.cam.ac.uk/~rachael/compphys/examples/minimize.f90
Дата изменения: Wed Sep 14 13:59:18 2005
Дата индексирования: Tue Oct 2 11:25:04 2012
Кодировка:

Поисковые слова: п п п п п п п п п п п п п п п
! this module contains a subroutine which evaluates the function
! -x*exp(-x) which we wish to minimize

module x_ex_mod
contains
subroutine x_ex(x,f)
real(kind(1.0d0)) :: x,f
f = -x*exp(-x)
end subroutine
end module

! this program controls the minimization

program minimize

use nag_f77_e_chapter
use x_ex_mod
implicit none

integer :: ifail,maxcal
real(kind(1.0d0)) :: e1,e2,a,b,x,f

! define problem for NAG library
e1 = 0.0d0 ; e2 = 0.0d0 ! NAG routine will use default values
a = 0.5d0 ; b = 1.5d0 ! let's restrict the search to 0.5 <= x <= 1.5
maxcal = 50 ! allow at most 50 calls to x_ex
ifail = 0

! call NAG
call e04abf(x_ex,e1,e2,a,b,maxcal,x,f,ifail)

! report results
if (ifail == 0) then
write(*,*) 'Minimum value of ',f,' at ',x
else
write(*,*) 'NAG routine E04ABF failed with ifail ',ifail
end if

end program