diff --git a/qiskit_addon_sqd/fermion.py b/qiskit_addon_sqd/fermion.py index 1c7f13b..afb4ce4 100644 --- a/qiskit_addon_sqd/fermion.py +++ b/qiskit_addon_sqd/fermion.py @@ -96,7 +96,6 @@ def solve_fermion( else: # This will become the default code path after the deprecation period. ci_strs = bitstring_matrix_to_ci_strs(bitstring_matrix, open_shell=open_shell) - ci_strs = ci_strs[::-1] ci_strs = _check_ci_strs(ci_strs) num_up = format(ci_strs[0][0], "b").count("1") @@ -199,9 +198,7 @@ def optimize_orbitals( ) ci_strs = bitstring_matrix else: - # Flip the output so the alpha CI strs are on the left with [::-1] ci_strs = bitstring_matrix_to_ci_strs(bitstring_matrix, open_shell=open_shell) - ci_strs = ci_strs[::-1] ci_strs = _check_ci_strs(ci_strs) num_up = format(ci_strs[0][0], "b").count("1") diff --git a/releasenotes/notes/fermion-bug-2b2ed34f979b1321.yaml b/releasenotes/notes/fermion-bug-2b2ed34f979b1321.yaml new file mode 100644 index 0000000..087972f --- /dev/null +++ b/releasenotes/notes/fermion-bug-2b2ed34f979b1321.yaml @@ -0,0 +1,3 @@ +fixes: + - | + Fixes a bug in :func:`qiskit_addon_sqd.fermion.solve_fermion` and :func:`qiskit_addon_sqd.fermion.optimize_orbitals` which causes the determinants for spin-up and spin-down to be incorrectly flipped before solving.