4 include "DIMENSIONS.ZSCOPT"
9 include "COMMON.WEIGHTS"
10 include "COMMON.VMCPAR"
11 include "COMMON.OPTIM"
12 include "COMMON.CLASSES"
13 include "COMMON.ENERGIES"
14 include "COMMON.IOUNITS"
15 integer i,j,k,igap,iprot,nf,imcm,ii,inn,n,nn,indn(max_ene)
16 double precision target_gap0(maxobj),target_gap1(maxobj),delta
17 logical solved,all_satisfied,not_done
18 double precision ran_number,f,f0,x(max_paropt),x0(max_paropt),
19 & zz(maxobj),viol,obf,obg(max_paropt)
20 integer iran_num,nvarr
21 double precision tcpu,t0,t1,t0w,t1w
23 write (iout,*) "MCM procedure: step",imcm
24 write (iout,*) "Initial params",(x(i),i=1,nvarr)
25 write (iout,*) "f0",f0
26 nn=iran_num(1,nvarr/3)
33 if (indn(ii).eq.0) then
38 write (iout,*) "nn",nn," indn",(indn(i),i=1,n_ene)
43 if (indn(i).eq.1) then
45 x(i)=ran_number(x_low(i),x_up(i))
49 if (i_local_check.gt.0)
50 & call viol_secondary(.false.,.false.,.false.,viol)
51 not_done=(i_local_check.gt.0 .and. viol.gt.1.0d8)
52 write (iout,*) "imcm",imcm," not_done",not_done
59 write (iout,*) "Perturbed parameters"
60 write (iout,*) (x(i),i=1,nvarr)
61 call minimize(nvarr,x,f,zz)
62 write (iout,*) "Parameters after minimization:"
63 write (iout,*) (x(i),i=1,nvarr)