TB2J 0.9.9rc3__py3-none-any.whl → 0.9.9rc4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
TB2J/symmetrize_J.py CHANGED
@@ -1,16 +1,19 @@
1
- from sympair import SymmetryPairFinder, SymmetryPairGroupDict
2
- import numpy as np
1
+ import copy
3
2
  from pathlib import Path
3
+
4
+ import numpy as np
5
+ from sympair import SymmetryPairFinder
6
+
4
7
  from TB2J.versioninfo import print_license
5
- import copy
6
8
 
7
9
 
8
10
  class TB2JSymmetrizer:
9
- def __init__(self, exc, symprec=1e-8, verbose=True):
11
+ def __init__(self, exc, symprec=1e-8, verbose=True, Jonly=False):
10
12
  # list of pairs with the index of atoms
11
13
  ijRs = exc.ijR_list_index_atom()
12
14
  finder = SymmetryPairFinder(atoms=exc.atoms, pairs=ijRs, symprec=symprec)
13
15
  self.verbose = verbose
16
+ self.Jonly = Jonly
14
17
 
15
18
  if verbose:
16
19
  print("=" * 30)
@@ -28,7 +31,7 @@ class TB2JSymmetrizer:
28
31
  print(f"Finding crystal symmetry with symprec of {symprec} Angstrom.")
29
32
  print("Symmetry found:")
30
33
  print(finder.spacegroup)
31
- print(f"-" * 30)
34
+ print("-" * 30)
32
35
  self.pgdict = finder.get_symmetry_pair_group_dict()
33
36
  self.exc = exc
34
37
  self.new_exc = copy.deepcopy(exc)
@@ -51,6 +54,11 @@ class TB2JSymmetrizer:
51
54
  for i, j, R in ijRs_spin:
52
55
  symJdict[(R, i, j)] = Javg
53
56
  self.new_exc.exchange_Jdict = symJdict
57
+ if self.Jonly:
58
+ self.new_exc.has_dmi = False
59
+ self.new_exc.dmi_dict = {}
60
+ self.new_exc.has_uniaxial_anistropy = False
61
+ self.new_exc.k1_dict = {}
54
62
 
55
63
  def output(self, path="TB2J_symmetrized"):
56
64
  if path is None:
@@ -72,6 +80,7 @@ def symmetrize_J(
72
80
  fname="TB2J.pickle",
73
81
  symprec=1e-5,
74
82
  output_path="TB2J_symmetrized",
83
+ Jonly=False,
75
84
  ):
76
85
  """
77
86
  symmetrize the exchange parameters
@@ -109,6 +118,14 @@ def symmetrize_J_cli():
109
118
  default=1e-5,
110
119
  help="precision for symmetry detection. default is 1e-5 Angstrom",
111
120
  )
121
+
122
+ parser.add_argument(
123
+ "--Jonly",
124
+ action="store_true",
125
+ help="symmetrize only the exchange parameters and discard the DMI and anisotropic exchange",
126
+ default=False,
127
+ )
128
+
112
129
  args = parser.parse_args()
113
130
  if args.inpath is None:
114
131
  parser.print_help()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: TB2J
3
- Version: 0.9.9rc3
3
+ Version: 0.9.9rc4
4
4
  Summary: TB2J: First principle to Heisenberg exchange J using tight-binding Green function method
5
5
  Author: Xu He
6
6
  Author-email: mailhexu@gmail.com
@@ -29,7 +29,7 @@ TB2J/plot.py,sha256=AnFIFWE2vlmj7Z6f_7-dX_O1stJN-qbuiurPj43dUCM,4104
29
29
  TB2J/rotate_atoms.py,sha256=Dwptn-wdDW4zYzjYb95yxTzuZOe9WPuLjh3d3-YcSs0,3277
30
30
  TB2J/rotate_siestaDM.py,sha256=eR97rspdrRaK9YTwQwUKfobI0S9UnEcbEZ2f5IgR7Tk,1070
31
31
  TB2J/sisl_wrapper.py,sha256=A5x1-tt8efUSPeGY5wM5m6-pJYQFXTCzQHVqD6RBa2g,14792
32
- TB2J/symmetrize_J.py,sha256=2wME5qaPvAfKzaPSefLeXlGvt6AfWzhaCk3N3FDdg2w,3810
32
+ TB2J/symmetrize_J.py,sha256=6ahB65d9UwbmQDvGR_4V7Cx-1Au1ElBOheYFQRlGRvk,4247
33
33
  TB2J/tensor_rotate.py,sha256=4-DfT_Mg5e40fbd74M5W0D5DqmUq-kVOOLDkkkI834A,8083
34
34
  TB2J/utest.py,sha256=z_ahi7tpHQF9WlHNQihcQ7qzfezRJQXQt28eB1X_z64,3897
35
35
  TB2J/utils.py,sha256=DHkc7BK0KUGesfoAv1OxMgIw_iZzcFXh--3ybsFSd_c,12535
@@ -76,19 +76,19 @@ TB2J/spinham/supercell.py,sha256=y17uUC6r3gQb278FhxIW4CABihfLTvKFj6flyXrCPR8,122
76
76
  TB2J/wannier/__init__.py,sha256=7ojCbM84PYv1X1Tbo4NHI-d3gWmQsZB_xiYqbfxVV1E,80
77
77
  TB2J/wannier/w90_parser.py,sha256=dbd63LuKyv2DVUzqRINGsbDzEsOxsQyE8_Ear_LQIRg,4620
78
78
  TB2J/wannier/w90_tb_parser.py,sha256=qt8pnuprmPp9iIAYwPkPbmEzk6ZPgMq2xognoQp7vwc,4610
79
- TB2J-0.9.9rc3.data/scripts/TB2J_downfold.py,sha256=i4BVqnpDdgrX_amookVWeLGefGBn-qeAutWiwuY9SfQ,2099
80
- TB2J-0.9.9rc3.data/scripts/TB2J_eigen.py,sha256=Qs9v2hnMm2Tpfoa4h53muUKty2dZjwx8948MBoQooNg,1128
81
- TB2J-0.9.9rc3.data/scripts/TB2J_magnon.py,sha256=q7UwAmorRcFNk4tfE7gl_ny05l6p7pbD9Wm_LkIpKEw,3101
82
- TB2J-0.9.9rc3.data/scripts/TB2J_magnon_dos.py,sha256=TMXQvD2dIbO5FZ4tUMmxJgCgH2O2hDAPUNfEKO4z-x4,110
83
- TB2J-0.9.9rc3.data/scripts/TB2J_merge.py,sha256=y834SF4rIRn1L1ptkhczvavQpC-8Px6DTmDOOSaq_DE,1854
84
- TB2J-0.9.9rc3.data/scripts/TB2J_rotate.py,sha256=zgiDFuYZNmzKK0rwDmTaYD2OpRlmKA_VGeBx83w2Xwc,873
85
- TB2J-0.9.9rc3.data/scripts/TB2J_rotateDM.py,sha256=kCvF7gotuqAX1VnJ06cwfVm7RrhrdtiV5v7d9P2Pn_E,567
86
- TB2J-0.9.9rc3.data/scripts/abacus2J.py,sha256=0HLXoJhAkiZ-ZM1cs26lncccxE8-TzC8JiDTba1h1uM,4163
87
- TB2J-0.9.9rc3.data/scripts/siesta2J.py,sha256=gp31LioqpPkDmMY0y_5gXIjOBPNnf080P37pRo0yjw8,4886
88
- TB2J-0.9.9rc3.data/scripts/wann2J.py,sha256=pTFDf6h72I_LN_NX5UivyCoJPgwvyAyHW175nSAJvLo,2987
89
- TB2J-0.9.9rc3.dist-info/LICENSE,sha256=CbZI-jyRTjiqIcWa244cRSHJdjjtUNqGR4HeJkgEwJw,1332
90
- TB2J-0.9.9rc3.dist-info/METADATA,sha256=F741cGl_D0mYw2ToX0miZfIOlWldEAHJA3mzeAYvPwE,1482
91
- TB2J-0.9.9rc3.dist-info/WHEEL,sha256=UvcQYKBHoFqaQd6LKyqHw9fxEolWLQnlzP0h_LgJAfI,91
92
- TB2J-0.9.9rc3.dist-info/entry_points.txt,sha256=Hdz1WC9waUzyFVmowKnbbZ6j-J4adHh_Ko6JpxGYAtE,131
93
- TB2J-0.9.9rc3.dist-info/top_level.txt,sha256=whYa5ByLYhl5XnTPBHSWr-IGD6VWmr5Ql2bye2qwV_s,5
94
- TB2J-0.9.9rc3.dist-info/RECORD,,
79
+ TB2J-0.9.9rc4.data/scripts/TB2J_downfold.py,sha256=i4BVqnpDdgrX_amookVWeLGefGBn-qeAutWiwuY9SfQ,2099
80
+ TB2J-0.9.9rc4.data/scripts/TB2J_eigen.py,sha256=Qs9v2hnMm2Tpfoa4h53muUKty2dZjwx8948MBoQooNg,1128
81
+ TB2J-0.9.9rc4.data/scripts/TB2J_magnon.py,sha256=q7UwAmorRcFNk4tfE7gl_ny05l6p7pbD9Wm_LkIpKEw,3101
82
+ TB2J-0.9.9rc4.data/scripts/TB2J_magnon_dos.py,sha256=TMXQvD2dIbO5FZ4tUMmxJgCgH2O2hDAPUNfEKO4z-x4,110
83
+ TB2J-0.9.9rc4.data/scripts/TB2J_merge.py,sha256=y834SF4rIRn1L1ptkhczvavQpC-8Px6DTmDOOSaq_DE,1854
84
+ TB2J-0.9.9rc4.data/scripts/TB2J_rotate.py,sha256=zgiDFuYZNmzKK0rwDmTaYD2OpRlmKA_VGeBx83w2Xwc,873
85
+ TB2J-0.9.9rc4.data/scripts/TB2J_rotateDM.py,sha256=kCvF7gotuqAX1VnJ06cwfVm7RrhrdtiV5v7d9P2Pn_E,567
86
+ TB2J-0.9.9rc4.data/scripts/abacus2J.py,sha256=0HLXoJhAkiZ-ZM1cs26lncccxE8-TzC8JiDTba1h1uM,4163
87
+ TB2J-0.9.9rc4.data/scripts/siesta2J.py,sha256=gp31LioqpPkDmMY0y_5gXIjOBPNnf080P37pRo0yjw8,4886
88
+ TB2J-0.9.9rc4.data/scripts/wann2J.py,sha256=pTFDf6h72I_LN_NX5UivyCoJPgwvyAyHW175nSAJvLo,2987
89
+ TB2J-0.9.9rc4.dist-info/LICENSE,sha256=CbZI-jyRTjiqIcWa244cRSHJdjjtUNqGR4HeJkgEwJw,1332
90
+ TB2J-0.9.9rc4.dist-info/METADATA,sha256=PHff7nqo8ab-J2HQ8BSg5QuHXgV4c2CsPceDxa6f5Qk,1482
91
+ TB2J-0.9.9rc4.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
92
+ TB2J-0.9.9rc4.dist-info/entry_points.txt,sha256=Hdz1WC9waUzyFVmowKnbbZ6j-J4adHh_Ko6JpxGYAtE,131
93
+ TB2J-0.9.9rc4.dist-info/top_level.txt,sha256=whYa5ByLYhl5XnTPBHSWr-IGD6VWmr5Ql2bye2qwV_s,5
94
+ TB2J-0.9.9rc4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (74.0.0)
2
+ Generator: setuptools (74.1.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5