|
1 | 1 | from __future__ import annotations
|
2 |
| - |
| 2 | +# dh import |
| 3 | +try: |
| 4 | + from dh.dhutil import gen_batch, calc_batch_size, timing, tot_size, hermi_sum_last2dim |
| 5 | + from dh.rdfdh import get_cderi_mo, kernel, RDFDH |
| 6 | +except ImportError: |
| 7 | + from pyscf.dh.dhutil import gen_batch, calc_batch_size, timing, tot_size, hermi_sum_last2dim |
| 8 | + from pyscf.dh.rdfdh import get_cderi_mo, kernel, RDFDH |
| 9 | +# typing import |
3 | 10 | from typing import Tuple, TYPE_CHECKING
|
4 |
| - |
5 |
| -from pyscf.lib.numpy_helper import ANTIHERMI |
6 |
| - |
7 | 11 | if TYPE_CHECKING:
|
8 | 12 | from dh.grad.udfdh import Gradients
|
9 | 13 | from dh.polar.udfdh import Polar
|
10 |
| - |
| 14 | +# pyscf import |
| 15 | +from pyscf import lib, gto, df, dft |
11 | 16 | from pyscf.scf import ucphf
|
| 17 | +from pyscf.lib.numpy_helper import ANTIHERMI |
| 18 | +# other import |
12 | 19 | import h5py
|
13 |
| -from dh import RDFDH |
14 |
| -from dh.dhutil import gen_batch, calc_batch_size, timing, tot_size, hermi_sum_last2dim |
15 |
| -from pyscf import lib, gto, df, dft |
16 | 20 | import numpy as np
|
17 | 21 |
|
18 |
| -from dh.rdfdh import get_cderi_mo, kernel |
19 |
| - |
20 | 22 | einsum = lib.einsum
|
21 | 23 | α, β = 0, 1
|
22 | 24 | αα, αβ, ββ = 0, 1, 2
|
23 |
| - |
24 | 25 | ndarray = np.ndarray or h5py.Dataset
|
25 | 26 |
|
26 | 27 |
|
@@ -485,13 +486,19 @@ def dipole(self):
|
485 | 486 | # to avoid cyclic imports in typing https://stackoverflow.com/questions/39740632/
|
486 | 487 |
|
487 | 488 | def nuc_grad_method(self) -> Gradients:
|
488 |
| - from dh.grad.udfdh import Gradients |
| 489 | + try: |
| 490 | + from dh.grad.udfdh import Gradients |
| 491 | + except ImportError: |
| 492 | + from pyscf.dh.grad.udfdh import Gradients |
489 | 493 | self.__class__ = Gradients
|
490 | 494 | Gradients.__init__(self, self.mol, skip_construct=True)
|
491 | 495 | return self
|
492 | 496 |
|
493 | 497 | def polar_method(self) -> Polar:
|
494 |
| - from dh.polar.udfdh import Polar |
| 498 | + try: |
| 499 | + from dh.polar.udfdh import Polar |
| 500 | + except ImportError: |
| 501 | + from pyscf.dh.polar.udfdh import Polar |
495 | 502 | self.__class__ = Polar
|
496 | 503 | Polar.__init__(self, self.mol, skip_construct=True)
|
497 | 504 | return self
|
|
0 commit comments