V3FIT
de_parallel.f90
1  SUBROUTINE de_parallel(j,fcn)
2  USE de_mod
3  IMPLICIT NONE
4  INTEGER :: j
5  EXTERNAL fcn
6 #if !defined(MPI_OPT)
7  REAL(rprec), DIMENSION(n_free) :: x
8  REAL(rprec), DIMENSION(nopt) :: fvec
9 
10  INTEGER :: iflag
11  REAL(rprec) :: funcval
12 
13  iflag=j
14  x(:) = ui_xc(j,:)
15 
16  CALL fcn(nopt, n_free, x, fvec, iflag, nfev)
17  funcval = sum(fvec(:nopt)**2)
18 
19  WRITE (j+1000) j, iflag, funcval
20  CLOSE (j+1000)
21 
22  WRITE(6,'(a,f12.5,a,i3)')' FUNCVAL = ', funcval, &
23  ' for iteration ', j+nfev
24 #endif
25  END SUBROUTINE de_parallel