[CPMD-list] Problem with the USPP

Magali Benoit Magali.BENOIT at ldv.univ-montp2.fr
Mon Feb 24 15:37:25 CET 2003


Dear all,

I am using CPMD 3.5.3 with the ultra soft pseudopotentials generated with
the uspp package. Everything seems to work fine except that on 
Hitachi-SR8000,
the calculations with the USPP and a cutoff of 25 Ry are 4 times longer than
the same calculations with TM pseudos and a cutoff of 55 Ry !!!
The problem does not exist on IBM sp3 and sp4.

Does anyone have a suggestion where this problem could come from?

I include the makefile used to compile the code on the Hitachi-SR8000.

Thank you in advance for your help,

Magali Benoit

#----------------------------------------------------------------------------
# Makefile for cpmd.x (plane wave electronic calculation)
# Configuration: HITACHI-SR8000
# Creation of Makefile: Jan 20 2003
# on HI-UX/MPP sr8000.lrz-muenchen.de 03-07 0 SR8000
# Author: h069zaa
#----------------------------------------------------------------------------
#
SHELL = /bin/sh
#
#--------------- Default Configuration for HITACHI-SR8000 ---------------
SRC  = .
DEST = .
BIN  = .
#QMMM_FLAGS = -D__QMECHCOUPL
#QMMM_LIBS  = -L. -lmm
FFLAGS = \
        
-W0,"opt(o(ss),scope(0)),mp(procnum(8)),opt(split(0),rapidcall(0))" \
        -W0,"pvec(pvfunc(0)),list(e(4)),langlvl(intptr(1),conti199(1))" \
        -nolimit -64 -I/usr/mpi/include
LFLAGS = -parallel -64 +BTLB -L/usr/lib/LAPACK/lib64 -L/usr/lib/BLAS/lib64 \
             -L/usr/mpi/lib/lib64 -llapack -lblas -lfmpi -lmpi -lf90c 
$(QMMM_LIBS)
CFLAGS = -64 -D__SR8000
CPP = cpp -PC
CPPFLAGS = -D__SR8000 -DPOINTER8 -D__NOINT8 -DPARALLEL -D__VECTOR \
               -DFFT_DEFAULT -DLAPACK -DMP_LIBRARY=__MPI -DMALLOC8
CC = mpicc -c -O
FC = mpif90 -c -i,P
LD = mpif90
AR = /usr/bin/ar -r
#----------------------------------------------------------------------------
#
#  LIST OF FILES
#
OBJECTS = $(OBJ_AL) $(OBJ_WF) $(OBJ_GM) $(OBJ_MD) $(OBJ_KS) \
          $(OBJ_VA) $(OBJ_PP) $(OBJ_VD) $(OBJ_NC) $(OBJ_PA) \
          $(OBJ_IS) $(OBJ_ST) $(OBJ_SY) $(OBJ_AT) $(OBJ_LA) \
          $(OBJ_KP) $(OBJ_PI) $(OBJ_CL) $(OBJ_PE) $(OBJ_KD) \
          $(OBJ_MM) $(INTERFACE_OBJECTS)
OBJ_AL  = cpmd.o softex.o envir.o setcnst.o control.o \
          control_def.o control_pri.o control_bcast.o control_test.o \
          header.o inscan.o memory.o freem.o readsr.o timer.o \
          ttimp.o timec.o stopgm.o util.o dftin.o sysin.o ratom.o \
          recpnew.o ghermit.o detsp.o coninp.o prmem.o setsys.o \
          genxc.o setsc.o numpw.o cry.o latgen.o recips.o \
          functionals.o lsd_func.o rinit.o rinforce.o fftprp.o \
          rggen.o formf.o rnlset.o ylmr.o glopar.o rnlin.o sort.o \
          radin.o bessm.o ylmr2.o pbc.o ortho.o finalp.o forcep.o \
          rhopri.o phfac.o wrener.o rrane.o ranp.o rinitwf.o mltfft.o \
          wrgeo.o rnlsm1.o rnlsm2.o fft.o ffts.o fftsg.o forces.o lowdin.o \
          rgs.o rgsvan.o atomwf.o atrho.o xcener.o graden.o gcener.o \
          hesele.o noforce.o rhoofr.o vpsi.o nlforce.o rotate.o \
          hnlmat.o ovlap.o dotp.o fnonloc.o gsize.o csize.o rscpot.o \
          csmat.o ksmat.o vofrho.o vofrhoa.o vofrhob.o vofrhoh.o \
          vofrhot.o initclust.o jacobi.o rnlrh.o rnlfor.o \
          potfor.o ppener.o reigs.o geofile.o rpiiint.o eicalc.o testex.o \
          densto.o proja.o atoms.o fitpack.o wv30.o rv30.o wr30wfn.o \
          setbasis.o gfft.o fftchk.o nfunc.o gcxctbl.o \
          rhoofr_c.o jacobi_c.o velocitinp.o setirec.o compress.o 
interp3d.o \
          ptheory.o clinbcg.o elstpo.o exterp.o mulliken.o espchg.o \
          atomc.o eextern.o interpt.o egointer.o fileopen.o scratch.o \
          forcedr.o initrun.o ldos.o fnlalloc.o dqgalloc.o anneal.o \
          ylmr3.o rnlsm.o vofrhos.o get_addr.o teststore.o loadse.o 
rnlsmd.o \
          wfnio.o density_functionals.o
#WaveFunctions optimization
OBJ_WF  = wfopts.o rwfopt.o updwf.o odiis.o pcgrad.o
#GeoMetry optimisation
OBJ_GM  = gmopts.o rgmopt.o fstart.o struc.o empfor.o puttau.o constr.o \
          rrfo.o rbfgs.o rgdiis.o sdion.o hessin.o hessout.o hessup.o \
          dum2.o detdof.o cnstfc.o fixcom.o cnstpr.o moverho.o elf.o 
lsd_elf.o
#Molecular Dynamics
OBJ_MD  = mdpt.o mdmain.o dynit.o shake.o rattle.o resetac.o dispp.o 
nosalloc.o \
          noseinit.o nospinit.o noseng.o nosepa.o noseup.o enosmove.o 
pnosmove.o \
          ekinpp.o freqs.o printave.o printp.o rekine.o rinvel.o rscvp.o \
          rscve.o deort.o quenbo.o velupa.o velupi.o posupa.o posupi.o 
rortog.o \
          rortv.o crotwf.o noscinit.o prpcnosmove.o prpcmove.o 
prpnosmove.o \
          prcnosmove.o ddipo.o opeigr.o sample.o sd_wannier.o \
          wannier_center.o wannier_print.o purge.o wc_dos.o fusion.o 
mdshop.o
#Kohn-Sham energies
OBJ_KS  = davidson.o ksdiag.o vgsortho.o hpsi.o spsi.o \
          gsortho.o rhov1.o
#Vibrational Analysis
OBJ_VA  = secdpt.o secder.o sdlinres.o sd_ii.o sd_loc2.o sd_nl2.o 
rnlsm_2d.o \
          nl_res.o sd_loc.o sd_nl.o rho1ofr.o v1ofrho1.o lr_force.o \
          opt_lr.o lr_upd.o dd_xc.o eind_ii.o eind_loc.o eind_nl.o lr_in.o \
          lr_xcpot.o lr_ortho.o lr_pcg.o canon.o
#ProPerties calculations
OBJ_PP  = proppt.o prowfn.o dipo.o lodipo.o exdipo.o cmaos.o difrho.o \
          conduct.o polarise.o calc_pij.o localize.o jrotation.o \
          orbhard.o ohfd.o ohlr.o specpt.o td_dav.o td_nhdav.o lr_diag.o \
          vhk.o gettrans.o rho1pri.o rw_linres.o td_force.o tdnlfor.o \
          td_pcg.o orbrot.o vtd2.o stcop.o
#PErturbation theory
OBJ_PE  = h0psi1_p.o v1ofrho_p.o fnonloc_p.o do_gga_p.o\
          mddiag-interaction_p.o gndstate_p.o legendre_p.o \
          interaction_p.o rotate_my_wannier_p.o BYLM_p.o \
          hess_eta_p.o inr_dr.o lanc_phon_p.o \
          dmudn_p.o hesele_p.o do_perturbation_p.o \
          pcgrad_p.o rnlsm_p.o vpsi_p.o perturbation_p.o \
          eigensystem_p.o phonons_p.o rwfopt_p.o d_mat_p.o \
          updwf_p.o forces_p.o rhoofr_p.o raman_p.o opeigr_p.o \
          nmr_p.o nmr_util_p.o nmr_chi_p.o nmr_shift_p.o nmr_current_p.o \
          nmr_para_p.o \
          hardness_p.o respin_p.o response_p.o
#VanderbilD pseudopotentials
OBJ_VD  = readvan.o aainit.o vdbinit.o rhov.o qvan1.o qvan2.o \
          newd.o rnlfl.o augchg.o readvdb.o
#Non-linear Core correction
OBJ_NC  = nlccset.o copot.o corec.o cofor.o nlccstr.o
#PArallel work
OBJ_PA  = startpa.o loadpa.o sumfnl.o glosum.o summat.o my_para.o \
          glomax.o glomin.o groups.o
#ISolated system
OBJ_IS  = hipin.o hip.o mtin.o
#STress tensor calculation
OBJ_ST  = stress.o vlocst.o htrstr.o xcstr.o drhov.o \
          nlsl.o nlsm1_s.o dqvan2.o dylmr.o ffsum.o qrada_s.o \
          totstr.o putbet.o ranc.o newcell.o sdcell.o prpt.o prcpmd.o \
          npt_md.o
#SYmmetry
OBJ_SY  = symmetry.o chksym.o symtrz.o multtb.o molsym.o
#ATomic
OBJ_AT  = lsfbtr.o
#LAnczos diagonalisation
OBJ_LA  = friesner.o friesner_c.o  ehpsi.o    rrandd.o updrho.o anderson.o \
          adjmu.o    forces_diag.o mddiag.o   extrap.o bogol.o  calc_alm.o \
          vbeta.o    rhodiis.o     rwswap.o   frsblk.o frsblk_c.o \
          mixing_r.o mixing_g.o    broyden.o
#KPoints
OBJ_KP  = enbandpri.o   rkpnt.o    k290.o   k290_2.o  kpclean.o
#Path Integral
OBJ_PI  = pi_cntl.o pi_init.o pi_mdpt.o pi_wf.o pi_md.o pi_diag.o \
          rreadf.o repgen.o \
          fharm.o global.o stagetrans.o pinmtrans.o getfu.o getfnm.o \
          getgyr.o getcor.o prtgyr.o evirial.o wr_temps.o
#KdP Theory
OBJ_KD  = kdp_diag.o kdp_prep.o kdp_rho.o kdp_stress_kin.o kdpoints.o \
          rhoofr_kdp.o
#QMMM Code
OBJ_MM  = mm_detsp.o mm_init.o mm_dim.o mm_qmmm_forcedr.o \
          mm_mdmain.o mm_coninp.o \
          mm_cpmd_add_MM_forces_f77.o mm_cpmd_esp_charges_f77.o \
          mm_cpmd_ext_pot_f77.o
#CLassical dynamics
OBJ_CL  = cl_init.o mdclas.o readff.o clas_force.o
#C Code
OBJ_CC  = sysdepend.o shmemory.o

3DGRID_OBJ = 3dgrid.o memory.o timec.o ttimp.o latgen.o cry.o recips.o \
           kb07ad.o freem.o stopgm.o rwswap.o prmem.o util.o timer.o \
           dotp.o pbc.o readsr.o phfac.o my_para.o

2DGRID_OBJ = 2dgrid.o contr.o memory.o timec.o ttimp.o latgen.o cry.o \
           recips.o kb07ad.o freem.o pbc.o atoms.o stopgm.o dcsin2.o \
           prmem.o util.o readsr.o fft.o mltfft.o timer.o my_para.o \
           gfft.o fftprp.o dotp.o rwswap.o phfac.o glomax.o

PLOTBAND_OBJ = plotband.o memory.o freem.o prmem.o util.o timec.o \
           timer.o dotp.o inscan.o kb07ad.o readsr.o \
           stopgm.o rwswap.o phfac.o

#----------------------------------------------------------------------------
# LIST OF INCLUDE FILES
#----------------------------------------------------------------------------
INCFILES = system.h adat.inc atom.inc atwf.inc bc.inc   benc.inc aavan.inc \
           cell.inc cnst.inc coor.inc cotr.inc \
           cppt.inc cvan.inc dipo.inc dpot.inc elct.inc empf.inc \
           ener.inc envj.inc fft.inc  func.inc geq0.inc \
           gvec.inc harm.inc head.inc ions.inc irat.h   irat.inc \
           isos.inc kpnt.inc kpts.inc lodp.inc metr.inc movi.inc nlcc.inc \
           nlps.inc norm.inc nort.inc nose.inc prden.inc \
           prop.inc pslo.inc qrl.inc  qspl.inc ragg.inc pstat.inc \
           rmas.inc ropt.inc rswf.inc sfac.inc simul.inc soft.inc \
           spin.inc str2.inc strs.inc tbxc.inc time.inc struc.inc \
           tpar.inc vdbp.inc vdbt.inc symm.inc rfnl.inc prcp.inc poin.inc \
           memc.inc sgpp.inc filn.inc andr.inc broy.inc fint.inc  \
           cray_mpp.inc 2dgrid.inc 3dgrid.inc ddip.inc epot.inc efld.inc \
           extpot.inc pimd.inc scrp.inc clas.inc store.inc atimes.inc \
           pola.inc condu.inc swap.inc ldos.inc sphe.inc \
           temps.inc elct2.inc symm4.inc wann.inc andp.inc response_p.inc \
           linres.inc shop.inc kdp.inc kdpc.inc conv.inc xinr.inc 
implhv.inc \
           mm_charge.inc, mm_dim.inc, mm_exclusion.inc, mm_input.inc \
           mm_ion_dens.inc mm_gqmmm.inc \
           dir.cld gromos.h equiv_file

#----------------------------------------------------------------------------
# OBJECTS USED IN CPMD LIBRARY
#----------------------------------------------------------------------------
OBJ_LIB = $(OBJ_CC) $(OBJECTS)
INCFILES = 2dgrid.inc 3dgrid.inc aavan.inc adat.inc andp.inc andr.inc \
           atimes.inc atom.inc atwf.inc bc.inc benc.inc broy.inc \
           cell.inc clas.inc cnst.inc condu.inc conv.inc coor.inc \
           cotr.inc cppt.inc cray_mpp.inc cvan.inc ddip.inc dipo.inc \
           dpot.inc efld.inc elct.inc elct2.inc empf.inc ener.inc \
           envj.inc epot.inc extpot.inc fft.inc filn.inc fint.inc \
           func.inc geq0.inc gvec.inc harm.inc head.inc implhv.inc \
           ions.inc irat.inc isos.inc kdp.inc kdpc.inc kpnt.inc \
           kpts.inc ldos.inc linres.inc lodp.inc memc.inc metr.inc \
           mm_charge.inc mm_dim.inc mm_exclusion.inc mm_gqmmm.inc 
mm_input.inc mm_ion_dens.inc \
           movi.inc nlcc.inc nlps.inc nofo.inc norm.inc nort.inc \
           nose.inc pimd.inc poin.inc pola.inc prcp.inc prden.inc \
           prop.inc pslo.inc pstat.inc qrl.inc qspl.inc ragg.inc \
           response_p.inc rfnl.inc rmas.inc ropt.inc rswf.inc scrp.inc \
           sfac.inc sgpp.inc shop.inc simul.inc soft.inc sphe.inc \
           spin.inc store.inc str2.inc strs.inc struc.inc swap.inc \
           symm.inc symm4.inc tbxc.inc temps.inc time.inc tpar.inc \
           vdbp.inc vdbt.inc wann.inc xinr.inc

#----------------------------------------------------------------------------
# Compile cpmd.x
#----------------------------------------------------------------------------
cpmd.x : $(OBJECTS)   $(OBJ_CC)
         rm -f timetag.f
         $(CPP) $(CPPFLAGS) $(SRC)/timetag.F $(DEST)/timetag.f
         $(FC) $(FFLAGS) $(DEST)/timetag.f
         rm -f cpmd.x
         if [ "$(BIN)" != "." ]; then ln -s $(BIN)/cpmd.x cpmd.x; fi
         $(LD) -o $(BIN)/cpmd.x timetag.o $(OBJECTS) $(OBJ_CC) $(LFLAGS)

#----------------------------------------------------------------------------
# Generate library libcpmd.a
#----------------------------------------------------------------------------
lib : $(OBJ_LIB)
         rm -f timetag.f
         $(CPP) $(CPPFLAGS) $(SRC)/timetag.F $(DEST)/timetag.f
         $(FC) $(FFLAGS) $(DEST)/timetag.f
         $(AR) libcpmd.a timetag.o $(OBJ_LIB)
         $(RANLIB) libcpmd.a
#----------------------------------------------------------------------------
# Generate the manual
#----------------------------------------------------------------------------
doc : manual.ps

docpdf: manual.pdf

manual.ps: manual.dvi
        dvips manual.dvi

manual.dvi: $(SRC)/manual.tex
        latex $(SRC)/manual.tex
        makeindex manual
        latex $(SRC)/manual.tex

manual.pdf: $(SRC)/manual.tex
        pdflatex $(SRC)/manual.tex
        makeindex manual
        pdflatex $(SRC)/manual.tex

#----------------------------------------------------------------------------
# Remove all *.o and *.f
#----------------------------------------------------------------------------
clean :
         rm -f $(OBJECTS) $(OBJ_CC) $(DEST)/$(OBJECTS:.o=.f)
         rm -f *~ .*~ *.o *.f
         rm -f *.aux *.brf *.dvi *.idx *.ilg *.ind *.log
         rm -f *.out *.ps *.pdf *.toc

#----------------------------------------------------------------------------
# Explicit rules
#----------------------------------------------------------------------------
.SUFFIXES:
.SUFFIXES: .o .f .F

$(OBJECTS:.o=.f) :
        rm -f $@


        $(CPP) $(CPPFLAGS) $(SRC)/$(@:.f=.F) $(DEST)/$@
$(OBJECTS) :
        $(FC) $(FFLAGS) $(DEST)/$< -o  $(DEST)/$@

$(OBJ_CC) :
        $(CC) $(CPPFLAGS) $(CFLAGS) -c $(SRC)/$(@:.o=.c)
#----------------------------------------------------------------------------
# Dependencies
#----------------------------------------------------------------------------
 .... and so on ...




More information about the CPMD-list mailing list