Permalink
Browse files

vib: add example of getting vib/thermo info

  • Loading branch information...
loriab committed Sep 4, 2018
1 parent d158d13 commit 349efcc2ab482e331e5c387f7c8519133707718b
Showing with 18 additions and 1 deletion.
  1. +1 −1 doc/sphinxman/source/dftd3.rst
  2. +17 −0 tests/freq-isotope2/input.dat
@@ -226,7 +226,7 @@ program is suppressed; to see it in the output file, set print > 2.
| -D3MZERO | -D3 [#f5]_ w/ reparameterized and more flexible original zero-damping | ``dftd3`` | [:math:`s_6`, :math:`s_8`, :math:`s_{r,6}`, :math:`\beta`] |
| -D3MBJ | -D3 [#f5]_ w/ reparameterized newer Becke-Johnson rational damping | ``dftd3`` | [:math:`s_6`, :math:`s_8`, :math:`a_1`, :math:`a_2`] |
| -D3M(BJ) | alias to -D3MBJ | | |
| -NL | Grimme's -NL (DFT plus VV10 correlation) [#f6]_ | ???? | [:math:`b`, :math:`c`] |
| -NL | Grimme's -NL (DFT plus VV10 correlation) [#f6]_ | |PSIfours| nl | [:math:`b`, :math:`c`] via |scf__nl_dispersion_parameters| |
| -CHG | Chai & Head-Gordon dispersion formula [#f7]_ | |PSIfours| libdisp | [:math:`s_6`] |
| -DAS2009 | Podeszwa & Szalewicz dispersion formula [#f8]_ | |PSIfours| libdisp | [:math:`s_6`] |
| -DAS2010 | Podeszwa & Szalewicz dispersion formula [#f9]_ | |PSIfours| libdisp | [:math:`s_6`] |
@@ -89,6 +89,7 @@ compare_values(46.450, entropy, 2, 'HDO S') # molpro default #TEST
psi4.revoke_global_option_changed('rotational_symmetry_number')
set hessian_write on
vibanal_wfn(wfn, molecule=dto)
compare_values(-74.96590119, get_variable('current energy'), 6, 'DTO E0') #TEST
compare_values(0.016317, get_variable('ZPVE'), 4, 'DTO ZPVE') #TEST
@@ -97,3 +98,19 @@ compare_values(0.020098, get_variable('enthalpy correction'), 4, 'DTO dH') #TES
entropy = 1000 * psi_hartree2kcalmol * (get_variable('enthalpy correction') - get_variable('gibbs free energy correction')) / get_global_option('t')
compare_values(49.603, entropy, 2, 'DTO S') # molpro sym=cs #TEST
# A. print all the vib-related info from original `e, wfn = freq()` call
for k, v in wfn.frequency_analysis.items():
print(v)
# B. `set hessian_write on` above wrote all the vib- & thermo-related info from last analysis.
# now, print all the vib- & thermo-related info from that file
with open(core.get_writer_file_prefix(dto.name()) + ".vibrec") as handle:
import json
jsondata = json.load(handle)
for k, v in jsondata.items():
print(k, v)
compare_values(0.016317, jsondata['ZPE_corr']['data'], 4, 'DTO ZPVE from file') #TEST
compare_values(0.020098, jsondata['H_corr']['data'], 4, 'DTO dH from file') #TEST
compare_values(298.15, jsondata['T']['data'], 2, 'temp') #TEST

0 comments on commit 349efcc

Please sign in to comment.