C C $Id: wrttim.F,v 1.9 1998/07/16 16:40:57 jjv5 Exp $ C C------------------------------------------------------------------------ subroutine wrttims implicit double precision (a-h,o-z) #include "divcon.dim" #include "divcon.h" C-RDC C write timings for single point calculation tfockp = (100.0*tfock)/tscf C-RDC write(iout,'(/" TIMINGS:", C-RDC & /" -------", C-RDC & /" * NUMBER OF DIAGONALIZATIONS: ",I5, C-RDC & /" * SCF CYCLE: TOTAL ",F10.4, ", AV. ", F10.4, C-RDC & " SEC.", C-RDC & /" OF WHICH: FOCK BUILD ", F6.2,"%. (TOTAL ",F10.4, C-RDC & ", AV. ", F10.4," SEC.)")') C-RDC $ ndiag, tscf, tscfav, tfockp, tfock, tfockav C-RDC if (pme) write(iout,'(" * PME DIRECT + SELF ENERGY", C-RDC & /" + CL. COULOMB : ", C-RDC & F10.4," SEC.", C-RDC & /" * PME RECIPROCAL ENERGY : ", F10.4," SEC.")') C-RDC & tpmedir, tpmerec if (gradient) then tgradp = (100.0*tgrad)/tscf C-RDC write(iout,'(" * GRADIENT: TOTAL ",F10.4, C-RDC & " SEC. (",F6.2,"% OF SCF)")') tgrad,tgradp endif end CC--------------------------------------------------------------CC subroutine wrttimmc(imc) implicit double precision (a-h,o-z) #include "divcon.dim" #include "divcon.h" C-RDC C write timings for MC calculations tfockp = (100.0*tfock)/tscf C-RDC write(iout,'(/" NUMBER OF DIAGONALIZATIONS: ",I6, C-RDC & /" NUMBER OF FULL SUBSYSTEMS: ",I6, C-RDC & /" NUMBER OF FROZEN SUBSYSTEMS: ",I6, C-RDC & /" TIMINGS:", C-RDC & /" SCF TOT. = ",F10.4, C-RDC & ", SCF. AV. = ",F10.4, C-RDC & /" FOCK TOT. = ",F10.4, C-RDC & " ( ",F6.2," % OF SCF.)")') C-RDC & ndiag, nfull, nfroz, tscf, tscfav, tfock, tfockp C-RDC write(iout,'(" PME DIRECT+SELF ", C-RDC & /" + CLAS.COULOMB = ",F10.4, C-RDC & ", PME RECIP. = ",F10.4, C-RDC & /" VIRIAL+GRADIENT = ",F10.4, C-RDC & ", GRADIENT = ",F10.4," SEC.", C-RDC & /"-----------------------------------------------", C-RDC & "--------------------")') C-RDC & tpmedir, tpmerec, tvir, tgrad if (wrtmc) then C-RDC write(iscr,'(/" number of diagonalizations: ",i6, C-RDC & /" number of full subsystems: ",i6, C-RDC & /" number of frozen subsystems: ",i6, C-RDC & /" timings (total): scf =",F10.4, C-RDC & " fock =",F10.4)') C-RDC & ndiag, nfull, nfroz, tscf, tfock C-RDC write(iscr,'(18x,"pme direct+self", C-RDC & /,18x," + clas.coulomb =",F10.4, C-RDC & " pme recip =",F10.4, C-RDC & /,18x,"virial =",F10.4, C-RDC & " gradient =",F10.4," sec.", C-RDC & /,"-----------------------------------------------", C-RDC & "--------------------")') C-RDC & tpmedir, tpmerec, tvir, tgrad endif end