QMCPACK / QMCPACK/qmcpack

PBC LCAO HDF5 SPOSet construction not working with sposet_collection declaration style

Open
#4,588 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
403
Forks
154
Avg merge
1d 12h
Merged PRs (30d)
82

Description

**Describe the bug**
To conform with recommended best practices, I'm converting my LCAO hdf5 input files over to the new construction method laid out here: https://qmcpack.readthedocs.io/en/develop/intro_wavefunction.html#sposet-collection-input-style . Doing this for the `diamondC_1x1x1-Gaussian_pp_Tw_cplx` test case however, I find the following error message:

> Fatal Error. Aborting at Could not find in wf file the "sposet" or "determinant" tags. Please verify input or contact developers

It looks like this is triggered by LCAOrbitalBuilder::putPBCFromH5, which seems to expect to hit a "determinantset" tag first, and falls through the attached XML input to the tag, triggering the error. There is some partial SPOSet construction triggered, however. @kgasperich pointed out that the sposet_collection initialization procedure is tested for LCAO in test_spo_collection_input_MSD_LCAO_h5.cpp, but at first glance, it looks like the PBC H5 case was not tested.

**To Reproduce**
1.) Go to tests/solids/diamondC_1x1x1-Gaussian_pp_Tw_cplx
2.) Replace "C_diamond-twist-third.wfj.xml with the following:
```















```

3.) Run. Should produce aforementioned error message.

**Expected behavior**
Successful construction of 1 SPOSet and a single determinant wave function with 1 up and 1 down determinant, each using the same SPOSet.

**System:**
- RHEL7

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.