From 14fc95ab066c0053327e8c8e5b099ba600a04c79 Mon Sep 17 00:00:00 2001 From: Basil Ibrahim Date: Fri, 1 Mar 2024 21:19:47 +0000 Subject: [PATCH] Fix bug for kUHF and consistent conversion of ROHF to UHF --- vayesta/dmet/__init__.py | 4 ++-- vayesta/edmet/__init__.py | 4 ++-- vayesta/ewf/__init__.py | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/vayesta/dmet/__init__.py b/vayesta/dmet/__init__.py index 155057d9a..b5fcee274 100644 --- a/vayesta/dmet/__init__.py +++ b/vayesta/dmet/__init__.py @@ -21,9 +21,9 @@ def DMET(mf, *args, **kwargs): """Determine restricted or unrestricted by inspection of mean-field object""" - if isinstance(mf, pyscf.scf.uhf.UHF): + if isinstance(mf, pyscf.scf.uhf.UHF) or isinstance(mf, pyscf.pbc.scf.kuhf.KUHF): return UDMET(mf, *args, **kwargs) - elif isinstance(mf, pyscf.scf.rohf.ROHF): + elif isinstance(mf, pyscf.scf.rohf.ROHF) or isinstance(mf, pyscf.pbc.scf.krohf.KROHF): log.warning("Converting ROHF reference to UHF") return UDMET(mf.to_uhf(), *args, **kwargs) return RDMET(mf, *args, **kwargs) diff --git a/vayesta/edmet/__init__.py b/vayesta/edmet/__init__.py index 2143159a1..4034bf6d4 100644 --- a/vayesta/edmet/__init__.py +++ b/vayesta/edmet/__init__.py @@ -15,9 +15,9 @@ def EDMET(mf, *args, **kwargs): """Determine restricted or unrestricted by inspection of mean-field object""" - if isinstance(mf, pyscf.scf.uhf.UHF): + if isinstance(mf, pyscf.scf.uhf.UHF) or isinstance(mf, pyscf.pbc.scf.kuhf.KUHF): return UEDMET(mf, *args, **kwargs) - elif isinstance(mf, pyscf.scf.rohf.ROHF): + elif isinstance(mf, pyscf.scf.rohf.ROHF) or isinstance(mf, pyscf.pbc.scf.krohf.KROHF): log.warning("Converting ROHF reference to UHF") return UEMET(mf.to_uhf(), *args, **kwargs) return REDMET(mf, *args, **kwargs) diff --git a/vayesta/ewf/__init__.py b/vayesta/ewf/__init__.py index c0207b19c..f2af757e5 100644 --- a/vayesta/ewf/__init__.py +++ b/vayesta/ewf/__init__.py @@ -16,9 +16,9 @@ def EWF(mf, *args, **kwargs): """Determine restricted or unrestricted by inspection of mean-field object""" - if isinstance(mf, pyscf.scf.uhf.UHF): + if isinstance(mf, pyscf.scf.uhf.UHF) or isinstance(mf, pyscf.pbc.scf.kuhf.KUHF): return UEWF(mf, *args, **kwargs) - elif isinstance(mf, pyscf.scf.rohf.ROHF): + elif isinstance(mf, pyscf.scf.rohf.ROHF) or isinstance(mf, pyscf.pbc.scf.krohf.KROHF): log.warning("Converting ROHF reference to UHF") return UEWF(mf.to_uhf(), *args, **kwargs) return REWF(mf, *args, **kwargs)