mirror of https://github.com/QMCPACK/qmcpack.git
fixed update-all driver (ae)
corrected handling of species with different mass in update-all driver added tests for update-all driver on bcc hydrogen added more observables to bcc test
This commit is contained in:
parent
04092124e5
commit
dc06dbd3d6
|
@ -234,10 +234,12 @@ public:
|
|||
|
||||
inline RealType logBackwardGF(const ParticleSet::ParticlePos_t& displ)
|
||||
{
|
||||
RealType t=0.5/Tau;
|
||||
RealType logGb=0.0;
|
||||
for(int iat=0; iat<W.getTotalNum(); ++iat)
|
||||
logGb += t*MassInvP[iat]*dot(displ[iat],displ[iat]);
|
||||
{
|
||||
RealType mass_over_tau = 1.0/(SqrtTauOverMass[iat]*SqrtTauOverMass[iat]);
|
||||
logGb += 0.5*dot(displ[iat],displ[iat])*mass_over_tau;
|
||||
}
|
||||
return -logGb;
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,83 @@
|
|||
<?xml version="1.0"?>
|
||||
<simulation>
|
||||
<project id="qmc_short_vmc_all" series="0">
|
||||
<application name="qmcapp" role="molecu" class="serial" version="1.0"/>
|
||||
</project>
|
||||
<qmcsystem>
|
||||
<simulationcell>
|
||||
<parameter name="lattice" units="bohr">
|
||||
3.77945227 0.00000000 0.00000000
|
||||
-0.00000000 3.77945227 0.00000000
|
||||
-0.00000000 -0.00000000 3.77945227
|
||||
</parameter>
|
||||
<parameter name="bconds">
|
||||
p p p
|
||||
</parameter>
|
||||
<parameter name="LR_dim_cutoff" > 15 </parameter>
|
||||
</simulationcell>
|
||||
<particleset name="e" random="yes">
|
||||
<group name="u" size="1" mass="1.0">
|
||||
<parameter name="charge" > -1 </parameter>
|
||||
<parameter name="mass" > 1.0 </parameter>
|
||||
</group>
|
||||
<group name="d" size="1" mass="1.0">
|
||||
<parameter name="charge" > -1 </parameter>
|
||||
<parameter name="mass" > 1.0 </parameter>
|
||||
</group>
|
||||
</particleset>
|
||||
<particleset name="ion0">
|
||||
<group name="H" size="2" mass="1837.36221934">
|
||||
<parameter name="charge" > 1 </parameter>
|
||||
<parameter name="valence" > 1 </parameter>
|
||||
<parameter name="atomicnumber" > 1 </parameter>
|
||||
<parameter name="mass" > 1837.36221934 </parameter>
|
||||
<attrib name="position" datatype="posArray" condition="0">
|
||||
0.00000000 0.00000000 0.00000000
|
||||
1.88972614 1.88972614 1.88972614
|
||||
</attrib>
|
||||
</group>
|
||||
</particleset>
|
||||
<wavefunction name="psi0" target="e">
|
||||
<determinantset type="einspline" href="pwscf.pwscf.h5" tilematrix="1 0 0 0 1 0 0 0 1" twistnum="0" source="ion0" meshfactor="1.0" precision="float">
|
||||
<slaterdeterminant>
|
||||
<determinant id="updet" size="1">
|
||||
<occupation mode="ground" spindataset="0"/>
|
||||
</determinant>
|
||||
<determinant id="downdet" size="1">
|
||||
<occupation mode="ground" spindataset="0"/>
|
||||
</determinant>
|
||||
</slaterdeterminant>
|
||||
</determinantset>
|
||||
<jastrow type="One-Body" name="J1" function="bspline" source="ion0" print="yes">
|
||||
<correlation elementType="H" size="8" cusp="1.0">
|
||||
<coefficients id="eH" type="Array">
|
||||
0.00206602038 -0.002841926986 0.0036266191 -0.001913930279 8.457152991e-06
|
||||
0.0007380321824 3.635172529e-05 0.0001299635851
|
||||
</coefficients>
|
||||
</correlation>
|
||||
</jastrow>
|
||||
<jastrow type="Two-Body" name="J2" function="bspline" print="yes">
|
||||
<correlation speciesA="u" speciesB="d" size="8">
|
||||
<coefficients id="ud" type="Array">
|
||||
0.5954603818 0.5062051797 0.3746940461 0.2521010502 0.1440163317 0.07796688253
|
||||
0.03804420551 0.01449320872
|
||||
</coefficients>
|
||||
</correlation>
|
||||
</jastrow>
|
||||
</wavefunction>
|
||||
<hamiltonian name="h0" type="generic" target="e">
|
||||
<pairpot type="coulomb" name="ElecElec" source="e" target="e"/>
|
||||
<pairpot type="coulomb" name="IonIon" source="ion0" target="ion0"/>
|
||||
<pairpot type="coulomb" name="ElecIon" source="ion0" target="e"/>
|
||||
<estimator type="flux" name="Flux"/>
|
||||
</hamiltonian>
|
||||
</qmcsystem>
|
||||
<qmc method="vmc" move="not_pbyp_or_whatever">
|
||||
<parameter name="walkers" > 16 </parameter>
|
||||
<parameter name="blocks" > 1000 </parameter>
|
||||
<parameter name="steps" > 60 </parameter>
|
||||
<parameter name="substeps" > 1 </parameter>
|
||||
<parameter name="timestep" > 1.0 </parameter>
|
||||
<parameter name="warmupsteps" > 100 </parameter>
|
||||
</qmc>
|
||||
</simulation>
|
|
@ -0,0 +1,98 @@
|
|||
<?xml version="1.0"?>
|
||||
<simulation>
|
||||
<project id="qmc_short_vmc_dmc_all" series="0">
|
||||
<application name="qmcapp" role="molecu" class="serial" version="1.0"/>
|
||||
</project>
|
||||
<qmcsystem>
|
||||
<simulationcell>
|
||||
<parameter name="lattice" units="bohr">
|
||||
3.77945227 0.00000000 0.00000000
|
||||
-0.00000000 3.77945227 0.00000000
|
||||
-0.00000000 -0.00000000 3.77945227
|
||||
</parameter>
|
||||
<parameter name="bconds">
|
||||
p p p
|
||||
</parameter>
|
||||
<parameter name="LR_dim_cutoff" > 15 </parameter>
|
||||
</simulationcell>
|
||||
<particleset name="e" random="yes">
|
||||
<group name="u" size="1" mass="1.0">
|
||||
<parameter name="charge" > -1 </parameter>
|
||||
<parameter name="mass" > 1.0 </parameter>
|
||||
</group>
|
||||
<group name="d" size="1" mass="1.0">
|
||||
<parameter name="charge" > -1 </parameter>
|
||||
<parameter name="mass" > 1.0 </parameter>
|
||||
</group>
|
||||
</particleset>
|
||||
<particleset name="ion0">
|
||||
<group name="H" size="2" mass="1837.36221934">
|
||||
<parameter name="charge" > 1 </parameter>
|
||||
<parameter name="valence" > 1 </parameter>
|
||||
<parameter name="atomicnumber" > 1 </parameter>
|
||||
<parameter name="mass" > 1837.36221934 </parameter>
|
||||
<attrib name="position" datatype="posArray" condition="0">
|
||||
0.00000000 0.00000000 0.00000000
|
||||
1.88972614 1.88972614 1.88972614
|
||||
</attrib>
|
||||
</group>
|
||||
</particleset>
|
||||
<wavefunction name="psi0" target="e">
|
||||
<determinantset type="einspline" href="pwscf.pwscf.h5" tilematrix="1 0 0 0 1 0 0 0 1" twistnum="0" source="ion0" meshfactor="1.0" precision="float">
|
||||
<slaterdeterminant>
|
||||
<determinant id="updet" size="1">
|
||||
<occupation mode="ground" spindataset="0"/>
|
||||
</determinant>
|
||||
<determinant id="downdet" size="1">
|
||||
<occupation mode="ground" spindataset="0"/>
|
||||
</determinant>
|
||||
</slaterdeterminant>
|
||||
</determinantset>
|
||||
<jastrow type="One-Body" name="J1" function="bspline" source="ion0" print="yes">
|
||||
<correlation elementType="H" size="8" cusp="1.0">
|
||||
<coefficients id="eH" type="Array">
|
||||
0.00206602038 -0.002841926986 0.0036266191 -0.001913930279 8.457152991e-06
|
||||
0.0007380321824 3.635172529e-05 0.0001299635851
|
||||
</coefficients>
|
||||
</correlation>
|
||||
</jastrow>
|
||||
<jastrow type="Two-Body" name="J2" function="bspline" print="yes">
|
||||
<correlation speciesA="u" speciesB="d" size="8">
|
||||
<coefficients id="ud" type="Array">
|
||||
0.5954603818 0.5062051797 0.3746940461 0.2521010502 0.1440163317 0.07796688253
|
||||
0.03804420551 0.01449320872
|
||||
</coefficients>
|
||||
</correlation>
|
||||
</jastrow>
|
||||
</wavefunction>
|
||||
<hamiltonian name="h0" type="generic" target="e">
|
||||
<pairpot type="coulomb" name="ElecElec" source="e" target="e"/>
|
||||
<pairpot type="coulomb" name="IonIon" source="ion0" target="ion0"/>
|
||||
<pairpot type="coulomb" name="ElecIon" source="ion0" target="e"/>
|
||||
<estimator type="flux" name="Flux"/>
|
||||
</hamiltonian>
|
||||
</qmcsystem>
|
||||
|
||||
<qmc method="vmc" move="wbyw">
|
||||
<estimator name="LocalEnergy" hdf5="no"/>
|
||||
<parameter name="walkers"> 256 </parameter>
|
||||
<parameter name="substeps"> 1 </parameter>
|
||||
<parameter name="warmupsteps"> 100 </parameter>
|
||||
<parameter name="usedrift"> yes </parameter>
|
||||
<parameter name="timestep"> 1.0 </parameter>
|
||||
<parameter name="steps"> 1 </parameter>
|
||||
<parameter name="blocks"> 20 </parameter>
|
||||
</qmc>
|
||||
|
||||
<qmc method="dmc" move="wbyw" checkpoint="-1">
|
||||
<estimator name="LocalEnergy" hdf5="no"/>
|
||||
<parameter name="targetwalkers"> 256 </parameter>
|
||||
<parameter name="nonlocalmoves"> no </parameter>
|
||||
<parameter name="reconfiguration"> no </parameter>
|
||||
<parameter name="warmupsteps"> 100 </parameter>
|
||||
<parameter name="timestep"> 0.01 </parameter>
|
||||
<parameter name="steps"> 100 </parameter>
|
||||
<parameter name="blocks"> 100 </parameter>
|
||||
</qmc>
|
||||
|
||||
</simulation>
|
|
@ -311,6 +311,10 @@ ENDIF()
|
|||
# Short tests, about 2-3 seconds on 16 cores
|
||||
#
|
||||
LIST(APPEND BCC_H_SCALARS "totenergy" "-1.834032 0.0003")
|
||||
LIST(APPEND BCC_H_SCALARS "kinetic" "0.186673807952 0.003")
|
||||
LIST(APPEND BCC_H_SCALARS "potential" "-2.02070672998 0.003")
|
||||
LIST(APPEND BCC_H_SCALARS "eeenergy" "-0.775870180954 0.003")
|
||||
LIST(APPEND BCC_H_SCALARS "ionion" "-0.96289961022 0.001")
|
||||
LIST(APPEND BCC_H_SCALARS "samples" "960000 0.0")
|
||||
LIST(APPEND BCC_H_SCALARS "flux" "0.0 0.03")
|
||||
|
||||
|
@ -323,9 +327,21 @@ ENDIF()
|
|||
0 # VMC
|
||||
TRUE)
|
||||
|
||||
QMC_RUN_AND_CHECK(short-bccH_1x1x1_ae-vmc-all_sdj
|
||||
"${CMAKE_SOURCE_DIR}/tests/solids/bccH_1x1x1_ae"
|
||||
qmc_short_vmc_all
|
||||
qmc_short_vmc_all.in.xml
|
||||
1 16
|
||||
BCC_H_SCALARS
|
||||
0 # VMC
|
||||
TRUE)
|
||||
|
||||
# qmc_ref_vmc_dmc series 1 -1.84143
|
||||
# qmc_short_vmc_dmc series 1 -1.844059 +/- 0.001850
|
||||
LIST(APPEND BCC_H_DMC_SCALARS "totenergy" "-1.841430 0.001850")
|
||||
LIST(APPEND BCC_H_DMC_SCALARS "potential" "-2.02228454514 0.005")
|
||||
LIST(APPEND BCC_H_DMC_SCALARS "kinetic" "0.180980043026 0.005")
|
||||
LIST(APPEND BCC_H_DMC_SCALARS "eeenergy" "-0.781244 0.0014")
|
||||
QMC_RUN_AND_CHECK(short-bccH_1x1x1_ae-dmc_sdj
|
||||
"${CMAKE_SOURCE_DIR}/tests/solids/bccH_1x1x1_ae"
|
||||
qmc_short_vmc_dmc
|
||||
|
@ -335,6 +351,15 @@ ENDIF()
|
|||
1 # DMC
|
||||
TRUE)
|
||||
|
||||
QMC_RUN_AND_CHECK(short-bccH_1x1x1_ae-dmc-all_sdj
|
||||
"${CMAKE_SOURCE_DIR}/tests/solids/bccH_1x1x1_ae"
|
||||
qmc_short_vmc_dmc_all
|
||||
qmc_short_vmc_dmc_all.in.xml
|
||||
1 16
|
||||
BCC_H_DMC_SCALARS
|
||||
1 # DMC
|
||||
TRUE)
|
||||
|
||||
IF(NOT QMC_CUDA)
|
||||
LIST(APPEND BCC_H_RMC_SCALARS "totenergy" "-1.8420 0.0011")
|
||||
#check RMC on 16 cores. 1 MPI
|
||||
|
|
Loading…
Reference in New Issue