QMCPACK / QMCPACK/qmcpack

Unexpected segfault in jastrow optimization

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

Description

**Describe the bug**
The proper way to specify a 3-body jastrow with multiple ion species is to have a single block with multiple tags:

```













```
However, if you instead specify multiple blocks, QMCPACK segfaults at the start of optimization. In other words, if you instead write:

```















```

QMCPack constructs (or at least seems to according to the output) the expected wavefunction and VMC runs without a problem. But QMCPACK will segfault once optimization starts. Seems like either the latter input should work because QMCPACK output seems to indicate the expected wavefunction was built, or we should error trap the input to avoid the segfault.

Example input/output is attached.

**To Reproduce**
Steps to reproduce the behavior:
1. Using current QMCPACK/develop
2. happens in real fullprecision, have not tested other variants.
3. full program/test invocation command is 'mpirun qmcpack qmc.in.xml > qmc.output'
4. additional steps - None

**Expected behavior**
I expected optimization work given that the output indicates the expected wave function was built.

**System:**
- linux workstation (Ubuntu20)
- gcc12/openBLAS

**Additional context**
Add any other context about the problem here.
[j3_error.zip](https://github.com/QMCPACK/qmcpack/files/11174682/j3_error.zip)

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.