Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nexus: Allow singlet/triplet excitation types #2290

Merged
merged 27 commits into from
Nov 2, 2021

Conversation

mcbennet
Copy link
Contributor

@mcbennet mcbennet commented Feb 7, 2020

Proposed changes

This PR will allow the user to specify an excitation which is a pure singlet or pure triplet.
Presently, the PR is a work in progress but I thought I would share in order to gather thoughts
from @jtkrogel and others.

The current status is as follows. When the Nexus user specifies an excitation like so

qmc = generate_qmcpack(
    ...,
    excitation=['singlet','-35 +36'], 
    ...,
) 

Nexus will then generate a multideterminant WF that contains a single two-determinant CSF corresponding to the singlet or triplet excitation. As of now, only the orbital (state) index notation is allowed by the user when using this feature -- a future commit will allow for (ti,bi) notation. Furthermore, a block will need to be added in the case that either the singlet/triplet state is not possible with just a single-particle excitation and in the case that the desired singlet/triplet state can be constructed with only one determinant (in the case the user will be directed to use the 'up' or 'down' type)

What type(s) of changes does this code introduce?

  • New feature

Does this introduce a breaking change?

  • No

What systems has this change been tested on?

Checklist

  • Yes. this PR is up to date with current the current state of 'develop'
  • N/A. code added or changed in the PR has been clang-formatted
  • No. this PR adds tests to cover any new code, or to catch a bug that is being fixed
  • No. documentation has been added (if appropriate)

M. Chandler Bennett added 5 commits February 6, 2020 10:03
Allow the user to specfiy an excitation that is either of
singlet or triplet symmetry. Works only for 'energy' style
input of the excitation, e.g., '-36 +37'.
@qmc-robot
Copy link

Can one of the admins verify this patch?

@prckent
Copy link
Contributor

prckent commented Oct 14, 2020

Given #2753, what are the plans + timeline for proceeding from WIP status? Is there a lot left to do?

@mcbennet
Copy link
Contributor Author

Given #2753, what are the plans + timeline for proceeding from WIP status? Is there a lot left to do?

I recall that there were a few edge cases that needed to be addressed. I will block off a bit of time to wrap it up.
One week should be plenty.

@mcbennet
Copy link
Contributor Author

mcbennet commented Sep 9, 2021

I am pretty close to getting this out of WIP state. I have tested this in the LCAO case and it works as expected.
I am moving on to PW tests. If it works there as well, I believe this will be ready for review.

@mcbennet mcbennet changed the title [WIP] Nexus: Allow singlet/triplet excitation types Nexus: Allow singlet/triplet excitation types Sep 9, 2021
@mcbennet
Copy link
Contributor Author

mcbennet commented Sep 9, 2021

This PR is ready for review. PW case also works well. I imagine more testing is needed here -- perhaps as users play with this, the need for additional guards, etc., will reveal itself.

My tests involved the singlet/triplet excitation in N2. Both from a gamess route and pwscf route.

nexus/lib/qmcpack.py Outdated Show resolved Hide resolved
nexus/lib/qmcpack.py Outdated Show resolved Hide resolved
nexus/lib/qmcpack_input.py Outdated Show resolved Hide resolved
nexus/lib/qmcpack_input.py Outdated Show resolved Hide resolved
nexus/lib/qmcpack_input.py Outdated Show resolved Hide resolved
Copy link
Contributor

@jtkrogel jtkrogel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ye-luo
Copy link
Contributor

ye-luo commented Nov 2, 2021

Test this please

@ye-luo ye-luo enabled auto-merge November 2, 2021 22:31
@ye-luo ye-luo merged commit f9518d0 into QMCPACK:develop Nov 2, 2021
@mcbennet mcbennet deleted the nxs_singlet_triplet_exc branch November 3, 2021 00:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants