Add deterministic test for multi DMC sections

This commit is contained in:
Hyeondeok-Shin 2019-07-26 08:53:15 +09:00 committed by GitHub
parent faaef319de
commit 48cc0737d1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 281 additions and 1 deletions

View File

@ -676,7 +676,84 @@ IF(NOT QMC_CUDA)
TRUE
1 DET_DIAMOND_DMC_EXCITED_SCALARS # DMC
)
# CUDA referehces
IF(QMC_MIXED_PRECISION)
# DMC cycle 1
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "totenergy" "-9.53151951 0.0002301")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "kinetic" "9.00930862 0.00002106")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "potential" "-18.54082813 0.0000074")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "eeenergy" "-2.11983454 0.0000032")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "ionion" "-12.77566744 0.00000265")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "localecp" "-4.36660098 0.0000081")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "nonlocalecp" "0.72127483 0.0000016")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "mpc" "-1.93675646 0.0000054")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "samples" "9 0.0")
# DMC cycle 2
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "totenergy" "-10.56915192 0.0002301")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "kinetic" "14.41364745 0.00002106")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "potential" "-24.98279937 0.0000074")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "eeenergy" "-2.89879008 0.0000032")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "ionion" "-12.77566744 0.00000265")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "localecp" "-15.41389327 0.0000081")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "nonlocalecp" "6.10555142 0.00002153")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "mpc" "-2.61905530 0.0000054")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "samples" "9 0.0")
# DMC cycle 3
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "totenergy" "-8.93215447 0.0002301")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "kinetic" "19.70828644 0.00002106")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "potential" "-28.64044091 0.0000074")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "eeenergy" "-1.15369726 0.0000032")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "ionion" "-12.77566744 0.00000265")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "localecp" "-16.18246211 0.00002548")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "nonlocalecp" "1.47138589 0.00001007")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "mpc" "-0.80671598 0.0000054")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "samples" "9 0.0")
ELSE()
# DMC cycle 1
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "totenergy" "-9.53151951 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "kinetic" "9.00930862 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "potential" "-18.54082813 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "eeenergy" "-2.11983454 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "ionion" "-12.77566744 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "localecp" "-4.36660098 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "nonlocalecp" "0.72127483 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "mpc" "-1.93675646 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "samples" "9 0.0")
# DMC cycle 2
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "totenergy" "-10.56915192 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "kinetic" "14.41364745 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "potential" "-24.98279937 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "eeenergy" "-2.89879008 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "ionion" "-12.77566744 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "localecp" "-15.41389327 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "nonlocalecp" "6.10555142 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "mpc" "-2.61905530 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "samples" "9 0.0")
# DMC cycle 3
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "totenergy" "-8.93215447 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "kinetic" "19.70828644 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "potential" "-28.64044091 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "eeenergy" "-1.15369726 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "ionion" "-12.77566744 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "localecp" "-16.18246211 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "nonlocalecp" "1.47138589 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "mpc" "-0.80671598 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "samples" "9 0.0")
ENDIF()
QMC_RUN_AND_CHECK(deterministic-diamondC_1x1x1_pp-multi_dmc_sdj
"${CMAKE_SOURCE_DIR}/tests/solids/diamondC_1x1x1_pp"
det_qmc_short_vmc_multi_dmc
det_qmc_short_vmc_multi_dmc.in.xml
1 1
TRUE
1 DET_DIAMOND_DMC_MULTI1_SCALARS # DMC cycle 1
2 DET_DIAMOND_DMC_MULTI2_SCALARS # DMC cycle 2
3 DET_DIAMOND_DMC_MULTI3_SCALARS # DMC cycle 3
)
# CUDA references
ELSE()
IF(QMC_MIXED_PRECISION)
LIST(APPEND DET_DIAMOND_SCALARS "totenergy" "-10.55746628 0.00002215")
@ -838,4 +915,80 @@ ELSE()
TRUE
1 DET_DIAMOND_DMC_EXCITED_SCALARS # DMC
)
IF(QMC_MIXED_PRECISION)
# DMC cycle 1
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "totenergy" "-10.07098874 0.0002301")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "kinetic" "16.06910421 0.00002106")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "potential" "-26.14009295 0.0000074")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "eeenergy" "-3.69351123 0.0000032")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "ionion" "-12.77566733 0.00000265")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "localecp" "-7.61944653 0.0000081")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "nonlocalecp" "-2.05146786 0.0000016")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "mpc" "-3.42701255 0.0000054")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "samples" "9 0.0")
# DMC cycle 2
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "totenergy" "-10.09232889 0.0002301")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "kinetic" "13.20815760 0.00002106")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "potential" "-23.30048649 0.0000074")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "eeenergy" "-3.99940945 0.0000032")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "ionion" "-12.77566733 0.00000265")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "localecp" "-5.49404385 0.0000081")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "nonlocalecp" "-1.03136586 0.0000016")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "mpc" "-3.79251458 ")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "samples" "9 0.0")
# DMC cycle 3
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "totenergy" "-10.50196932 0.0002301")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "kinetic" "12.25912048 0.00002106")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "potential" "-22.76108980 0.0000074")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "eeenergy" "-4.27297792 0.0000032")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "ionion" "-12.77566733 0.00000265")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "localecp" "-4.95181728 0.0000081")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "nonlocalecp" "-0.76062727 0.0000016")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "mpc" "-4.09025506 0.0000054")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "samples" "9 0.0")
ELSE()
# DMC cycle 1
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "totenergy" "-10.07098874 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "kinetic" "16.06910421 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "potential" "-26.14009295 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "eeenergy" "-3.69351123 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "ionion" "-12.77566733 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "localecp" "-7.61944653 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "nonlocalecp" "-2.05146786 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "mpc" "-3.42701255 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI1_SCALARS "samples" "9 0.0")
# DMC cycle 2
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "totenergy" "-10.09232889 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "kinetic" "13.20815760 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "potential" "-23.30048649 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "eeenergy" "-3.99940945 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "ionion" "-12.77566733 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "localecp" "-5.49404385 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "nonlocalecp" "-1.03136586 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "mpc" "-3.79251458 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI2_SCALARS "samples" "9 0.0")
# DMC cycle 3
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "totenergy" "-10.50196932 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "kinetic" "12.25912048 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "potential" "-22.76108980 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "eeenergy" "-4.27297792 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "ionion" "-12.77566733 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "localecp" "-4.95181728 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "nonlocalecp" "-0.76062727 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "mpc" "-4.09025506 0.000001")
LIST(APPEND DET_DIAMOND_DMC_MULTI3_SCALARS "samples" "9 0.0")
ENDIF()
QMC_RUN_AND_CHECK(deterministic-diamondC_1x1x1_pp-multi_dmc_sdj
"${CMAKE_SOURCE_DIR}/tests/solids/diamondC_1x1x1_pp"
det_qmc_short_vmc_multi_dmc
det_qmc_short_vmc_multi_dmc.in.xml
1 1
TRUE
1 DET_DIAMOND_DMC_MULTI1_SCALARS # DMC cycle 1
2 DET_DIAMOND_DMC_MULTI2_SCALARS # DMC cycle 2
3 DET_DIAMOND_DMC_MULTI3_SCALARS # DMC cycle 3
)
ENDIF()

View File

@ -0,0 +1,127 @@
<?xml version="1.0"?>
<simulation>
<project id="det_qmc_short_vmc_multi_dmc" series="0">
<application name="qmcapp" role="molecu" class="serial" version="1.0"/>
</project>
<random seed="863"/>
<qmcsystem>
<simulationcell>
<parameter name="lattice" units="bohr">
3.37316115 3.37316115 0.00000000
0.00000000 3.37316115 3.37316115
3.37316115 0.00000000 3.37316115
</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="4" mass="1.0">
<parameter name="charge" > -1 </parameter>
<parameter name="mass" > 1.0 </parameter>
</group>
<group name="d" size="4" mass="1.0">
<parameter name="charge" > -1 </parameter>
<parameter name="mass" > 1.0 </parameter>
</group>
</particleset>
<particleset name="ion0">
<group name="C" size="2" mass="21894.7135906">
<parameter name="charge" > 4 </parameter>
<parameter name="valence" > 4 </parameter>
<parameter name="atomicnumber" > 6 </parameter>
<parameter name="mass" > 21894.7135906 </parameter>
<attrib name="position" datatype="posArray" condition="0">
0.00000000 0.00000000 0.00000000
1.68658058 1.68658058 1.68658058
</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="double">
<slaterdeterminant>
<determinant id="updet" size="4">
<occupation mode="ground" spindataset="0"/>
</determinant>
<determinant id="downdet" size="4">
<occupation mode="ground" spindataset="0"/>
</determinant>
</slaterdeterminant>
</determinantset>
<jastrow type="One-Body" name="J1" function="bspline" source="ion0" print="yes">
<correlation elementType="C" size="8" cusp="0.0">
<coefficients id="eC" type="Array">
-0.2032153051 -0.1625595974 -0.143124599 -0.1216434956 -0.09919771951 -0.07111729038
-0.04445345869 -0.02135082917
</coefficients>
</correlation>
</jastrow>
<jastrow type="Two-Body" name="J2" function="bspline" print="yes">
<correlation speciesA="u" speciesB="u" size="8">
<coefficients id="uu" type="Array">
0.2797730287 0.2172604155 0.1656172964 0.1216984261 0.083995349 0.05302065936
0.02915953995 0.0122402581
</coefficients>
</correlation>
<correlation speciesA="u" speciesB="d" size="8">
<coefficients id="ud" type="Array">
0.4631099906 0.356399124 0.2587895287 0.1829298509 0.1233653291 0.07714708174
0.04145899033 0.01690645936
</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="pseudo" name="PseudoPot" source="ion0" wavefunction="psi0" format="xml">
<pseudo elementType="C" href="C.BFD.xml"/>
</pairpot>
<pairpot name="MPC" type="MPC" source="e" target="e" ecut="60.0" physical="false"/>
<!-- <estimator type="flux" name="Flux"/> -->
</hamiltonian>
</qmcsystem>
<qmc method="vmc" move="pbyp">
<estimator name="LocalEnergy" hdf5="no"/>
<parameter name="walkers"> 1 </parameter>
<parameter name="substeps"> 1 </parameter>
<parameter name="warmupSteps"> 1 </parameter>
<parameter name="steps"> 1 </parameter>
<parameter name="blocks"> 1 </parameter>
<parameter name="timestep"> 1.0 </parameter>
<parameter name="usedrift"> no </parameter>
</qmc>
<qmc method="dmc" move="pbyp" checkpoint="-1">
<estimator name="LocalEnergy" hdf5="no"/>
<parameter name="targetwalkers"> 1 </parameter>
<parameter name="reconfiguration"> no </parameter>
<parameter name="warmupSteps"> 3 </parameter>
<parameter name="timestep"> 0.02 </parameter>
<parameter name="steps"> 3 </parameter>
<parameter name="blocks"> 3 </parameter>
<parameter name="nonlocalmoves"> no </parameter>
</qmc>
<qmc method="dmc" move="pbyp" checkpoint="-1">
<estimator name="LocalEnergy" hdf5="no"/>
<parameter name="targetwalkers"> 1 </parameter>
<parameter name="reconfiguration"> no </parameter>
<parameter name="warmupSteps"> 3 </parameter>
<parameter name="timestep"> 0.01 </parameter>
<parameter name="steps"> 3 </parameter>
<parameter name="blocks"> 3 </parameter>
<parameter name="nonlocalmoves"> no </parameter>
</qmc>
<qmc method="dmc" move="pbyp" checkpoint="-1">
<estimator name="LocalEnergy" hdf5="no"/>
<parameter name="targetwalkers"> 1 </parameter>
<parameter name="reconfiguration"> no </parameter>
<parameter name="warmupSteps"> 3 </parameter>
<parameter name="timestep"> 0.005 </parameter>
<parameter name="steps"> 3 </parameter>
<parameter name="blocks"> 3 </parameter>
<parameter name="nonlocalmoves"> no </parameter>
</qmc>
</simulation>