possible bug in cp_ddapc_types.F

Noam Bernstein no... at bollweevil.gdbg.org
Fri Dec 11 23:12:46 UTC 2009


I'm seeing an odd crash, and I've traced it to a weird looking section
in cp_ddapc_types.F, in cp_ddapc_ewald_create(), around line 317:

    ! Determining the tasks and further check
    IF (do_qmmm_periodic.AND.decoupling.AND.(output_unit>0)) THEN
       ! Check than an additional POISSON section has not been
defined. In case write a warning
       WRITE(output_unit,'(T2,"WARNING",A)')&
            "A calculation with the QMMM periodic model has been requested.",&
            "The explicit POISSON section in DFT section will be IGNORED.",&
            "QM Electrostatic controlled only by the PERIODIC section
in QMMM section"
       decoupling = .FALSE.
    END IF
    IF (decoupling) THEN
       ! Simple decoupling technique
     .
     .
     .

In particular, the "decoupling = .FALSE." line is only executed if
output_unit > 0.
I see why that test in the if is needed for the warning statement, but
if decoupling
should be set to false, shouldn't that happen regardless of the output_unit?  In
particular, when I run in parallel I end up with output_unit > 0 only
on 1 node, and
then different nodes disagree on whether decoupling is true or false, and things
go horribly wrong.

Am I correct about this being a bug?  If so, I suppose that decoupling should
be set to false regardless of output_unit, and only the WRITE statement should
be surrounded by a check for output_unit > 0 ?

           thanks,
           Noam

P.S. Input file is here, just for completeness.  Presumably this got
wasn't found
before because we're doing something not quite right, triggering the warning.

&FORCE_EVAL
  METHOD QMMM
  &DFT
    BASIS_SET_FILE_NAME BASIS_SET
    POTENTIAL_FILE_NAME POTENTIAL
    WFN_RESTART_FILE_NAME H2O-RESTART.wfn_end
    &MGRID
      COMMENSURATE
      CUTOFF 180.0
      NGRIDS 4
      REL_CUTOFF 30.0
    &END MGRID
    &POISSON
      PERIODIC NONE
      POISSON_SOLVER MULTIPOLE
      &MULTIPOLE
        EWALD_PRECISION 1.0E-5
        RCUT 5.0
        ANALYTICAL_GTERM T
      &END MULTIPOLE
    &END POISSON
    &QS
      EXTRAPOLATION PS
      EXTRAPOLATION_ORDER 1
      EPS_DEFAULT 1.0E-3
    &END QS
    &SCF
      SCF_GUESS restart #atomic
      EPS_SCF 1.0E-3
      MAX_SCF 100
      &OUTER_SCF
         EPS_SCF 1.0E-3
         MAX_SCF 100
      &END
      &OT
         MINIMIZER CG
         PRECONDITIONER FULL_ALL
      &END OT
    &END SCF
    &XC
      &XC_FUNCTIONAL PADE
      &END XC_FUNCTIONAL
      &XC_GRID
#        USE_FINER_GRID
        XC_DERIV NN10_SMOOTH
        XC_SMOOTH_RHO NN10
      &END XC_GRID
    &END XC
  &END DFT
  &MM
    &FORCEFIELD
      PARMTYPE CHM
      PARM_FILE_NAME charmm.pot
    &END FORCEFIELD
    &POISSON
      &EWALD
        EWALD_TYPE ewald
        EWALD_ACCURACY 1.E-5
        ALPHA 0.35
        GMAX 33
      &END EWALD
    &END POISSON
  &END MM
  &QMMM
#    MM_POTENTIAL_FILE_NAME ../MM_POTENTIAL
    USE_GEEP_LIB 15
    &CELL
      ABC 7.000000 7.000000 7.000000
      PERIODIC XYZ
    &END CELL
    ECOUPL GAUSS
    &PERIODIC
      GMAX 1.0
      NGRIDS 50 50 50
      &MULTIPOLE
        RCUT 5.0
        EWALD_PRECISION 1.E-5
        NGRIDS 50 50 50
        ANALYTICAL_GTERM T
        &INTERPOLATOR
        &END INTERPOLATOR
      &END MULTIPOLE
    &END PERIODIC
    &MM_KIND OT
      RADIUS 0.780
    &END MM_KIND
    &MM_KIND HT
      RADIUS 0.440
    &END MM_KIND
#    otherwise use default: 0.800
    &QM_KIND H
      MM_INDEX 2
      MM_INDEX 3
    &END QM_KIND
    &QM_KIND O
      MM_INDEX 1
    &END QM_KIND
    &PRINT
      &DERIVATIVES
      &END DERIVATIVES
    &END PRINT
  &END QMMM
  &SUBSYS
    &CELL
      A 10. 0.000000 0.000000
      B 0.000000 10. 0.000000
      C 0.000000 0.000000 10.
      PERIODIC XYZ
    &END CELL
#    &COORD
#    &END COORD
#    &VELOCITY
#    &END VELOCITY
    &TOPOLOGY
      &DUMP_PSF
      &END DUMP_PSF
      &DUMP_PDB
      &END DUMP_PDB
      &GENERATE
        BONDLENGTH_MAX     5.0
        REORDER F
        CREATE_MOLECULES F
        &ISOLATED_ATOMS
          LIST 1
          LIST 2
          LIST 3
        &END ISOLATED_ATOMS
      &END GENERATE
      CHARGE_EXTENDED
      COORDINATE EXYZ
      COORD_FILE_NAME H2O2.exyz
      CONN_FILE_NAME psf.H2O.psf
      CONN_FILE_FORMAT PSF
    &END TOPOLOGY
    &KIND H
      BASIS_SET DZVP-GTH-PADE
      POTENTIAL GTH-PADE-q1
    &END KIND
    &KIND O
      BASIS_SET DZVP-GTH-PADE
      POTENTIAL GTH-PADE-q6
    &END KIND
  &END SUBSYS
&END FORCE_EVAL
&GLOBAL
  PROJECT H2O
  RUN_TYPE MD
  PRINT_LEVEL DEBUG #MEDIUM
&END GLOBAL
&MOTION
  &PRINT
    &FORCES
      FORMAT XMOL
    &END FORCES
  &END PRINT
  &MD
    ENSEMBLE NVE
    STEPS 0
    TIMESTEP 0.50
    TEMPERATURE 300.00
    TEMP_KIND
    &PRINT
      &TEMP_KIND
      &END TEMP_KIND
    &END PRINT
  &END MD
&END MOTION



More information about the CP2K-user mailing list